2

Hadoop 分散キャッシュについての理解を明確にしたいと思います。分散キャッシュにファイルを追加すると、ファイルがクラスター内のすべてのノードのディスクにロードされることはわかっています。

では、ファイルのデータはどのようにしてクラスター内のすべてのノードに送信されるのでしょうか。ネットワーク経由ですか?その場合、ネットワークに負担がかかりませんか?

以下のような考えを持っていますが、正しいですか?

ファイルが大きい場合、ネットワークが混雑しませんか?

ノード数が多い場合、ファイルのサイズが中規模または小規模であっても、ファイルのレプリケーションとすべてのノードへの送信により、ネットワークの輻輳やメモリの制約が発生することはありませんか?

これらの概念を理解するのを手伝ってください。

ありがとう!!!

4

2 に答える 2

5
  1. はい、ファイルはネットワーク経由で、通常は HDFS 経由で転送されます。データ以外のローカル タスクに HDFS を使用するよりも、ネットワークに負担をかけることはありません。

  2. ファイルが大きい場合、ネットワークの輻輳が発生する可能性がありますが、これらすべてのタスク トラッカーに既に jar をプッシュしているため、ファイルが jar より大きくなりすぎない限り、オーバーヘッドは発生しません。残念な。

  3. ファイルの複製は、最終的にこのファイルをプルするタスク トラッカーの数とは完全に分離されています。レプリケーションはノードからノードへもチェーン化され、何があってもフォールト トレラントな分散ファイル システムを持つコストになります。繰り返しになりますが、分散キャッシュ内のファイルが jar と同じサイズであると仮定すると、ネットワークの輻輳は、jar をすべてのタスク トラッカーにプッシュすることよりも問題ではありません。

全体として、分散キャッシュのオーバーヘッドは、意図したとおりに使用されている限り、ごくわずかです。これは、計算を実行するタスク トラッカーに対して、適度に小さなキャッシュ データをローカルにプッシュする方法です。

編集: 0.20のDistributedCacheドキュメントは次のとおりです。ファイルは URL で指定されることに注意してください。通常、ローカルの hdfs:// セットアップで何かを使用します。

于 2012-10-25T03:54:24.473 に答える
0

分散キャッシュについて理解していることは正しいと思います。私もそう思うので:)分散キャッシュのレプリケーションを増やすと、ネットワーク転送が減少する可能性があります

于 2012-10-25T03:50:14.767 に答える