Créer des schémas

Cet article explique comment créer des schémas dans Unity Catalog et dans le metastore Hive hérité.

Pour en savoir plus sur les schémas dans Azure Databricks, notamment avec une comparaison du comportement de schéma dans Unity Catalog et le metastore Hive, consultez Qu’est-ce que les schémas dans Azure Databricks ?.

Avant de commencer

Pour créer un schéma dans Unity Catalog :

  • 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ées USE 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.
  • Pour spécifier un emplacement de stockage managé facultatif pour les tables et les volumes du schéma, un emplacement externe doit être défini dans Unity Catalog et vous devez disposer du privilège CREATE MANAGED STORAGE sur l’emplacement externe. Consultez Spécifier un emplacement de stockage managé dans Unity Catalog.
  • 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 Unity Catalog.

Pour créer un schéma dans le metastore Hive :

Créer un schéma

Pour créer un schéma dans Unity Catalog, vous pouvez utiliser Catalog Explorer ou les commandes SQL. Pour créer un schéma dans le metastore Hive, vous devez utiliser les commandes SQL.

Explorateur de catalogues

  1. Connectez-vous à un espace de travail lié au metastore Unity Catalog.
  2. Cliquez sur Icône Catalogue Catalogue.
  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 et Emplacements managés pour les schémas.
  7. Cliquez sur Créer.
  8. Accordez des privilèges sur le schéma. Consultez Gérer les privilèges dans Unity Catalog.
  9. Cliquez sur Enregistrer.

SQL

  1. Exécutez les commandes SQL suivantes dans un notebook ou dans l’Éditeur de requête 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. Si vous créez un schéma dans le metastore Hive et que vous êtes dans un espace de travail avec Unity Catalog, utilisez hive_metastore comme nom de catalogue. Si votre espace de travail n’est pas activé pour Unity Catalog, ne spécifiez pas de catalogue.
    • <schema-name> : Nom du schéma.
    • <location-path> : chemin facultatif vers un emplacement de stockage managé. Utiliser avec MANAGED LOCATION pour Unity Catalog et avec LOCATION pour le metastore Hive. Dans Unity Catalog, vous devez disposer du privilège CREATE MANAGED STORAGE sur l’emplacement externe du chemin d’accès que vous spécifiez. Consultez Spécifier un emplacement de stockage managé dans Unity Catalog et Emplacements managés pour les schémas.
    • <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 plus de descriptions détaillées des paramètres, consultez CREATE SCHEMA.

    CREATE { DATABASE | SCHEMA } [ IF NOT EXISTS ] <catalog-name>.<schema-name>
        [ MANAGED LOCATION '<location-path>' | LOCATION '<location-path>']
        [ COMMENT <comment> ]
        [ WITH DBPROPERTIES ( <property-key = property_value [ , ... ]> ) ];
    
  2. Accordez des privilèges sur le schéma. Pour plus d’information sur les privilèges d’ Unity Catalog, consultez Gérer les privilèges dans Unity Catalog.

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.

Étapes suivantes