Aller au contenu principal

Créer et gérer des vues

Cette page montre comment créer des vues dans Unity Catalog. Voir Qu'est-ce qu'une vue ?.

Autorisations requises

Pour créer une vue :

  • Vous devez disposer de l'autorisation USE CATALOG sur le catalogue parent et des autorisations USE SCHEMA et CREATE TABLE sur le schéma parent. Un administrateur de métastore ou le propriétaire du catalogue peut vous accorder tous ces privilèges. Un propriétaire de schéma, ou un utilisateur disposant du privilège MANAGE, peut vous accorder les privilèges USE SCHEMA et CREATE TABLE sur le schéma.
  • Vous devez pouvoir lire les tables et les vues référencées dans la vue (SELECT sur la table ou la vue, et USE CATALOG sur le catalogue et USE SCHEMA sur le schéma).
  • Si une vue référence des tables dans le Hive metastore local au Workspace, vous ne pouvez accéder à la vue que depuis le Workspace qui contient les tables locales au Workspace. Pour cette raison, Databricks recommande de créer des vues uniquement à partir de tables ou de vues qui se trouvent dans le metastore Unity Catalog.

Pour lire une vue, les autorisations requises dépendent du type de compute, de la version de Databricks Runtime et du mode d’accès. Consultez Exigences pour l'interrogation des vues.

Pour mettre à jour une définition ou une description de vue, vous devez être le propriétaire de la vue. Avoir le privilège MANAGE est insuffisant. Pour plus de détails, consultez les pages de référence ALTER VIEW et COMMENT ON.

Créez une vue

Pour créer une vue, exécutez la commande SQL suivante dans l'éditeur SQL ou dans un notebook attaché au compute. Les éléments entre parenthèses sont facultatifs. Remplacez les valeurs des espaces réservés :

  • <catalog-name>: Le nom du catalogue.
  • <schema-name>: Le nom du schéma.
  • <view-name>: Un nom pour la vue.
  • <query>: La query, les colonnes, et les tables et vues utilisées pour composer la vue.
SQL
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;

Par exemple, pour créer une vue nommée sales_redacted à partir de colonnes de la table sales_raw :

SQL
CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
user_id,
email,
country,
product,
total
FROM sales_metastore.sales.sales_raw;

Vous pouvez également créer une vue en utilisant le fournisseur Databricks Terraform et databricks_table. Vous pouvez récupérer une liste de noms complets de vues en utilisant databricks_views.

Supprimer une vue

Vous devez être le propriétaire de la vue ou disposer du privilège MANAGE sur la vue pour supprimer une vue. Pour supprimer une vue, exécutez la commande SQL suivante :

SQL
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;