Présentation des flux et des tâches

Snowflake prend en charge les pipelines de données continus avec des flux et des tâches :

Flux:

Un objet de flux enregistre le delta des informations de capture de données modifiées (CDC) d’une table (telle qu’une table intermédiaire), y compris les insertions et les autres modifications apportées au langage de manipulation des données (DML). Un flux permet d’interroger et de consommer un ensemble de modifications apportées à une table, au niveau des lignes, entre deux points de transaction.

Dans un pipeline de données en continu, les flux de table enregistrent lorsque des tables de zone de préparation et des tables en aval sont remplies avec des données provenant d’applications métiers utilisant le chargement continu des données et pouvant être traitées ultérieurement à l’aide des instructions SQL.

Pour plus d’informations, voir Présentation des flux.

Tâches:

Un objet tâche exécute une instruction SQL, qui peut inclure des appels à des procédures stockées. Les tâches peuvent être exécutées selon une planification ou en fonction d’un déclencheur que vous définissez, comme l’arrivée de données. Vous pouvez utiliser les graphes de tâches pour lier les tâches entre elles, en définissant des graphes orientés acycliques (DAGs) afin de prendre en charge les traitements périodiques plus complexes. Pour plus d’informations, voir Introduction aux tâches et Gérer les dépendances des tâches à l’aide de graphiques de tâches.

La combinaison de tâches et de flux de tables est un moyen pratique et puissant de traiter en continu des données nouvelles ou modifiées. Une tâche peut transformer les lignes nouvelles ou modifiées qu’un flux fait apparaître à l’aide de SYSTEM$STREAM_HAS_DATA. Chaque fois qu’une tâche s’exécute, elle peut soit consommer les données de modification, soit ignorer l’exécution en cours s’il n’existe pas de données de modification.

Pour d’autres fonctionnalités de pipelines de données continus, voir :