スパークストラクチャードストリーミング(バージョン2.2.0)では、クエリがの出力モードとしてmapGroupsWithState
のクエリを使用している場合、Sparkがデータ構造java.util.ConcurrentHashMap
を使用してメモリ内の状態データを保存しているようです。誰かが私に詳細に説明することはできますか?状態データが大きくなり、メモリが足りなくなったら何が起こるのですか?また、spark設定パラメータを使用して、メモリに状態データを格納するための制限を変更することは可能ですか?状態データが増加している場合、Spark Structured Streamingはインメモリ状態をどのように処理しますか?
3
A
答えて
1
もはや状態 データが成長し、十分なメモリがないときに何が起こることを詳細に私に説明できます。誰かがexecutorがOOM例外でクラッシュします
mapGroupWithState
では、状態の追加と削除を担当しているため、メモリを割り当てることができないデータでJVMを圧倒すると、プロセスがクラッシュします。
メモリにステートデータを格納するための制限を、spark configパラメータを使用して変更することはできますか?
メモリに格納するバイト数を制限することはできません。繰り返しますが、mapGroupsWithState
の場合は、タイムアウトの設定や状態の削除など、JVMをOOMにさせないように状態を管理する必要があります。 agg
コンビネータのようにSparkがあなたのために状態を管理するステートフルアグリゲーションについて言えば、watermarkを使用して状態を制限することができます。watermarkは、タイムフレームが経過すると古いデータをメモリから削除します。
関連する問題
- 1. ブラウザはHTTPキープアライブ競合状態をどのように処理しますか?
- 2. Spark Structured Streamingでバイナリデータを処理する
- 3. カスタムボタン処理状態
- 4. コード内の競合状態をどのように処理できますか?
- 5. Hbase統合によるSpark Structured Streaming
- 6. どのように電子状態で電子状態をチェックしますか?
- 7. Spark Structured Streamingが背圧を処理する方法は?
- 8. Spark Streaming - 状態の別の要素をカウントする
- 9. ドラフトエディタ状態の親状態を更新していますか?
- 10. Google Playアルファアップロードがハングしています処理状態
- 11. 状態が状態で動作しない場合の角度角度
- 12. 処理:ボタン押しスイッチの状態
- 13. enum値を状態図の状態として使用するにはどうすればよいですか?
- 14. どのように競合状態がありますか?
- 15. コンポーネント状態に追加された新しい状態キーを理解するライフサイクルメソッドはありますか?
- 16. システムアイドル状態をチェックし、5分後にシステムをログアウト状態にする(使用していない場合)
- 17. スリープ状態にあるQThreadをスリープ状態にしますか?
- 18. ダスト状態の場合
- 19. PHP状態の場合 - バックエンド
- 20. どのような状態
- 21. ASP.NET 4.0エラー処理は、500の状態
- 22. リソースマネージャーがスタンバイ状態からアクティブ状態に遷移しない
- 23. データを取得した後の処理状態 - 反応
- 24. Ember.js状態マネージャに状態の間でデータの受け渡し
- 25. 状態の場所に基づいてWebアプリケーションを処理する方法は?
- 26. 競合状態がそう
- 27. は私がoccuringから、このような競合状態を防ぐにはどうすればよい(Laravelを)データベーストランザクションを使用した競合状態を
- 28. NGRX/@Effectsを使用してフォームの状態を処理する
- 29. 状態を更新していない状態を更新しています
- 30. 増分アクター状態のレプリケーション?
Sparkでメモリを設定するには、 - 'spark.driver.memory'と' spark.executor.memory' configsを使用できます。参考までに - https://spark.apache.org/docs/latest/configuration.html#available-properties – himanshuIIITian