Condividi tramite


Accedere ai dati di Databricks usando sistemi esterni

Questo articolo offre una panoramica delle funzionalità e delle raccomandazioni per rendere i dati gestiti e regolati da Azure Databricks disponibili per altri sistemi.

Questi modelli riguardano scenari in cui l'organizzazione deve integrare strumenti o sistemi attendibili ai dati di Azure Databricks. Per indicazioni sulla condivisione dei dati all'esterno dell'organizzazione, vedere Condividere i dati e gli asset di intelligenza artificiale in modo sicuro con gli utenti di altre organizzazioni.

Quale accesso esterno supporta Azure Databricks?

Azure Databricks consiglia di usare Unity Catalog per gestire tutti gli asset di dati.

La tabella seguente offre una panoramica dei formati di supporto e dei modelli di accesso per gli oggetti del catalogo Unity.

Oggetto di Catalogo Unity Formati supportati Modelli di accesso
Tabelle gestite Delta Lake, Iceberg Vendita di credenziali, catalogo REST di Iceberg, Delta Sharing
Tabelle esterne Delta Lake Fornitura di credenziali, catalogo REST di Iceberg, Condivisione Delta, URI cloud
Tabelle esterne CSV, JSON, Avro, Parquet, ORC, testo URI cloud
Volumi esterni Tutti i tipi di dati URI cloud

Nota

Il supporto Iceberg descrive le tabelle create da Azure Databricks utilizzando Delta Lake, ma con le letture Iceberg (UniForm) abilitate.

Per ulteriori dettagli su questi oggetti del Catalogo Unity, vedere quanto segue:

Distribuzione delle credenziali di Unity Catalog

Il distributore di credenziali di Unity Catalog consente agli utenti di configurare client esterni per ereditare privilegi sui dati regolati da Azure Databricks. Consultare la distribuzione delle credenziali del catalogo Unity per l'accesso al sistema esterno .

Con i client Iceberg, leggere le tabelle

Azure Databricks offre ai client Iceberg il supporto di sola lettura per le tabelle registrate in Unity Catalog. I client supportati includono Apache Spark, Apache Flink, Trino e Snowflake. Consulta le tabelle di Databricks dai client Iceberg.

Condividere tabelle di sola lettura tra domini

È possibile usare la condivisione Delta per concedere l'accesso in sola lettura alle tabelle Delta gestite o esterne tra domini e sistemi supportati. I sistemi software che supportano letture senza copia delle tabelle di condivisione delta includono SAP, Amperity e Oracle. Consulta Condividi i dati e gli asset di intelligenza artificiale in modo sicuro con gli utenti di altre organizzazioni.

Nota

È anche possibile usare la condivisione Delta per concedere l'accesso in sola lettura ai clienti o ai partner. La condivisione differenziale restituisce anche i dati condivisi usando Databricks Marketplace.

Leggere e scrivere tabelle Delta esterne

È possibile accedere alle tabelle esterne di Unity Catalog supportate da Delta Lake dai client esterni di lettura e scrittura Delta Lake usando URI di archiviazione degli oggetti cloud e credenziali.

Unity Catalog non regola le letture e le scritture eseguite direttamente nell'archiviazione di oggetti cloud da sistemi esterni, pertanto è necessario configurare criteri e credenziali aggiuntivi nell'account cloud per garantire che i criteri di governance dei dati vengano rispettati all'esterno di Azure Databricks.

Nota

La documentazione di Azure Databricks elenca le limitazioni e le considerazioni sulla compatibilità in base alle versioni di Databricks Runtime e alle funzionalità della piattaforma. È necessario confermare quali protocolli lettore e writer e quali funzionalità di tabella sono supportati dal client. Vedere delta.io.

Accedere a dati tabulari non Delta Lake con tabelle esterne

Le tabelle esterne del catalogo unity supportano molti formati diversi da Delta Lake, tra cui Parquet, ORC, CSV e JSON. Le tabelle esterne archiviano tutti i file di dati nelle directory in un percorso di archiviazione di oggetti cloud specificato da un URI cloud fornito durante la creazione della tabella. Altri sistemi accedono a questi file di dati direttamente dall'archiviazione di oggetti cloud.

Unity Catalog non regola le letture e le scritture eseguite direttamente nell'archiviazione di oggetti cloud da sistemi esterni, pertanto è necessario configurare criteri e credenziali aggiuntivi nell'account cloud per garantire che i criteri di governance dei dati vengano rispettati all'esterno di Azure Databricks.

La lettura e la scrittura in tabelle esterne da più sistemi possono causare problemi di coerenza e danneggiamento dei dati perché non vengono fornite garanzie transazionali per formati diversi da Delta Lake.

Il Catalogo Unity potrebbe non rilevare nuove partizioni scritte in tabelle esterne supportate da formati diversi da Delta Lake. Databricks consiglia di eseguire regolarmente MSCK REPAIR TABLE table_name per assicurarsi che Unity Catalog abbia registrato tutti i file di dati scritti da sistemi esterni.

Accedere a dati non tabulari con volumi esterni

Databricks consiglia di usare volumi esterni per archiviare file di dati non tabulari letti o scritti da sistemi esterni oltre ad Azure Databricks. Consulta Che cosa sono i volumi di Unity Catalog?.

Unity Catalog non regola le letture e le scritture eseguite direttamente nell'archiviazione di oggetti cloud da sistemi esterni, pertanto è necessario configurare criteri e credenziali aggiuntivi nell'account cloud per garantire che i criteri di governance dei dati vengano rispettati all'esterno di Azure Databricks.

Volumes offre API, SDK e altri strumenti per ottenere file da volumi e per inserirvi file. Consultare Gestione dei file nei volumi.

Nota

La Delta Sharing consente di condividere risorse con altri account di Azure Databricks, ma non si integra con sistemi esterni.