제공된 함수를 사용하여 처리할 스트리밍 쿼리의 출력을 설정합니다. 마이크로 일괄 처리 실행 모드(즉, 트리거가 연속되지 않은 경우)에서만 지원됩니다. 모든 마이크로 일괄 처리에서 제공된 함수는 출력 행을 DataFrame 및 일괄 처리 식별자로 호출합니다. 일괄 처리 ID를 사용하여 중복 제거하고 외부 시스템에 출력을 트랜잭션으로 쓸 수 있습니다.
문법
foreachBatch(func)
매개 변수
| 매개 변수 | 유형 | 설명 |
|---|---|---|
func |
호출할 | DataFrame 및 일괄 처리 ID(int)를 입력으로 사용하는 함수입니다. |
Returns
DataStreamWriter
Notes
Spark Connect 모드에서 제공된 함수는 외부에 정의된 변수에 액세스할 수 없습니다.
예제
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()