Notes
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.
Une table réside dans un schéma et contient des lignes de données. Le type de table par défaut créé dans Azure Databricks est une table gérée par le catalogue Unity.
Le différentiateur principal pour les types de tables dans Azure Databricks est le catalogue propriétaire, comme décrit dans le tableau suivant :
Type de table | Gestion du catalogue | Prise en charge de la lecture/écriture | Optimisation des performances | Optimisation des coûts de stockage |
---|---|---|---|---|
Adresses IP gérées | Unity Catalog | Oui | Oui | Oui |
Externe | Aucun (fichiers uniquement) | Oui | Manuel uniquement | Manuel uniquement |
Étranger | Un système externe ou un service catalogue | Lecture seule | Non | Non |
L’exemple suivant montre une table nommée prod.people_ops_employees
qui contient des données sur cinq employés. Les métadonnées sont inscrites dans le catalogue Unity et les données sont stockées dans le stockage cloud.
Formats de stockage : Delta Lake et Apache Iceberg
Les types de tables dans Azure Databricks définissent la façon dont les données sont détenues et consultées. Séparément, le format de stockage définit la façon dont les données sont physiquement structurées et suivies sur le disque.
Azure Databricks prend en charge deux formats de table ouverts principaux : Delta Lake et Apache Iceberg. Ces formats ajoutent une couche de stockage transactionnelle qui effectue le suivi des métadonnées et active la conformité ACID, le voyage dans le temps et d’autres fonctionnalités.
- Delta Lake est le format de stockage par défaut pour les tables managées et externes dans Azure Databricks.
- Apache Iceberg est pris en charge sur les tables gérées et étrangères dans Azure Databricks. Ce format est utile lorsque vous intégrez l’écosystème Iceberg.
Tables managées
Les tables managées gèrent les fichiers de données sous-jacents en même temps que l’inscription du metastore. Databricks vous recommande d’utiliser des tables managées chaque fois que vous créez une table. Les tables gérées par le catalogue Unity sont les tables par défaut lorsque vous créez des tables dans Azure Databricks. Consultez les tables managées du catalogue Unity dans Azure Databricks pour Delta Lake et Apache Iceberg.
Tables externes
Les tables externes, parfois appelées tables non managées, référencent les données stockées en dehors de Databricks dans un système de stockage externe, comme le stockage d’objets cloud. Ils dissocient la gestion des fichiers de données sous-jacents de l'enregistrement dans le métastore. Unity Catalog prend en charge les tables externes dans plusieurs formats, notamment Delta Lake. Les tables externes du catalogue Unity peuvent stocker des fichiers de données à l’aide de formats courants lisibles par des systèmes externes. Consultez Utiliser des tables externes.
Tables étrangères
Les tables étrangères représentent les données stockées dans des systèmes externes connectés à Azure Databricks via Lakehouse Federation. Les tables étrangères sont en lecture seule sur Azure Databricks. Voir Utiliser des tables étrangères.
Tables dans le catalogue Unity
Dans le catalogue Unity, les tables se trouvent au troisième niveau de l’espace de noms à trois niveaux (catalog.schema.table
), comme illustré dans le diagramme suivant.
Autorisations de table de base
La plupart des opérations de table nécessitent des autorisations USE CATALOG
et USE SCHEMA
sur le catalogue et le schéma contenant une table.
Le tableau suivant récapitule les autorisations supplémentaires nécessaires pour les opérations de table courantes dans le catalogue Unity :
Opération | Autorisations |
---|---|
Créer une table |
CREATE TABLE sur le schéma conteneur |
Interrogation d’une table |
SELECT sur la table |
Mettre à jour, supprimer, fusionner ou insérer des données dans une table |
SELECT et MODIFY sur la table |
Suppression d’une table |
MANAGE sur la table |
Remplacer une table |
MANAGE sur la table, CREATE TABLE sur le schéma conteneur |
Pour plus d’informations sur les autorisations du catalogue Unity, consultez Gérer les privilèges dans le catalogue Unity.