Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Databricks offre deux façons de créer des vues matérialisées et des tables de streaming : des pipelines autonomes ou des pipelines Lakeflow. Les deux s’exécutent sur le même moteur déclaratif et produisent des tables gérées par le catalogue Unity. La différence est la quantité du pipeline que vous créez et utilisez.
- Une vue matérialisée ou une table de streaming indépendante est un jeu de données unique défini à l’aide de la syntaxe SQL. Azure Databricks crée et gère un pipeline en arrière-plan pour l’actualiser. Vous créez et mettez à jour des jeux de données autonomes à partir d’un entrepôt SQL Databricks, ou à partir d’un notebook utilisant le calcul serverless à usage général via
spark.sql(). Voir les pipelines indépendants. - Un pipeline Lakeflow est un pipeline que vous concevez et exploitez comme un tout. Il peut contenir de nombreux jeux de données, dans SQL et Python, avec l’orchestration des dépendances, la traçabilité et les fonctionnalités opérationnelles à l’échelle du pipeline. Voir Qu’est-ce que les pipelines ?.
Lorsque vous créez une vue matérialisée autonome ou une table de streaming, le pipeline managé s’affiche sur la page Travaux et pipelines avec un type de pipeline MV/ST. Les jeux de données définis dans un pipeline Lakeflow ont un type de pipeline ETL.
Quand utiliser un pipeline autonome
Utilisez des vues matérialisées indépendantes et des tables de streaming lorsque :
- Vous accélérez les requêtes ou transformez des données à l’aide d’une vue matérialisée unique ou d’une table en streaming.
- Vous travaillez depuis un entrepôt Databricks SQL, l’éditeur SQL ou un notebook utilisant le calcul serverless à usage général, et vous planifiez des actualisations avec
SCHEDULE,TRIGGER ON UPDATEou une tâche SQL dans un travail. - Vous n’avez pas besoin de collecteurs, d’orchestration multi-étapes ni d’autres fonctionnalités propres aux pipelines.
Quand utiliser un pipeline Lakeflow
Utilisez un pipeline Lakeflow quand :
- Vous créez un pipeline à plusieurs étapes avec des jeux de données intermédiaires, où Azure Databricks gère les dépendances et la traçabilité entre les jeux de données. Les jeux de données intermédiaires peuvent être publiés dans le catalogue ou conservés privés dans le pipeline.
- Vous créez des tables et des flux dans Python.
- Vous écrivez vers des tables Delta externes ou des destinations de streaming d’événements à l’aide de récepteurs (
create_sink()ouforeach_batch_sink()). - Vous appliquez la capture des données modifiées depuis un instantané de base de données à l’aide de
create_auto_cdc_from_snapshot_flow(). - Vous souhaitez une exécution déclenchée ou continue sur l’ensemble du pipeline.
Comparison
| Propriété | Table de diffusion en continu autonome ou vue matérialisée | Table de streaming du pipeline ou vue matérialisée |
|---|---|---|
| Interface de création | Syntaxe SQL, depuis un entrepôt SQL Databricks ou avec spark.sql() dans un notebook utilisant le calcul serverless à usage général |
SQL et Python |
| Scope | Un jeu de données, dans un pipeline qui Azure Databricks gère pour vous | De nombreux jeux de données au sein d’un pipeline, avec orchestration et traçabilité des dépendances |
| Exécution | Déclenché, avec SCHEDULE, TRIGGER ON UPDATEou une tâche SQL |
Déclenché ou continu |
| Fonctionnalités réservées au pipeline | Récepteurs, create_auto_cdc_from_snapshot_flow(), jeux de données privés |
|
| Libellé du type de pipeline | MV/ST |
ETL |
| Passer d’un pipeline à l’autre | Non pris en charge ; la table doit être recréée dans le pipeline cible | Soutenu |