Créer et gérer des schémas (bases de données)

Cet article montre comment créer et gérer des schémas (bases de données) dans Unity Catalog. Un schéma contient des tables, des vues, des volumes, des modèles et des fonctions. Vous créez des schémas dans des catalogues.

Spécifications

  • Vous devez disposer d’un metastore Unity Catalog lié à l’espace de travail où vous effectuez la création du schéma.

  • Vous devez disposer des autorisations d’accès aux donnéesUSE CATALOG et CREATE SCHEMA sur le catalogue parent du schéma. Un administrateur de metastore ou le propriétaire du catalogue peut vous octroyer ces privilèges. Si vous êtes administrateur de metastore, vous pouvez vous octroyer ces privilèges.

  • Le cluster que vous utilisez pour exécuter un notebook afin de créer un schéma doit utiliser un mode d'accès conforme à Unity Catalog. Voir Modes d’accès aux fichiers.

    Les entrepôts SQL prennent toujours en charge le Unity Catalog.

Créer un schéma

Pour créer un schéma, vous pouvez utiliser Catalog Explorer ou les commandes SQL.

Explorateur de catalogues

  1. Connectez-vous à un espace de travail lié au metastore.
  2. Cliquez sur Icône CatalogueCatalogue.
  3. Dans le volet Catalogue sur la gauche, cliquez sur le catalogue dans lequel vous souhaitez créer le schéma.
  4. Dans le volet des détails, cliquez sur Créer un schéma.
  5. Donnez un nom au schéma et ajoutez un commentaire qui peut aider les utilisateurs à comprendre l’objectif du schéma.
  6. (Facultatif) Spécifiez un emplacement de stockage managé. Nécessite le privilège CREATE MANAGED STORAGE sur l’emplacement externe. Consultez Spécifier un emplacement de stockage managé dans Unity Catalog.
  7. Cliquez sur Créer.
  8. Attribuez des autorisations pour votre catalogue. Consultez Privilèges Unity Catalog et objets sécurisables.
  9. Cliquez sur Enregistrer.

SQL

  1. Exécutez la commande SQL suivante dans un notebook ou dans l’éditeur Databricks SQL. Les éléments entre crochets sont optionnels. Vous pouvez utiliser soit SCHEMA, soit DATABASE. Remplacez les valeurs d’espace réservé :

    • <catalog-name> : Nom du catalogue parent pour le schéma.
    • <schema-name> : Nom du schéma.
    • <location-path> : Facultatif. Nécessite des privilèges supplémentaires. Consultez Spécifier un emplacement de stockage managé dans Unity Catalog.
    • <comment> : description facultative ou autre commentaire.
    • <property-key> = <property-value> [ , ... ] : facultatif. Les propriétés et valeurs Spark SQL à définir pour le schéma.

    Pour obtenir les descriptions des paramètres, consultez CREATE SCHEMA.

    USE CATALOG <catalog>;
    CREATE { DATABASE | SCHEMA } [ IF NOT EXISTS ] <schema-name>
        [ MANAGED LOCATION '<location-path>' ]
        [ COMMENT <comment> ]
        [ WITH DBPROPERTIES ( <property-key = property_value [ , ... ]> ) ];
    

    Vous pouvez, si vous le souhaitez, omettre l’instruction USE CATALOG et remplacer <schema-name> par <catalog-name>.<schema-name>.

  2. Attribuez des privilèges au schéma. Consultez Privilèges Unity Catalog et objets sécurisables.

Vous pouvez également créer un schéma à l’aide du fournisseur Databricks Terraform et databricks_schema. Vous pouvez récupérer une liste d’ID de schéma à l’aide de databricks_schemas.

Supprimer un schéma

Pour supprimer un schéma, vous pouvez utiliser Catalog Explorer ou une commande SQL. Vous devez être le propriétaire d’un schéma pour le supprimer.

Explorateur de catalogues

Vous devez supprimer toutes les tables du schéma avant de pouvoir le supprimer.

  1. Connectez-vous à un espace de travail lié au metastore.
  2. Cliquez sur Icône CatalogueCatalogue.
  3. Dans le volet Catalogue, sur la gauche, cliquez sur le schéma que vous souhaitez supprimer.
  4. Dans le volet des détails, cliquez sur le menu à trois points dans le coin supérieur droit, puis sélectionnez Supprimer.
  5. Dans la boîte de dialogue Supprimer un schéma, cliquez sur Supprimer.

Sql

Exécutez la commande SQL suivante dans un notebook ou dans l’éditeur Databricks SQL. Les éléments entre crochets sont optionnels. Remplacez l’espace réservé <schema-name>.

Pour obtenir les descriptions des paramètres, consultez DROP SCHEMA.

Si vous utilisez DROP SCHEMA sans l’option CASCADE, vous devez supprimer toutes les tables du schéma avant de pouvoir le supprimer.

DROP SCHEMA [ IF EXISTS ] <schema-name> [ RESTRICT | CASCADE ]

Par exemple, pour supprimer un schéma nommé inventory_schema et ses tables :

DROP SCHEMA inventory_schema CASCADE

Étapes suivantes

Vous pouvez maintenant ajouter des tables ou des volumes à votre schéma. Consultez Créer des tables dans Unity Catalog et Créer et utiliser des volumes.