Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De @dp.foreach_batch_sink() decorator definieert een ForEachBatch-sink, die een stroom verwerkt als een reeks microbatches die u in Python met aangepaste logica verwerkt. U verwijst naar de sink als een targettoevoegstroom om de getransformeerde gegevens te schrijven. Zie ForEachBatch gebruiken om te schrijven naar willekeurige gegevenssinks in pijplijnen voor conceptuele richtlijnen, overwegingen en voorbeelden.
Syntax
from pyspark import pipelines as dp
@dp.foreach_batch_sink(name="<name>")
def batch_handler(df, batch_id):
"""
Required:
- `df`: a Spark DataFrame representing the rows of this micro-batch.
- `batch_id`: unique integer ID for each micro-batch in the query.
"""
# Your custom write or transformation logic here
# Example:
# df.write.format("some-target-system").save("...")
#
# To access the sparkSession inside the batch handler, use df.sparkSession.
Parameters
| Parameter | Description |
|---|---|
| name | Optional. Een unieke naam om de sink in de pijplijn te identificeren. Standaard ingesteld op de naam van de UDF, indien niet opgenomen. |
| batch_handler | Dit is de door de gebruiker gedefinieerde functie (UDF) die wordt aangeroepen voor elke microbatch. |
| Df | Spark DataFrame met gegevens voor de huidige microbatch. |
| batch_id | De integer-ID van de micro-batch. Spark incrementeert deze id voor elk triggerinterval. Een batch_id van 0 staat voor het begin van een stream of het begin van een volledige verversing. De foreach_batch_sink code moet een volledige vernieuwing voor downstreamgegevensbronnen correct verwerken. Zie Volledig vernieuwen voor meer informatie. |