Mottagare i Lakeflow-pipelines

Som standard skriver pipelineflöden resultat till Delta-tabeller som hanteras av Unity Catalog, vanligtvis strömmande tabeller eller materialiserade vyer. Sinkar är alternativa utdatamål som låter dig skriva transformerad data till mål utanför lagring som hanteras av Databricks, till exempel tjänster för händelseströmning eller anpassade datalager.

Sänkor används med appendflöden. Du definierar en mottagare med någon av api:erna för mottagare och refererar sedan till den som target i din append_flow definition.

När du bör använda sinkar

Databricks rekommenderar att du använder mottagare när du behöver:

  • Skapa användningsfall med låg svarstid, till exempel bedrägeriidentifiering, realtidsanalys eller kundrekommendationer, där data måste flöda till en meddelandebuss i stället för molnlagring. Information om arbetsbelastningar som kräver svarstid på millisekunder finns i Använda realtidsläge i Lakeflow-pipelines.
  • Skriv transformerad data till tabeller som hanteras av en extern Delta-instans, inklusive tabeller som hanteras av Unity Catalog och externa tabeller.
  • Utför omvänd ETL i externa system, till exempel att skriva bearbetade data tillbaka till Apache Kafka-ämnen för förbrukning utanför Azure Databricks.
  • Skriv till ett format som inte stöds internt av Azure Databricks, med hjälp av Python anpassade datakällor.

Typer av sinkar

Pipelines stöder följande mottagartyper:

Sänktyp Description
Deltatabellmottagare Skriv till hanterade eller externa Delta-tabeller i Unity Catalog. Ange antingen en filsökväg eller ett fullständigt kvalificerat tabellnamn.
Apache Kafka-sänkor Skriv till Apache Kafka-ämnen med hjälp av Kafka-anslutningsappen som ingår i pipelinekörningen.
Azure Event Hubs-sänkor Skriv till Azure Event Hubs med kafka-gränssnittet. Använder samma alternativ som Kafka-mottagare.
anpassade Python-sinkar Skriv till valfritt datalager med en anpassad Python-datakälla som har registrerats med spark.dataSource.register.
ForEachBatch-mottagare Använd anpassad Python logik för varje mikrobat med strömmande data. Använd när du behöver skriva till flera mål, utföra upserts eller använda mål som inte stöder strömmande skrivningar direkt.

Sink-API:er

Pipelines tillhandahåller två API:er för att skapa mottagare:

Båda sinktyperna refereras till som target för en append_flow.

Limitations

  • Sinks är bara tillgängliga i Python. SQL stöds inte.
  • Endast strömmande frågeanrop stöds. Batchfrågor stöds inte.
  • Endast append_flow kan skriva till sänkor; create_auto_cdc_flow och andra flödestyper stöds inte.
  • Förväntade värden för pipeline stöds inte för sinkar.
  • Om du kör en fullständig uppdatering rensas inte tidigare skrivna data i mottagare.

Ytterligare resurser