foreachBatch (DataStreamWriter)
指定された関数を使用して処理されるストリーミングクエリの出力を設定します。マイクロバッチ実行モード(つまり、トリガーが連続的でない場合)でのみサポートされます。すべてのマイクロバッチで、提供された関数が、 DataFrameとしての出力行とバッチ識別子を使用して呼び出されます。 ID を使用すると、出力の重複排除とトランザクションによる外部システムへの書き込みを行うことができます。
構文
foreachBatch(func)
パラメーター
パラメーター | Type | 説明 |
|---|---|---|
| 呼び出し可能 | DataFrameと ID(整数)を入力として受け取る関数。 |
戻り値
DataStreamWriter
注意
Spark Connectモードでは、提供された関数は、その関数の外部で定義された変数にアクセスできません。
例
Python
import time
df = spark.readStream.format("rate").load()
def func(batch_df, batch_id):
batch_df.collect()
q = df.writeStream.foreachBatch(func).start()
time.sleep(3)
q.stop()