Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Questa funzionalità si trova in anteprima pubblica.
Consiglio
Per informazioni su come leggere i dati Azure Databricks usando Microsoft Fabric, vedere Use Microsoft Fabric per leggere i dati registrati in Unity Catalog.
Questa pagina descrive il modo in cui la funzionalità di distribuzione delle credenziali di Unity Catalog supporta l'accesso ai dati in Azure Databricks dai motori di elaborazione esterni.
Credential vending supporta sistemi esterni che si connettono al catalogo Unity usando l'API REST unity e il catalogo REST Apache Iceberg. Vedere Accedere alle tabelle di Databricks dai client Delta e accedere ai dati di Databricks usando sistemi esterni.
Che cos'è la distribuzione automatica delle credenziali di Unity Catalog?
distribuzione di credenziali concede credenziali di breve durata usando l'API REST del catalogo Unity. Le credenziali concesse ereditano i privilegi dell'entità di Azure Databricks usata per configurare l'integrazione. Esistono due tipi di distributori automatici di credenziali:
- Il vending delle credenziali di tabella fornisce l'accesso ai dati registrati nel metastore di Unity Catalog.
- L'erogazione delle credenziali del percorso consente l'accesso a posizioni esterne nel metastore del catalogo Unity.
Requisiti
- L'accesso esterno deve essere configurato nel metastore con
EXTERNAL USE SCHEMAconcesso al soggetto richiedente. Vedere Abilitare l'accesso ai dati esterni nel metastore. - L'URL dell'area di lavoro deve essere accessibile al motore richiedente, inclusi i motori dietro gli elenchi di accesso IP o Azure Private Link.
- Gli URL di archiviazione cloud devono essere accessibili tramite firewall e controlli di rete.
Distribuzione automatica delle credenziali di tabella
Le credenziali della tabella includono una stringa di token di accesso di breve durata e un URL della posizione di archiviazione cloud che il motore esterno può usare per accedere ai dati e ai metadati della tabella dal percorso di archiviazione cloud.
Tipi di accesso supportati
La distribuzione automatica delle credenziali di tabella supporta i tipi e le operazioni di tabella seguenti:
| Tipo di tabella | Leggi | Scrittura | Creazione |
|---|---|---|---|
| Delta Controllato | Sì | Sì* | Sì* |
| Delta esterno | Sì | Sì | Sì |
| Gestione di Iceberg | Sì | Sì | Sì |
| Delta con le letture Iceberg (UniForm) | Sì | Yes** | No |
* La creazione e la scrittura in tabelle gestite del Catalogo Unity dai client Delta sono in versione beta.
** Dopo la scrittura esterna in una tabella UniForm da un client Delta, eseguire MSCK REPAIR TABLE per generare metadati Iceberg.
Nota
Alcuni client supportano l'accesso alle tabelle supportate da Delta Lake, mentre altre richiedono l'abilitazione delle letture Iceberg (UniForm) nelle tabelle. Consulta Leggi le tabelle Delta con i client Iceberg.
Richiedere credenziali di tabella temporanee per l'accesso ai dati esterni
Il supporto per il distributore di credenziali varia in base al client esterno. Se supportato, il client deve sfruttare automaticamente le credenziali vendute quando viene configurata una connessione.
Questa sezione fornisce un esempio di chiamata esplicita dell'endpoint API di distribuzione delle credenziali. Alcuni client esterni potrebbero richiedere di impostare in modo esplicito le configurazioni per accedere ai dati e ai metadati nell'archivio oggetti cloud che esegue il backup delle tabelle di Unity Catalog. È possibile usare i valori restituiti dal distributore di credenziali per configurare l'accesso.
Nota
È possibile recuperare un elenco di tabelle che supportano la distribuzione delle credenziali richiamando l'API ListTables con l'opzione include_manifest_capabilities abilitata. Solo le tabelle contrassegnate HAS_DIRECT_EXTERNAL_ENGINE_READ_SUPPORT o HAS_DIRECT_EXTERNAL_ENGINE_WRITE_SUPPORT sono idonee per riferimento nell'API temporary-table-credentials. Vedere GET /api/2.1/unity-catalog/tables.
Nell'esempio curl seguente viene richiesta in modo esplicito una credenziale temporanea per l'accesso ai dati esterni. Questa richiesta deve essere completata da un responsabile dell'area di lavoro con privilegi sufficienti.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-table-credentials \
-d '{"table_id": "<string>", "operation": "<READ|READ_WRITE>"}'
Per informazioni dettagliate, vedere POST /api/2.1/unity-catalog/temporary-table-credentials nella guida di riferimento all'API REST Azure Databricks.
Limitazioni
Esistono le limitazioni seguenti:
- Non tutti i client esterni supportano la distribuzione automatica delle credenziali e il supporto può variare a seconda dell'archiviazione di oggetti cloud sottostante.
- Sono supportate solo le tabelle gestite di Unity e le tabelle esterne di Unity Catalog.
- Le tabelle abilitate per le letture di Iceberg condividono questo requisito. Consulta Leggi le tabelle Delta con i client Iceberg.
- I client di lettura Delta Lake possono leggere solo le tabelle supportate da Delta Lake e devono supportare tutti i protocolli di lettura o scrittura abilitati sulla tabella. Vedere Compatibilità e protocolli delle funzionalità delta Lake.
- Le tabelle esterne che non usano Delta Lake non forniscono garanzie transazionali.
- I tipi di tabella o le tabelle seguenti con funzionalità abilitate non sono supportati:
- Tabelle con filtri di riga o maschere di colonna.
- Tabelle condivise tramite la condivisione Delta.
- Tabelle federate esterne del lakehouse.
- Visualizzazioni.
- Viste materializzate.
- Tabelle di streaming delle pipeline dichiarative di Lakeflow Spark.
- Tabelle online.
- Indici di ricerca vettoriale.
- L'aggiornamento delle credenziali non è supportato in Iceberg 1.9.0. Usare la versione più recente di Iceberg per l'aggiornamento delle credenziali.
Erogazione automatica delle credenziali del percorso
Le credenziali rilasciate consentono l'accesso diretto alla posizione di archiviazione nel cloud, limitato al percorso pertinente. Sono validi per un periodo di tempo limitato e non concedono un accesso più ampio oltre la posizione o la tabella definita.
Richiedere credenziali di percorso temporaneo per l'accesso ai dati esterni
Il supporto per il distributore di credenziali varia in base al client esterno. Se supportato, il client deve sfruttare automaticamente le credenziali vendute quando viene configurata una connessione.
Questa sezione fornisce un esempio di chiamata esplicita dell'endpoint API di distribuzione delle credenziali. Alcuni client esterni potrebbero richiedere di impostare in modo esplicito le configurazioni per accedere ai dati e ai metadati nell'archivio oggetti cloud che esegue il backup delle tabelle di Unity Catalog. È possibile usare i valori restituiti dal distributore di credenziali per configurare l'accesso.
Nell'esempio curl seguente viene richiesta in modo esplicito una credenziale temporanea per l'accesso ai dati esterni. Questa richiesta deve essere completata da un responsabile dell'area di lavoro con privilegi sufficienti.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-path-credentials \
-d '{"url": "<string>", "operation": <PATH_READ|PATH_READ_WRITE|PATH_CREATE_TABLE>"}'
Per informazioni dettagliate, vedere Generare una credenziale di percorso temporaneo nella guida di riferimento all'API REST Azure Databricks.