Lire des tables Databricks depuis des clients Delta
Utilisez le catalogue REST Iceberg pour lire les tables inscrites dans le catalogue Unity sur Azure Databricks à partir de clients Iceberg pris en charge, notamment Apache Spark et DuckDB.
Conseil / Astuce
Pour plus d’informations sur la lecture des données Azure Databricks à l’aide de Microsoft Fabric, consultez Utiliser Microsoft Fabric pour lire des données inscrites dans le catalogue Unity.
Lire à l’aide de l’API REST Unity
L’API REST Unity fournit aux clients externes un accès en lecture aux tables Delta inscrites dans le catalogue Unity. Certains clients prennent également en charge la création de tables et l’écriture dans des tables existantes.
Configurez l’accès à l’aide du point de terminaison /api/2.1/unity-catalog
.
Spécifications
Azure Databricks prend en charge l’accès de l’API REST Unity aux tables dans le cadre du catalogue Unity. Le catalogue Unity doit être activé dans votre espace de travail pour utiliser ces points de terminaison. Les types de tableau suivants sont éligibles pour les lectures de l’API REST Unity :
- Tables gérées par le catalogue Unity.
- Tables externes du catalogue Unity stockées avec Delta Lake.
Vous devez suivre les étapes de configuration suivantes pour configurer l’accès aux tables Databricks lues à partir de clients Delta à l’aide de l’API REST Unity :
- Activez l’Accès à des données externes pour votre metastore. Consultez Activer l'accès aux données externes dans le metastore.
- Accordez au principal chargé de la configuration de l'intégration le privilège
EXTERNAL USE SCHEMA
sur le schéma contenant les tables. Voir Accorder EXTERNAL USE SCHEMA à un principal. - Authentifiez-vous à l’aide d’un jeton d’accès personnel Databricks. Consultez Autoriser l’accès aux ressources Azure Databricks.
Lire des tables Delta avec Apache Spark
Voici un exemple de paramètres permettant de configurer Apache Spark pour lire les tables delta externes et managées du catalogue Unity :
"spark.sql.extensions": "io.delta.sql.DeltaSparkSessionExtension",
"spark.sql.catalog.spark_catalog": "io.unitycatalog.spark.UCSingleCatalog",
"spark.sql.catalog.<uc-catalog-name>": "io.unitycatalog.spark.UCSingleCatalog",
"spark.sql.catalog.<uc-catalog-name>.uri": "<workspace-url>/api/2.1/unity-catalog",
"spark.sql.catalog.<uc-catalog-name>.token":"<token>",
"spark.sql.defaultCatalog":"<uc-catalog-name>"
Remplacez les variables suivantes :
<uc-catalog-name>
: nom du catalogue dans le catalogue Unity qui contient vos tables.<workspace-url>
: URL de l’espace de travail Azure Databricks.<token>
: jeton PAT pour le principal configurant l’intégration.
Essentiel
Les configurations spécifiques varient en fonction du type de stockage d’objets cloud qui sauvegardent le catalogue. Consultez les documents du catalogue OSS Unity pour obtenir des configurations supplémentaires.