スパークは、パラレルで操作できるフォールトトレラントな要素の集合体である復元力のある分散データセット(RDB)という概念を中心に展開されています。しかし、私は、RDDがフォールトトレランスを完了するための内部メカニズムを見つけませんでした。誰かがこのメカニズムについて説明できますか?ありがとう。スパークのRDDはフォールトトレランスをどのようにして終了しますか?
答えて
わかりましたら非常に簡単に説明してください。
クラスタ内のフォルトは、データを処理しているノードの1つがクラッシュしたときに発生します。言い換えれば、RDDはパーティションに分割され、各ノード(executors
と呼ばれる)はいつでもパーティション上で動作します。 (理論的には、各エグゼキュータには、ジョブに割り当てられたコアの数とRDDに存在するパーティションの数に応じて、複数のタスクを割り当てることができます)。
実際には、RDDのパーティション上で実行される一連のScala関数(機能が純粋か副作用かに応じて、Sparkの用語で変換とアクションと呼ばれます)が実行されます。これらの操作は一緒に構成され、Spark実行エンジンはこれらをオペレーションのDirected Acyclic Graphとみなします。
操作Yの操作Zの途中で特定のノードがクラッシュした場合、クラスタマネージャ(YARN/Mesos)はノードが停止していることを知り、別のノードを割り当てようとしますノードは処理を続行します。このノードは、アプリケーションコードから作成されたScalaクロージャを渡すことによって、実行する必要のあるRDDの特定のパーティションと一連の操作X-> Y-> Z(lineage
)で動作するように指示されます。新しいノードは幸せに処理を続けることができ、データ損失は事実上ありません。
スパークでは、このメカニズムを使用してexactly-once
の処理を保証しています。スパークAction
ブロックのデータベースを呼び出すような副作用操作は何度も呼び出すことができます。しかし、1つのRDDから別のRDDへの純粋な機能マッピングのような変換を見ると、結果として得られるRDDはソースRDDからの要素を1回しか処理しないことが保証されます。
スパークのフォールトトレランスの領域は非常に広大であり、はるかに大きな説明が必要です。私は、他の人たちがこれがどのように実装されているかなどの技術的な詳細が出てくるのを見たいと思っています。
- 1. スパークRDDフォールトトレランス
- 2. は、次のように私はスパークRDDを持っているスパークRDD
- 3. どのようにしてcocossharpアプリケーションを終了しますか?
- 4. プロセスはどのように終了しましたか?
- 5. Androidアプリケーションはどのように終了しますか?
- 6. どのようにPostgreSQLサーバを終了しますか?
- 7. スパークはRDDをどのように分割するかを決定しますか?
- 8. JavaスパークRDDは他のRDDにありますか?
- 9. どのようにアプリスレッドを終了して再起動しますか?
- 10. どのようにプログラムを終了するように指示しますか?
- 11. どのようにすべての活動を終了しますか?
- 12. スパークは、私は、データが 10のように設定しているRDD
- 13. 終了かシステムエラーかによってアプリケーションが終了したかどうかを確認してください。
- 14. このコードはどのようにして終了するのですか?
- 15. どのようにバッチファイルを削除してコマンドプロンプトを終了できますか?
- 16. ユーザーがC++コンソールアプリケーションで「終了」を入力すると、アプリはどのように終了しますか?
- 17. スパーク:RDDは
- 18. スパークはどのようにしてクラスタにジョブを送信しますか?
- 19. どのようにして.netでブロック列挙を終了できますか?
- 20. フォールトトレランスのcronジョブはどのようになっていますか?
- 21. スパークRDDのサポート
- 22. スパークのRDDサンプル
- 23. スパーク:別のRDD
- 24. コードの実行終了後、Pythonインタプリタはどのように終了しますか?
- 25. どのように迅速に "終了" gitのソフトリセットを終了するには?
- 26. スレッドが終了したかどうかをオペレーティングシステムがどのように理解していますか?
- 27. スパーク - 出力によってグループからCompactBufferを取り外します(RDD)
- 28. 複数の値を返すようにスパークRDDを減らす
- 29. どのようにユーザーがチェック/日付を終了として
- 30. MFCアプリケーションはどのように終了できますか?