問題タブ [dstream]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
412 参照

apache-kafka - 次のバッチで使用するために DStream を保持できません

次に、いくつかの変換を行い、タイプの twp DStream Data_1 および Data_2 を作成します

以下のように結合を行い、結合キーのないレコードを除外し、Data_1 との結合を行うことで、次のバッチで使用するために履歴に保存します。

前のステップの後に履歴を取得します(hdfsに保存して確認しました)が、ユニオンを実行している間、この履歴はまだバッチで空です。

0 投票する
1 に答える
995 参照

apache-spark - Apache Spark ストリーミング - 長時間実行バッチのタイムアウト

InputDStream を使用して (並列化されていない) ストリーミングを実行するために、Apache Spark の長時間実行ストリーミング ジョブを設定しています。

私が達成しようとしているのは、(ユーザー定義のタイムアウトに基づいて) キューのバッチに時間がかかりすぎる場合、バッチをスキップして完全に破棄し、残りの実行を続行できるようにすることです。

Spark APIまたはオンライン内でこの問題の解決策を見つけることができませんでした-StreamingContext awaitTerminationOrTimeoutの使用を調べましたが、これによりタイムアウト時にStreamingContext全体が強制終了されますが、現在のバッチをスキップ/強制終了するだけです。

mapWithState の使用も検討しましたが、これはこのユース ケースには当てはまらないようです。最後に、StreamingListener を設定し、バッチの開始時にタイマーを開始し、特定のタイムアウトしきい値に達したときにバッチを停止/スキップ/強制終了することを検討していましたが、バッチを強制終了する方法はまだないようです。

ありがとう!