2017-02-14 2 views
1

HDFSには大きなブロックサイズ(64 MB)があるため、ブロックサイズが大きいほどHDDのシーク時間が長くなるため、ブロックサイズが大きくなっています(ネームノードのインデックスのサイズが大きくなるSSDでホストされているHDFSのシーク時間は重要ですか?

私たちがSSDを使うとき、シーク時間はHDDに比べて本当に重要であり、それは重要ですか?

答えて

2

シーク時間がSSDの問題ではないことは間違いありません。

HDDのシーク時間は、通常、0.2と0.8 msの間です。 SSDには可動部分がないので、シーク時間の測定は、記憶装置内のメモリ上の特定の位置を準備する電子回路のテストのみである。典型的なSSDのシーク時間は、0.08と0.16msecの間です。

しかし、ブロックサイズの計算を決定するのはシーク時間だけではありません。 HDFSは、Hadoopなどの分散システムのストレージFSとして一般に使用されます。 Hadoop、その他の分散処理エコシステムは、Divide and Conquerのコンセプトに基づいています。それは、タスクをより小さな断片に分割し、商品ハードウェアで複数のマシンで処理します。

ブロックサイズが大きすぎると、SSDのシーク時間がHDDのオーダーよりも小さいということを心に留めているとどうなりますか?

これは本質的に低い並列性を意味します。 64MBのブロックサイズを持つ640MBのファイルに対して10台のマシンに分けることができる処理のタスクは、ブロックサイズが256MBのマッパーの3並列に制限されます。これは基本的には実行時間の長いタスクに変換され、最終的には低速なジョブになります。手元にあるタスクが計算集中型のプロセスである場合、状況は悪化します。

ブロックサイズが小さすぎると、SSDのシーク時間がHDDのオーダーよりも小さいということを心に留めているとどうなりますか?ブロックサイズが低いとのJVMの多くは、クラスタの非効率的な利用が生じクラスタ上で起動されますので、

  1. は今、この場合には、タスクの多くを持っています。
  2. あなたのNameNodeは、小さなファイルであってもたくさんの情報で膨大な情報を集めています。これは、より裕福なNameNodeまたはNameNode連合のような他の解決策を持つことに変わる可能性があります。

私はSSDを持っています。しかし、あなたのブロックサイズを適切に選んだのです!あなたのHDDの既存の実装と助け適切なブロックサイズ

希望とは対照的に、そうでなければ、あなたは、SSDと大ブロックサイズと遅くクラスタで終わる可能性があります!

関連する問題