0

プレゲルの論文は次のように述べています。

a) Pregel ライブラリは、グラフをパーティションに分割します。各パーティションは、一連の頂点とそれらの頂点のすべての出力エッジで構成されます...マスターは、グラフが持つパーティションの数を決定し、1 つまたは複数のパーティションを各ワーカー マシンに割り当てます。 .

b)マスターは、ユーザーの入力の一部を各ワーカーに割り当てます。入力はレコードのセットとして扱われ、各レコードには任意の数の頂点とエッジが含まれます。入力の分割は、グラフ自体の分割と直交しており、通常はファイル境界に基づいています

ここで 2 つの質問があります。

1) b) で、「ユーザー入力の一部を各ワーカーに割り当てる」マスターは、「各ワーカー マシンに 1 つ以上のパーティションを割り当てる」とどのように異なるのですか。それらは異なる機能を持っていますか?パーティションを把握してから、1 つまたは複数のパーティションをワーカー マシンにフィードする必要があると考えました。それだけです。私は何が欠けていますか?

2) 入力の分割がファイル境界のみに基づいている場合、それはパーティションの頂点が異なるマシンに存在できることを意味しますか? (パーティションの 2 つの頂点が異なるファイルに存在し、異なるワーカー マシンで処理される可能性があるため)。

4

1 に答える 1

1

質問1:

各ワーカーにユーザー入力を割り当てるマスターは、各ワーカー マシンに 1 つ以上のパーティションを割り当てることと同じです。

ユーザー入力はグラフになります。このグラフはいくつかのパーティションに分割されます。これらのパーティションはワーカー間で分割されます。ワーカーは、パーティションが処理される場所です。それらには、1 つ以上のパーティションが含まれる場合があります。パーティションには頂点が含まれます。エンティティ内のパーティションは、アクティブな頂点を選択し、それらのスーパーステップ計算を実行します。

質問2:

いいえ。パーティション内にあるすべての頂点は、同じワーカー内にあります。頂点が別のマシン (したがって別のワーカー) に転送される場合、別のパーティションに変更されます。

于 2013-09-04T15:58:42.013 に答える