昨日第16回InfoTalkに参加してHadoopの話、関数型言語の話を聞いてきました。 その中でHadoopのボトルネックとチューニングについて聞いてきたのでメモしておきます。
Hadoopのチューニング
いらないし、ほとんどできない(パラメーターがない)
本当ににいらない?
懇親会で講師の方に聞いてみました。
Q.解析元データをノードが取得するするところはボトルネックにならない?
A.ならない。データ(ファイル)を持っているノードが解析を担当するため、ネットワークでのデータ転送不要。ギガビットイーサのネットワークでも十分使えている。
Q.ノードへ解析指示を出すところはボトルネックにならない?
A.現状なっていない。ただし ファイル と それを保持しているノード の紐付けデータベースの探索はポイントになる可能性あり。 とのことでした。 ファイル-保持ノード紐付けデータベースはオンメモリで動作するため非常に高速、とのことですが、ファイル数に応じて大きくなるため**「細かい大量のファイルを扱うよりも、大きめの大量データを扱うほうが向いている」**とのこと。 分散してもスケールしないポイントとしては、このオンメモリDBがポイントになりそうです。
と、いうわけで
チューニングするとしたら・・・
- 個々のノードのディスクI/O速度
- マスターノード(DB?)でのファイル→ノードDB探索速度 の2点になりそうです。