Concepten voor gestructureerd streamen
Dit artikel bevat een inleiding tot Structured Streaming in Azure Databricks.
Wat is Structured Streaming?
Apache Spark Structured Streaming is een bijna realtime verwerkingsengine die end-to-end fouttolerantie biedt met exactlyse verwerkingsgaranties met vertrouwde Spark-API's. Met Structured Streaming kunt u berekeningen op streaminggegevens uitdrukken op dezelfde manier als u een batchberekening op statische gegevens uitdrukt. De structured streaming-engine voert de berekening stapsgewijs uit en werkt het resultaat continu bij naarmate streaminggegevens binnenkomen.
Lezen uit een gegevensstroom
U kunt Structured Streaming gebruiken om incrementeel gegevens op te nemen uit ondersteunde gegevensbronnen. Veelvoorkomende gegevensbronnen zijn onder andere:
- Gegevensbestanden in de opslag van cloudobjecten. Zie Wat is automatisch laadprogramma?
- Berichtenbussen en wachtrijen. Zie Streaminggegevensbronnen configureren.
- Delta Lake. Zie lees- en schrijfbewerkingen van deltatabellen.
Elke gegevensbron biedt een aantal opties om op te geven hoe batches met gegevens moeten worden geladen. Tijdens de configuratie van de lezer moet u mogelijk opties configureren om het volgende te doen:
- Geef de gegevensbron of -indeling op (bijvoorbeeld bestandstype, scheidingstekens en schema).
- Toegang tot bronsystemen configureren (bijvoorbeeld poortinstellingen en referenties).
- Geef op waar u in een stream moet beginnen (bijvoorbeeld Kafka-offsets of het lezen van alle bestaande bestanden).
- Bepalen hoeveel gegevens in elke batch worden verwerkt (bijvoorbeeld maximale offsets, bestanden of bytes per batch). Zie Structured Streaming-batchgrootte configureren in Azure Databricks.
Schrijven naar een gegevenssink
Een gegevenssink is het doel van een streaming-schrijfbewerking. Veelvoorkomende sinks die worden gebruikt in streamingworkloads van Azure Databricks zijn onder andere:
- Delta Lake
- Berichtenbussen en wachtrijen
- Sleutel-waardedatabases
Net als bij gegevensbronnen bieden de meeste gegevenssinks een aantal opties om te bepalen hoe gegevens naar het doelsysteem worden geschreven. Tijdens de configuratie van de schrijver geeft u de volgende opties op:
- Uitvoermodus (standaard toevoegen). Zie Een uitvoermodus selecteren voor Structured Streaming.
- Een controlepuntlocatie (vereist voor elke schrijver). Zie Controlepunten voor gestructureerd streamen.
- Triggerintervallen. Zie Triggerintervallen voor gestructureerd streamen configureren.
- Opties waarmee de gegevenssink of -indeling wordt opgegeven (bijvoorbeeld bestandstype, scheidingstekens en schema).
- Opties voor het configureren van toegang tot doelsystemen (bijvoorbeeld poortinstellingen en referenties).