Einführung in Streams und Aufgaben

Snowflake unterstützt kontinuierliche Datenpipelines mit Streams und Aufgaben:

Streams:

Ein Stream-Objekt zeichnet das Delta der Change Data Capture (CDC)-Informationen für eine Tabelle (z. B. eine Stagingtabelle) auf, einschließlich Einfügungen und anderer Data Manipulation Language (DML)-Änderungen. Ein Stream ermöglicht das Abfragen und Verbrauchen einer Reihe von Änderungen an einer Tabelle auf Zeilenebene zwischen zwei Transaktionszeitpunkten.

In einer kontinuierlichen Daten-Pipeline wird in Tabellen-Streams aufgezeichnet, wann Staging-Tabellen und alle nachgelagerten Tabellen mit Daten aus Geschäftsanwendungen gefüllt werden, wobei das kontinuierliche Laden von Daten verwendet wird, und wann sie mit SQL-Anweisungen weiter verarbeitet werden können.

Weitere Informationen dazu finden Sie unter Einführung in Streams.

Aufgaben:

Ein Aufgaben-Objekt führt eine SQL Anweisung aus, die Aufrufe von gespeicherten Prozeduren enthalten kann. Aufgaben können nach einem Zeitplan oder auf der Grundlage eines von Ihnen definierten Triggers, z. B. dem Eintreffen von Daten, ausgeführt werden. Sie können Aufgabendiagramme verwenden, um Aufgaben miteinander zu verketten und gerichtete azyklische Diagramme (Directed Acyclic Graphs, DAGs) zu definieren, um eine komplexere periodische Verarbeitung zu unterstützen. Weitere Informationen dazu finden Sie unter Einführung in Aufgaben und Aufgabenabhängigkeiten mit Task-Graphen verwalten.

Die Kombination von Aufgaben mit Tabellen-Streams ist eine bequeme und leistungsstarke Methode zur kontinuierlichen Verarbeitung neuer oder geänderter Daten. Eine Aufgabe kann neue oder geänderte Zeilen, die ein Stream anzeigt, mit SYSTEM$STREAM_HAS_DATA umwandeln. Jedes Mal, wenn eine Aufgabe ausgeführt wird, kann sie entweder die Änderungsdaten verbrauchen oder die aktuelle Ausführung überspringen, wenn keine Änderungsdaten vorhanden sind.

Weitere Features für kontinuierliche Datenpipelines finden Sie unter: