4

特定のファイルを保存する場所をHDFS に指示することはできますか?

使用事例

ファイルのバッチ #1 を HDFS にロードしたところ、これらのデータに対してジョブ/アプリケーションを実行したいと考えています。ただし、まだロードされていないバッチ #2 もあります。たとえば、ノード 1 から 10 の最初のバッチでジョブ/アプリケーションを実行し、ノード 11 から 20 に新しいデータを完全に並行してロードできればよいのですが。

最初はNameNode フェデレーション(Hadoop 2.x) がまさにそれを行うと思っていましたが、フェデレーションは名前空間のみを分割するように見えますが、DataNode は接続されたすべての NameNode にブロックを提供します。

では、 HDFSでデータの分散を制御する方法はありますか? そして、それはまったく意味がありますか?

4

1 に答える 1

7

技術的にはできますが、私はしません。

データの行き先を完全に制御したい場合は、拡張することができますBlockPlacementPolicy( hdfs が保存するデータノードを選択する方法を参照してください)。これは簡単なことではないので、お勧めしません。

おそらく、ラック認識を有利に利用するための巧妙なセットアップを使用して、2 つのノード セット間のトラフィック量を最小限に抑えるための措置を講じることができます。

于 2013-06-24T15:24:16.667 に答える