Partager via


Créer des catalogues

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

Pour en savoir plus sur les catalogues, consultez Présentation des catalogues dans Azure Databricks.

Remarque

Pour savoir comment créer un catalogue étranger, un objet Unity Catalog qui reflète une base de données dans un système de données externe, consultez Créer un catalogue étranger. Voir aussi Gérer et utiliser des catalogues étrangers.

Spécifications

Pour créer un catalogue, quel que soit le type de catalogue :

  • Vous devez être administrateur de metastore Azure Databricks ou disposer du privilège CREATE CATALOG sur le metastore.
  • La ressource de calcul que vous utilisez pour exécuter un notebook et créer un catalogue doit se trouver sur Databricks Runtime 11.3 ou version ultérieure, et doit utiliser un mode d’accès conforme au catalogue Unity. Voir Modes d’accès aux fichiers. Les entrepôts SQL prennent toujours en charge Unity Catalog.

Pour créer un catalogue partagé :

Pour créer un catalogue standard :

  • Si vous spécifiez un emplacement de stockage managé pour le catalogue, vous devez disposer du privilège CREATE MANAGED STORAGE sur l’emplacement externe cible.
  • Si aucun stockage managé au niveau du metastore n’existe, vous devez spécifier un emplacement de stockage managé pour le catalogue.

Pour créer un catalogue étranger :

  • Vous devez être le propriétaire de la connexion que vous utilisez pour créer le catalogue étranger ou disposer du privilège CREATE FOREIGN CATALOG sur la connexion.
  • Vous devez utiliser le calcul Databricks Runtime 13.1 ou version ultérieure. Les entrepôts SQL doivent être Pro ou serverless.

Créer un catalogue

Pour créer un catalogue, vous pouvez utiliser l’explorateur de catalogues, une commande SQL, l’API REST, l’interface CLI Databricks ou Terraform. Quand vous créez un catalogue, deux schémas (bases de données) sont créés automatiquement : default et information_schema.

Explorateur de catalogues

  1. Connectez-vous à un espace de travail lié au metastore.

  2. Cliquez sur Icône Catalogue Catalogue.

  3. Cliquez sur le bouton Créer un catalogue.

  4. Dans la boîte de dialogue Créer un catalogue, entrez un nom de catalogue et sélectionnez le type de catalogue que vous souhaitez créer :

    • Catalogue standard : objet sécurisable qui organise les ressources de données et IA gérées par Unity Catalog. Convient pour tous les cas d’usage, à l’exception de Lakehouse Federation et des catalogues créés à partir de partages Delta Sharing.
    • Catalogue étranger : objet sécurisable qui reflète une base de données dans un système de données externe avec la fédération Lakehouse Federation. Consultez Vue d’ensemble de la configuration de Lakehouse Federation.
    • Catalogue partagé : objet sécurisable qui organise les données et d’autres ressources partagées avec vous en tant que partage Delta Sharing. La création d’un catalogue à partir d’un partage rend ces ressources disponibles à la lecture pour les utilisateurs de votre espace de travail. Consultez Qu’est-ce qu’un partage ?.
  5. Selon le type de catalogue, spécifiez les options suivantes :

    • Pour les catalogues standard : il est facultatif, mais fortement recommandé, de spécifier un emplacement de stockage managé. Vous devez disposer du privilège CREATE MANAGED STORAGE sur l’emplacement externe cible que vous utilisez comme emplacement de stockage managé. Consultez Spécifier un emplacement de stockage managé dans Unity Catalog.

      Vous pouvez éventuellement spécifier un sous-chemin d’un emplacement externe défini. Si aucun emplacement externe n’est défini, vous pouvez en créer un en cliquant sur Créer un emplacement externe.

      Important

      Si votre espace de travail n’a pas d’emplacement de stockage au niveau du metastore, vous devez spécifier un emplacement de stockage managé lorsque vous créez un catalogue.

    • Pour les catalogues étrangers : vous devez sélectionner une connexion, un objet sécurisable dans le catalogue Unity qui spécifie un chemin d’accès et des informations d’identification pour accéder à un système de base de données externe. Consultez Vue d’ensemble de la configuration de Lakehouse Federation.

      Lorsque vous avez sélectionné la connexion, entrez le nom de la Base de données ou d’un autre catalogue Databricks que vous souhaitez mettre en miroir.

      Ces exigences varient en fonction de la source de données :

      • MySQL utilise un espace de noms à deux couches et ne nécessite donc pas de nom de base de données.
      • Pour les connexions à un catalogue dans un autre espace de travail Databricks, entrez le nom du catalogue Databricks au lieu d’un nom de base de données.

      Si vous n’avez pas de connexion définie, vous pouvez en créer une en cliquant sur Créer une connexion.

    • Pour les catalogues partagés : vous devez sélectionner un fournisseur et un partage. Une fois que vous avez sélectionné le fournisseur, vous pouvez sélectionner l’un des partages du fournisseur.

      Si vous n’êtes pas sûr de quel fournisseur ou partage choisir, parcourez ou de rechercher des fournisseurs et des partages simplement à l’aide du navigateur de l’explorateur de catalogues. Consultez Afficher les fournisseurs et Afficher les partages qu’un fournisseur a partagés avec vous.

  6. Cliquez sur Créer.

  7. Dans la boîte de dialogue Catalogue créé !, cliquez sur Afficher le catalogue pour accepter le catalogue comme configuré automatiquement, ou cliquez sur Configurer le catalogue (recommandé) pour configurer les autorisations de catalogue, les liaisons d’espace de travail et les métadonnées.

    Si vous cliquez sur Afficher le catalogue, le catalogue sera accessible à tous les espaces de travail attachés au metastore, et le privilège BROWSE sera accordé à tous les utilisateurs du compte. Vous pouvez ignorer le reste des étapes de cette procédure et continuer à ajouter des schémas au catalogue. Consultez Créer des schémas.

    Vous pouvez revenir à la page des détails du catalogue dans l’explorateur de catalogues à tout moment pour mettre à jour le propriétaire, les balises, les commentaires, les liaisons d’espace de travail, les autorisations et les schémas.

  8. Dans la page Configurer le catalogue > Espaces de travail, indiquez l’espace de travail auquel le catalogue est lié.

    Par défaut, le catalogue est partagé avec tous les espaces de travail attachés au metastore actuel. Si le catalogue contient des données qui doivent être limitées à des espaces de travail spécifiques, désactivez l’option Tous les espaces de travail y ont accès et utilisez le bouton Affecter aux espaces de travail pour ajouter ces espaces de travail. L’espace de travail actuel doit être inclus.

    Une fois que vous avez affecté un espace de travail, vous pouvez éventuellement modifier son niveau d’accès par défaut Lecture et écriture pour En lecture seule : sélectionnez l’espace de travail dans la liste, puis cliquez sur le bouton Gérer le niveau d’accès.

    Pour en savoir plus, consultez Limiter l’accès au catalogue à des espaces de travail spécifiques.

  9. Cliquez sur Suivant pour affecter Autorisations à votre catalogue.

    Tous les utilisateurs de compte disposent du privilège BROWSE par défaut, ce qui leur permet de découvrir les métadonnées du catalogue sans nécessiter d’accès en lecture aux données.

    Pour accorder un privilège à un utilisateur, un groupe ou un principal de service, cliquez sur Accorder et suivez les instructions de Objets sécurisable et privilèges du catalogue Unity.

  10. Cliquez sur Suivant pour ajouter une balise facultative et commenter les métadonnées.

    Les balises sont des paires clé-valeur que vous pouvez utiliser pour organiser et classer des catalogues afin de simplifier la recherche et la découverte de vos ressources de données. Les valeurs sont facultatives. Consultez Appliquer des étiquettes aux objets sécurisables Unity Catalog.

    Un Commentaire est un champ ouvert souvent utilisé pour fournir une description et aider les utilisateurs à découvrir les ressources de données dans le catalogue. Consultez Ajouter des commentaires aux données et ressources d’IA.

  11. Cliquez sur Enregistrer.

  12. Ajoutez des schémas et des objets de données au catalogue.

    Consultez Créer des schémas.

Vous pouvez utiliser l’explorateur de catalogues pour mettre à jour le propriétaire, les balises, les commentaires, les liaisons d’espace de travail et les autorisations à tout moment après avoir créé le catalogue.

SQL

Pour créer un catalogue standard, exécutez la commande SQL suivante dans un notebook ou un éditeur de requête SQL. Les éléments entre chevrons sont optionnels. Remplacez les valeurs d’espace réservé :

  • <catalog-name> : Nom du catalogue.

  • <location-path>: facultatif mais fortement recommandé. Fournissez un chemin d’accès d’emplacement de stockage si vous souhaitez que les tables managées de ce catalogue soient stockées à un emplacement différent du stockage racine par défaut configuré pour le metastore.

    Important

    Si votre espace de travail n’a pas d’emplacement de stockage au niveau du metastore, vous devez spécifier un emplacement de stockage managé lorsque vous créez un catalogue.

    Ce chemin doit être défini dans une configuration d’emplacement externe et vous devez disposer du privilège CREATE MANAGED STORAGE sur la configuration d’emplacement externe. Vous pouvez utiliser le chemin défini dans la configuration de l’emplacement externe ou un sous-chemin (en d’autres termes, 'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance' ou 'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance/product').

  • <comment> : description facultative ou autre commentaire.

CREATE CATALOG [ IF NOT EXISTS ] <catalog-name>
   [ MANAGED LOCATION '<location-path>' ]
   [ COMMENT <comment> ];

Par exemple, pour créer un catalogue nommé example :

CREATE CATALOG IF NOT EXISTS example;

Pour créer un catalogue partagé, exécutez la commande suivante dans un notebook ou un éditeur de requête SQL. Les éléments entre chevrons sont optionnels.

CREATE CATALOG [IF NOT EXISTS] <catalog-name>
USING SHARE <provider-name>.<share-name>;
[ COMMENT <comment> ];

Pour créer un catalogue étranger, exécutez la commande suivante dans un notebook ou un éditeur de requête SQL. Les éléments entre chevrons sont optionnels. Remplacez les valeurs d’espace réservé :

  • <catalog-name> : nom du catalogue dans Azure Databricks.
  • <connection-name> : objet Connection qui spécifie la source de données, le chemin et les informations d’identification d’accès.
  • <database-name> : nom de la base de données que vous souhaitez refléter en tant que catalogue dans Azure Databricks. Non obligatoire pour MySQL, qui utilise un espace de noms à deux couches. Pour la fédération Lakehouse Federation Databricks à Databricks, utilisez catalog '<external-catalog-name>' à la place.
  • <external-catalog-name> : Databricks à Databricks uniquement, nom du catalogue dans l’espace de travail Databricks externe que vous reflétez. Consultez Exécuter des requêtes fédérées sur un autre espace de travail Databricks.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS [(database '<database-name>') | (catalog '<external-catalog-name>')];

Consultez aussi Créer un catalogue étranger.

Pour limiter l’accès au catalogue à des espaces de travail spécifiques dans votre compte, également appelé « liaison espace de travail-catalogue », consultez Limiter l’accès au catalogue à des espaces de travail spécifiques.

Pour obtenir des descriptions détaillées des paramètres, consultez CREATE CATALOG.

Après avoir créé le catalogue, attribuez des privilèges au catalogue. Consultez Privilèges Unity Catalog et objets sécurisables.

Other

Terraform : vous pouvez créer un catalogue à l’aide du fournisseur Terraform Databricks et de databricks_catalog. Vous pouvez récupérer des informations sur les catalogues à l’aide de databricks_catalogs.

API REST : utilisez POST /api/2.1/unity-catalog/catalogs.

Interface CLI Databricks : databricks catalogs create <catalog-name> [options] Pour obtenir la liste des options, exécutez databricks catalogs create -h. Les options sont également décrites dans la référence de l’API. Suivez le lien d’API dans le paragraphe précédent.

Après avoir créé le catalogue, attribuez des privilèges au catalogue. Consultez Privilèges Unity Catalog et objets sécurisables.

Plus d’informations