foreachBatch (DataStreamWriter)

Nastaví výstup dotazu streamování, který se má zpracovat pomocí poskytnuté funkce. Podporováno pouze v režimu mikrodávkového spouštění (to znamená, že trigger není nepřetržitý). V každé mikrodávce se zadaná funkce volá s výstupními řádky jako datovým rámcem a identifikátorem dávky. ID dávky lze použít k odstranění duplicitních dat a transakčnímu zápisu výstupu do externích systémů.

Syntaxe

foreachBatch(func)

Parametry

Parameter Typ Description
func Callable Funkce, která jako vstup přebírá datový rámec a id dávky (int).

Návraty

DataStreamWriter

Poznámky

V režimu Spark Connect nemá poskytnutá funkce přístup k proměnným definovaným mimo ni.

Příklady

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()