生物物理計算化学者の雛

主に科学に関する諸々を書き留めています。

Hadoop

Hadoopをコア数の多いマシンで使う場合はユーザプロセス数上限も増やす必要あり

先日導入した 24 CPUコア搭載マシン( Xeon E5-2697v2 搭載24コアマシンの性能と消費電力をチェック - 生物物理計算化学者の雛 )で Map スロット数 24 でHadoopジョブを流したところ、Map処理21本は正常に流れるが、残り3本はエラーで停止してブラックリス…

HDFS保存ファイルのレプリカ数を変更する

Hadoop HDFS上ファイルのレプリケーション数の変更は hdfs dfs -setrep により行います。(バージョンによっては hadoop dfs -setrep) # HDFS上ファイル /user/hoge.txt のレプリカ数を4に変更 hdfs dfs -setrep 4 /user/hoge.txt # HDFS上ディレクトリ /u…

全データノード再起動時は3台以上の同時故障が起こりやすく、Hadoop HDFSデータは要注意

先日設備点検に伴う停電があったのですが、その際の全Hadoop HDFSノードのシャットダウン・再起動により危うくデータを失うところでした。 レプリケーション3ならば2ノードまでの障害は大丈夫 HDFSはデフォルトでレプリケーション数が3であり、3台のデー…

100万円でどれだけのマシンを調達できるのか

科研費申請の季節です。 多くの大学の教員は科研費締切に向けて研究計画書作成に大忙しです。 研究計画では予算が当たったら何に使うのかを記述する必要があります。 そこで今日は100万円をマシン購入に振り向けたとして、どれだけの計算機資源を確保できる…

長期間起動していたHadoopデーモン終了時に「no tasktracker to stop」と失敗する現象への対処

(Hadoop 0.21.0環境) 多数ノードで一斉に tasktracker や datanode を起動する際には $HADOOP_HOME/bin/start-mapred.sh $HADOOP_HOME/bin/start-dfs.shを、また各ノードで起動する際には $HADOOP_HOME/bin/hadoop-daemon.sh start tasktracker $HADOOP_HOM…

MapReduceジョブのOutOfMemoryErrorに対処する

Hadoopジョブを実行しているとよく map や reduce 処理でヒープ領域が足りないというエラーに遭遇します。例えばこれは reduce 実行時にヒープ領域が足りないというエラーメッセージの一部です。(Hadoop 0.21.0 の場合) org.apache.hadoop.mapreduce.task.re…

.cshrcと.bashrcのHadoop関連設定

ちょくちょくcshとbashの両方の設定ファイル(.cshrc, .bashrc)を書く必要があり、そのたびにそれぞれ環境変数の設定やらif文やらの書き方やらが違って混乱するので、まとめておきます。 cshの場合 if ( `hostname` =~ hd* || `hostname` == hserver ) then…

Hadoop SequenceFileフォーマットを実ファイルでチェック

HadoopのSequenceFileフォーマットで記録されたデータを直接読み込む必要性が生じましたので、SequenceFileのフォーマットを調査しました。 なおこの調査はバージョン 0.21.0 で行いました。下図は実際に読み込み処理を作成する必要のあるSequenceFileをバイ…

うるう秒によるjava障害と連動して生じたHDFSメタデータ破損からの復帰手順

※本記事ではうるう秒によるjavaの異常と、それに伴って生じたHadoop 0.21.0 HDFSのメタデータ破損からの復旧手順を説明します。なお、本復旧手順は私の環境で上手くいっただけであり、他の環境で同様の手順を行ったとしても復旧できる保証はありませんので、…

MapReduceジョブ優先度の変更

HadoopのデフォルトのスケジューラはFIFO(First In First Out)なので、MapReduceジョブは投入順に実行されます。 そのため長時間かかるMapReduce処理を流していると、他のMapReduce処理は長時間またされることになります。この場合、先に実行したい処理の優…

Hadoop-0.21.0 ブラウザからの[Download this file]時のエラー

Hadoopではブラウザ上で以下のようにファイル内容を表示させることができ、ファイルをダウンロードすることが可能です。 しかしながら、私の環境のHadoop-0.21.0では Download this file を押すと以下のようなエラーがでてしまい、ダウンロードできません。 …

複数ディスク使用によるHDFS読込処理パフォーマンス向上

大容量データ処理といえば Hadoop!! と大いに流行っていることもあって、最近は Hadoop でいろいろテストしています。少し前に複数ディスクを使うとどれだけ HDFS 読込処理パフォーマンスが向上するか測定したので、その結果を簡単にまとめておきます。 (ht…