Koncept för strukturerad direktuppspelning

Apache Spark Structured Streaming låter dig bygga streamingapplikationer och pipelines med samma Spark-API:er som du använder för batchbearbetning. På Azure Databricks finns stöd för två bearbetningslägen:

  • Realtidsläge (RTM): Designat för operativa arbetsbelastningar under en sekund, såsom bedrägeridetektion och realtidspersonalisering. RTM bearbetar poster när de anländer, med en end-to-end-latens så låg som fem millisekunder. Se koncept för realtidsläge.
  • Mikrobatchläge: Utformat för analytiska pipelines och ETL-arbetsbelastningar. Mikrobatchläget bearbetar strömmar i små batcher, där beräkningskostnader balanseras mot latenskrav som mäts i sekunder eller minuter. Mikrobatchbearbetning är standardläget.

Båda lägena använder samma strukturerade streaming-API:er. För frågor som stöds av båda lägena kan du byta läge via utlösarkonfigurationen och beräkningskonfigurationen. Se Konfigurera realtidsläge.

Strukturerad strömning driver också strömning i Lakeflow-pipelines, byggda på Apache Spark™ Declarative Pipelines. Pipelines hanterar orkestrering, checkpoints och återställning, och du definierar transformationer i SQL eller Python.

En stegvis handledning finns i Kör ditt första strukturerade strömningsjobb.

Läsa från en dataström

Använd Structured Streaming för att inkrementellt mata in data från datakällor som stöds.

Feature Beskrivning
Automatisk Laddare Bearbeta nya datafiler stegvis och effektivt när de tas emot i molnlagringen.
Strömningsläsningar och -skrivningar för Delta Lake-tabeller Använd Delta Lake-tabeller som strömmande källor och mottagarplatser med garantier för exakt-en-gång bearbetning.
SQL- och Spark-API:er Anslut dig till meddelandebussar, köer och företagsapplikationer med hjälp av SQL- och Spark-API:er.
Mikro-batstorlek Begränsa indatahastigheter för att upprätthålla konsekventa batchstorlekar och förhindra bearbetningsfördröjningar.

Skriva till en datamottagare

Konfigurera hur Structured Streaming levererar data till målsystem.

Feature Beskrivning
Kontrollpunkter Lagra bearbetningstillstånd för att möjliggöra feltolerans och exakt-en-gång-leveranssemantik.
Utdataläge Välj mellan tilläggs-, uppdaterings- och fullständiga lägen för tillståndskänsliga strömningsfrågor.
Utlösarintervall Ange utlösarintervall för att balansera svarstid och kostnad för dina bearbetningskrav.
Realtidsläge i strukturerad direktuppspelning Bearbeta data för realtidsarbetsbelastningar med svarstid från slutpunkt till slutpunkt så låg som fem millisekunder.

Tillståndskänslig och tillståndslös bearbetning

Tillståndslösa frågor bearbetar rader utan att behålla tillståndet. Tillståndsberoende frågor upprätthåller mellanliggande tillstånd för aggregeringar, kopplingar och deduplicering.

Feature Beskrivning
Tillståndslösa strömningsfrågor Optimera frågor som bearbetar data utan att underhålla mellanliggande tillstånd.
Vattenstämplar Kontrollera hur länge Structured Streaming väntar på data som kommer sent i tillståndskänsliga åtgärder.
Tillståndskänslig direktuppspelning Hantera aggregeringar, stream-stream-kopplingar och deduplicering med tillståndskänsliga operatorer.

Övervaka och hantera

Spåra frågeprestanda, tillämpa optimeringar och styra dataåtkomst för produktionsstrukturerade strömningsarbetsbelastningar.

Feature Beskrivning
Övervaka med StreamingQueryListener Spåra frågeförlopp och prestandamått med hjälp av Spark-användargränssnittet och lyssnar-API:et.
Självstudie: Övervaka en fråga med StreamingQueryListener Bifoga en listener och logga frågeframsteg till en Unity Catalog-tabell.
Hantera med Unity Catalog Konfigurera Unity Catalog för strömmande arbetsbelastningar med styrning och åtkomstkontroll.