Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette page explique les restrictions relatives aux chevauchements de chemins d’accès dans le catalogue Unity, les modèles d’accès basés sur les chemins d’accès pour les fichiers de données dans les objets Du catalogue Unity et explique comment Unity Catalog gère les chemins d’accès pour les tables et les volumes.
Restrictions de chevauchement de chemin dans le catalogue Unity
Unity Catalog applique la gouvernance des données en empêchant les répertoires managés de données de se chevaucher. Unity Catalog applique les règles suivantes :
- Les emplacements externes ne peuvent pas chevaucher d’autres emplacements externes.
- Les tables et les volumes stockent les fichiers de données dans des emplacements externes ou l’emplacement racine du metastore.
- Les volumes ne peuvent pas chevaucher d’autres volumes.
- Les tables ne peuvent pas chevaucher d’autres tables.
- Les tables et les volumes ne peuvent pas se chevaucher.
- Les emplacements de stockage managés ne peuvent pas se chevaucher. Consultez Spécifier un emplacement de stockage managé dans Unity Catalog.
- Les volumes externes ne peuvent pas chevaucher les emplacements de stockage managé.
- Les tables externes ne peuvent pas chevaucher les emplacements de stockage managé.
Ces règles signifient que les restrictions suivantes existent dans le catalogue Unity :
- Vous ne pouvez pas définir d’emplacement externe dans un autre emplacement externe.
- Vous ne pouvez pas définir un volume dans un autre volume.
- Vous ne pouvez pas définir une table dans une autre table.
- Vous ne pouvez pas définir de table sur des fichiers de données ou répertoires au sein d’un volume.
- Vous ne pouvez pas définir un volume sur un répertoire dans une table.
Remarque
Vous pouvez toujours utiliser l’accès basé sur le chemin pour écrire ou lire des fichiers de données à partir de volumes, y compris Delta Lake. Vous ne pouvez pas inscrire ces fichiers de données en tant que tables dans le metastore Du catalogue Unity.
Chemins complètement managés pour les tables et les volumes
Lorsque vous créez une table managée ou un volume managé, Unity Catalog crée un répertoire dans l’emplacement de stockage configuré par le catalogue Unity associé au schéma conteneur. Le nom de ce répertoire est généré de façon aléatoire pour éviter toute collision potentielle avec d’autres répertoires déjà présents. Ce comportement diffère de la façon dont le metastore Hive crée des tables managées.
L'accès basé sur le chemin aux tables gérées de Unity Catalog n'est pas pris en charge. Interagissez toujours avec les tables gérées par le catalogue Unity à l’aide des noms de tables et des volumes managés du catalogue Unity à l’aide de chemins de volume.
Chemins d’accès d’emplacement externe pour les tables et les volumes
Lorsque vous créez une table ou un volume externe, vous spécifiez un chemin d’accès dans un emplacement externe régi par le catalogue Unity.
Importante
Pour éviter les conflits de chemins d’accès, Databricks recommande de créer des tables et des volumes externes dans des sous-répertoires plutôt qu’à la racine d’un emplacement externe.
Pour faciliter l’utilisation, interagissez avec les tables externes du catalogue Unity à l’aide de noms de tables et de volumes externes à l’aide de chemins de volume. Les utilisateurs disposant de privilèges suffisants peuvent également accéder directement aux données à l’aide du chemin de stockage cloud complet.
L’accès aux données via des URI cloud pour ces objets est entièrement régi par les privilèges du catalogue Unity, qui remplacent tous les privilèges sur l’emplacement externe lui-même. Consultez les restrictions de chevauchement de chemin d’accès dans le catalogue Unity et les privilèges de catalogue Unity et les objets sécurisables.
Accéder aux données dans le catalogue Unity
Les objets Catalogue Unity fournissent un accès aux données via des identificateurs d’objet, des chemins d’accès de volume ou des URI cloud. Vous pouvez utiliser ces valeurs pour accéder aux données associées aux volumes et aux tables.
Les tables catalogue Unity sont accessibles à l’aide d’un identificateur à trois niveaux avec le modèle suivant :
<catalog_name>.<schema_name>.<table_name>
Chemins de fichier de volume dans le catalogue Unity
Les volumes fournissent un chemin d’accès aux fichiers de données avec le modèle suivant :
/Volumes/<catalog_name>/<schema_name>/<volume_name>/<path_to_file>
Les URI cloud nécessitent que les utilisateurs fournissent le pilote, l’identificateur de conteneur de stockage et le chemin complet des fichiers cibles, comme dans l’exemple suivant :
abfss://<container_name>@<storage_account>.dfs.core.windows.net/<path>
Le tableau suivant présente les méthodes d’accès autorisées pour les objets Catalogue Unity :
| Objet | Identificateur d’objet | Chemins d'accès au fichier | URI du Cloud |
|---|---|---|---|
| Emplacement externe | Non | Non | oui |
| Table managée | oui | Non | Non |
| Table externe | oui | Non | oui |
| Volume managé | Non | oui | Non |
| Volume externe | Non | oui | oui |
Remarque
Les volumes catalogue Unity utilisent des identificateurs d’objet à trois niveaux avec le modèle suivant pour les commandes de gestion (par CREATE VOLUME exemple, et DROP VOLUME) :
<catalog_name>.<schema_name>.<volume_name>
Pour travailler réellement avec des fichiers dans des volumes, vous devez utiliser l’accès basé sur le chemin.