Qu’est-ce qu’une vue ?
Une vue est le résultat d’une requête sur une ou plusieurs tables et vues dans le catalogue Unity. Une vue est un objet en lecture seule composé d’une ou plusieurs tables et vues dans un metastore. Vous pouvez créer une table et d’autres vues dans plusieurs schémas et catalogues.
Cet article décrit les vues que vous pouvez créer dans Azure Databricks.
Vues dans le catalogue Unity
Dans le catalogue Unity, les vues se trouvent au troisième niveau de l’espace de noms de trois niveaux (catalog.schema.view
) :
Une vue stocke le texte d’une requête généralement sur une ou plusieurs sources de données ou tables dans le metastore. Dans Azure Databricks, une vue équivaut à un DataFrame Spark conservé en tant qu’objet dans un schéma. Contrairement aux DataFrames, vous pouvez interroger des vues n’importe où dans Azure Databricks, en supposant que vous disposez de l’autorisation de le faire. La création d’une vue ne traite ni n’écrit aucune donnée. Seul le texte de requête est inscrit dans le metastore dans le schéma associé.
Remarque
Les vues peuvent avoir une sémantique d’exécution différente si elles sont basées sur des sources de données autres que des tables Delta. Databricks recommande de toujours définir des vues en référençant des sources de données à l’aide d’un nom de table ou de vue. La définition de vues sur des jeux de données en spécifiant un chemin d’accès ou un URI peut entraîner des exigences de gouvernance des données déroutantes.
Vues matérialisées
Les vues matérialisées calculent et mettent à jour de manière incrémentielle les résultats retournés par la requête de définition.
Vous pouvez inscrire des vues matérialisées dans Unity Catalog à l’aide de Databricks SQL ou les définir dans le cadre d’un pipeline Delta Live Tables. Consultez Utiliser des vues matérialisées dans Databricks SQL et Qu’est-ce que Delta Live Tables ?.
Vues temporaires
Une vue temporaire a une étendue et une persistance limitées et n’est pas inscrite dans un schéma ou un catalogue. La durée de vie d’une vue temporaire diffère selon l’environnement que vous utilisez :
- Dans les notebooks et les travaux, les vues temporaires sont limitées au niveau du notebook ou du script. Ils ne peuvent pas être référencés en dehors du bloc-notes dans lequel ils sont déclarés et n’existent plus lorsque le bloc-notes se détache du cluster.
- Dans Databricks SQL, les vues temporaires sont étendues au niveau de la requête. Plusieurs instructions au sein de la même requête peuvent utiliser la vue temporaire, mais elles ne peuvent pas être référencées dans d’autres requêtes, y compris dans le même tableau de bord.
Vues dynamiques
Les vues dynamiques peuvent être utilisées pour fournir un contrôle d’accès au niveau des lignes et des colonnes, en plus du masquage des données. Consultez Créer une vue dynamique.
Vues dans le metastore Hive (hérité)
Vous pouvez définir des vues Hive héritées sur n’importe quelle source de données et les inscrire dans le metastore Hive hérité. Databricks recommande de migrer toutes les vues Hive héritées vers le catalogue Unity. Voir Vues dans le metastore Hive.
Vue temporaire globale Hive (héritée)
Les vues temporaires globales sont une fonctionnalité Azure Databricks héritée qui vous permet d’inscrire une vue temporaire disponible pour toutes les charges de travail exécutées sur une ressource de calcul. Les vues temporaires globales sont une conservation héritée de Hive et HDFS. Databricks recommande d’utiliser des vues temporaires globales.