4 GB RAM と 4 コアを備えたスタンドアロン/疑似モードで実行されている Ubuntu vm があります。
以下を除くすべてがデフォルトに設定されています。
io.file.buffer.size=65536
io.sort.factor=50
io.sort.mb=500
mapred.tasktracker.map.tasks.maximum=4
mapred.tasktracker.reduce.tasks.maximum=4
この ofc はプロダクション マシンではありませんが、微調整を行うためにいじっています。
私の問題は、ベンチマークの Hadoop ストリーミング ジョブ (1.8 GB のテキスト ファイルで個別のレコードを取得する) を実行すると、大量のこぼれたレコードが発生し、上記の調整ではこぼれが減らないように見えることです。また、Ubuntu のシステム モニターでメモリ使用量を監視すると、メモリが完全に使用されることはなく、2.2 GB を超えることもありません。
chaging を見てきましたHADOOP_HEAP
がmapred.map.child.java.opts
、mapred.reduce.child.java.opts
デフォルトで十分であるように見えるため、これらを何に設定すればよいかわかりません。
Hadoop が残りの RAM を利用できるようにして、こぼれたレコードを減らす (できればジョブを高速化する) ことを可能にする、私が見逃している設定はありますか? それとも、これは通常の動作ですか?
どうもありがとう!