Concepten voor gestructureerd streamen

Apache Spark Structured Streaming stelt je in staat streamingapplicaties en pijplijnen te bouwen met dezelfde Spark API's die je gebruikt voor batchverwerking. Azure Databricks ondersteunt twee verwerkingsmodi:

  • Real-time modus (RTM): Ontworpen voor operationele workloads met een latentie van minder dan een seconde, zoals fraudedetectie en realtime personalisatie. RTM verwerkt records zodra ze binnenkomen, met een end-to-end latentie van slechts vijf milliseconden. Zie concepten van de real-time-modus.
  • Microbatchmodus: Ontworpen voor analytische pijplijnen en extract, transformatie en laden (ETL) workloads. Micro-batchmodus verwerkt stromen in kleine batches, waarbij rekenkosten worden gebalanceerd met latentievereisten gemeten in seconden of minuten. Microbatchverwerking is de standaardmodus.

Beide modi gebruiken dezelfde Structured Streaming API's. Voor queries die door beide modi worden ondersteund, kun je via de trigger- en computeconfiguratie van modus wisselen. Zie Realtime-modus instellen.

Structured Streaming ondersteunt ook streaming in Lakeflow-pijpleidingen, gebouwd op Apache Spark™ Declarative Pipelines. Pipelines beheren orkestratie, checkpoints en herstel, en je definieert transformaties in SQL of Python.

Voor een stapsgewijze handleiding, zie Uw eerste Structured Streaming-workload uitvoeren.

Lezen uit een gegevensstroom

Gebruik Structured Streaming om incrementeel gegevens op te nemen uit ondersteunde gegevensbronnen.

Feature Beschrijving
Automatisch laden Incrementeel en efficiënt nieuwe gegevensbestanden verwerken wanneer ze binnenkomen in de cloudopslag.
Lees- en schrijfbewerkingen voor Delta Lake-tabellen Gebruik Delta Lake-tabellen als streamingbronnen en verwerkingspunten met precies-éénmaal verwerkingsgaranties.
SQL- en Spark-API’s Maak verbinding met berichtbussen, wachtrijen en bedrijfsapplicaties met behulp van SQL- en Spark-API's.
Micro-batchgrootte Beperk invoersnelheden om consistente batchgrootten te behouden en verwerkingsvertragingen te voorkomen.

Schrijven naar een gegevensafvoer

Configureren hoe Structured Streaming gegevens levert aan doelsystemen.

Feature Beschrijving
controlepunten Sla de verwerkingsstatus op om fouttolerantie en exactly-once leveringssemantiek in te schakelen.
Uitvoermodus Kies tussen toevoegmodus, updatemodus en volledige modus voor stateful streaming-query's.
Triggerintervallen Stel triggerintervallen in om de latentie en kosten voor uw verwerkingsvereisten te verdelen.
Realtimemodus in gestructureerd streamen Gegevens verwerken voor realtime workloads met end-to-end latentie zo laag als vijf milliseconden.

Stateful en stateless verwerkingen

Statusloze queries verwerken rijen zonder status te behouden. Stateful query's behouden de tussenliggende status voor aggregaties, joins en ontdubbeling.

Feature Beschrijving
Stateless streamingqueries Optimaliseer query's die gegevens verwerken zonder tussenliggende status te behouden.
Watermerken Reguleer hoe lang Structured Streaming wacht op laat binnenkomende gegevens bij bewerkingen met status.
Stateful streaming Aggregaties, stream-stream joins en ontdubbeling beheren met behulp van stateful operators.

Controleren en beheren

Prestaties van query's bijhouden, optimalisaties toepassen en gegevenstoegang beheren voor workloads met gestructureerd streamen in productie.

Feature Beschrijving
Bewaken met StreamingQueryListener Volg de voortgang van query's en metrische prestatiegegevens met behulp van de Spark-gebruikersinterface en listener-API.
Tutorial: Monitor een query met StreamingQueryListener Voeg een listener toe en log voortgangsstatistieken van de query aan een Unity Catalog-tabel.
Bestuur met Unity Catalog Configureer Unity Catalog voor streamingworkloads met governance en toegangsbeheer.