Koncepty strukturovaného streamování

Apache Spark Structured Streaming vám umožňuje vytvářet streamovací aplikace a pipeline se stejnými Spark API, která používáte pro dávkové zpracování. Azure Databricks podporuje dva režimy zpracování:

  • Režim v reálném čase (RTM): Navržen pro provozní úlohy s latencí pod jednu sekundu, jako je detekce podvodů a personalizace v reálném čase. RTM zpracovává záznamy hned, jak přicházejí, s koncovou latencí už od pěti milisekund. Viz koncepty režimu v reálném čase.
  • Mikrodávkový režim: Navržen pro analytické pipeline a pracovní zátěže pro extrakci, transformaci a načítání (ETL). Mikrodávkový režim zpracovává toky v malých dávkách, vyvažujíc výpočetní náklady s požadavky na latenci měřené v sekundách nebo minutách. Mikrodávkové zpracování je výchozím režimem.

Oba režimy používají stejná API pro strukturované streamování. Pro dotazy podporované oběma režimy můžete režimy přepínat prostřednictvím konfigurace triggeru a compute. Viz Nastavení režimu v reálném čase.

Strukturované streamování také zajišťuje streamování v Lakeflow pipelines, které jsou postaveny na Apache Spark™ Declarative Pipelines. Pipeline spravují orchestraci, checkpointy a obnovu a transformace definujete v SQL nebo Pythonu.

Podrobný kurz najdete v tématu Spuštění první úlohy strukturovaného streamování.

Čtení z datového streamu

Pomocí strukturovaného streamování můžete přírůstkově ingestovat data z podporovaných zdrojů dat.

funkce Description
Automatický nakladač Nové datové soubory zpracovávejte přírůstkově a efektivně, jakmile dorazí do cloudového úložiště.
Streamované čtení a zápisy tabulek Delta Lake Tabulky Delta Lake používejte jako zdroje streamování a datové zásobníky s garancí přesně jednoho zpracování.
SQL a Spark API Připojte se k sběrnicím zpráv, frontám a podnikovým aplikacím pomocí SQL a Spark API.
Velikost mikrodávkové dávky Omezte vstupní frekvence, abyste zachovali konzistentní velikosti dávek a zabránili zpoždění zpracování.

Zápis do datové jímky

Nakonfigurujte, jak strukturované streamování poskytuje data cílovým systémům.

funkce Description
kontrolní body Uložte stav zpracování, který umožňuje odolnost proti chybám a sémantiku doručení přesně jednou.
Výstupní režim Volba mezi režimy připojení, aktualizace a dokončení pro stavové streamovací dotazy.
Intervaly aktivačních událostí Nastavte intervaly aktivačních událostí tak, aby se vyrovnaly latence a náklady na vaše požadavky na zpracování.
Režim v reálném čase ve strukturovaném streamování Zpracovávejte data pro úlohy v reálném čase s end-to-end latencí již od pěti milisekund.

Stavové a bezstavové zpracování

Bezstavové dotazy zpracovávají řádky bez zachování stavu. Stavové dotazy udržují zprostředkující stav pro agregace, spojení a odstranění duplicitních dat.

funkce Description
Dotazy bezstavového streamování Optimalizujte dotazy, které zpracovávají data bez údržby přechodného stavu.
Vodoznaky Určuje, jak dlouho strukturované streamování čeká na pozdní příchod dat ve stavových operacích.
Stavové streamování Správa agregací, spojení datových proudů a odstranění duplicitních dat pomocí stavových operátorů

Sledování a správa

Sledování výkonu dotazů, aplikování optimalizací a řízení přístupu k datům pro produkční úlohy strukturovaného streamování

funkce Description
Monitorování s využitím StreamQueryListener Sledujte průběh dotazů a metriky výkonu pomocí uživatelského rozhraní Sparku a rozhraní API naslouchacího procesu.
Kurz: Monitorování dotazu pomocí StreamingQueryListener Připojte listener a zaznamenávejte metriky průběhu dotazů do tabulky služby Unity Catalog.
Řízení pomocí katalogu Unity Nakonfigurujte Katalog Unity pro úlohy streamování pomocí zásad správného řízení a řízení přístupu.