Leggere le tabelle di Databricks dai client Delta
Usare il catalogo REST di Iceberg per leggere le tabelle registrate nel catalogo Unity su Azure Databricks dai client Iceberg supportati, tra cui Apache Spark e DuckDB.
Consiglio
Per informazioni su come leggere i dati di Azure Databricks con Microsoft Fabric, vedere Usare Microsoft Fabric per leggere i dati registrati in Unity Catalog.
Lettura tramite l'API REST di Unity
L'API REST di Unity fornisce ai client esterni l'accesso in lettura alle tabelle Delta registrate nel catalogo Unity. Alcuni client supportano anche la creazione di tabelle e la scrittura in tabelle esistenti.
Configurare l'accesso usando l'endpoint /api/2.1/unity-catalog
.
Requisiti
Azure Databricks supporta l'accesso alle tabelle tramite Unity REST API come parte di Unity Catalog. Per usare questi endpoint, è necessario abilitare Unity Catalog nell'area di lavoro. I tipi di tabella seguenti sono idonei per le letture dell'API REST di Unity:
- Tabelle gestite di Unity Catalog.
- Tabelle esterne del catalogo Unity memorizzate con Delta Lake.
È necessario completare i passaggi di configurazione seguenti per configurare l'accesso per leggere le tabelle di Databricks dai client Delta usando l'API REST unity:
- Abilitare l'accesso ai dati esterni per il metastore. Vedere Abilitare l'accesso ai dati esterni nel metastore.
- Concedere al principale responsabile dell'integrazione il privilegio
EXTERNAL USE SCHEMA
nello schema contenente le tabelle. Vedere Concedere un'entità di sicurezza EXTERNAL USE SCHEMA. - Eseguire l'autenticazione usando un token di accesso personale di Databricks. Vedere Autenticare l'accesso alle risorse di Azure Databricks.
Leggere tabelle Delta con Apache Spark
Di seguito è riportato un esempio delle impostazioni per configurare Apache Spark per leggere le tabelle Delta gestite ed esterne del catalogo 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>"
Sostituire le variabili seguenti:
-
<uc-catalog-name>
: nome del catalogo in Unity Catalog che contiene le tabelle. -
<workspace-url>
: URL dell'area di lavoro di Azure Databricks. -
<token>
: token PAT per l'entità che configura l'integrazione.