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.
Questa pagina presenta la condivisione delta in Azure Databricks, la piattaforma di condivisione dei dati sicura che consente di condividere i dati e gli asset di intelligenza artificiale in Azure Databricks con utenti esterni all'organizzazione, indipendentemente dal fatto che usino Azure Databricks. La condivisione delta è anche la base per Databricks Marketplace, un forum aperto per lo scambio di prodotti dati e Clean Rooms, un ambiente sicuro e di protezione della privacy in cui più parti possono collaborare sui dati aziendali sensibili.
Delta Sharing è disponibile anche come progetto open source che si può usare per condividere tabelle Delta da altre piattaforme.
Come funziona Delta Sharing?
La condivisione delta è un protocollo aperto sviluppato da Databricks per la condivisione sicura dei dati con altre organizzazioni indipendentemente dalle piattaforme di elaborazione usate.
Esistono tre modi per condividere i dati usando Delta Sharing:
Il protocollo di condivisione Databricks-to-Databricks, che consente di condividere i dati e gli asset di intelligenza artificiale dall'area di lavoro abilitata per Unity Catalog con utenti che hanno anche accesso a un'area di lavoro databricks abilitata per Unity Catalog.
Questo approccio usa il server Delta Sharing integrato in Azure Databricks. Supporta alcune funzionalità di condivisione Delta non supportate negli altri protocolli, tra cui la condivisione dei notebook, la condivisione dei volumi del Unity Catalog, la condivisione dei modelli di intelligenza artificiale del Unity Catalog, la governance dei dati del Unity Catalog, la revisione e il rilevamento dell'utilizzo per provider e destinatari. L'integrazione con Unity Catalog semplifica la configurazione e la governance sia per i provider che per i destinatari e migliora le prestazioni.
Il protocollo di condivisione aperta di Databricks, che consente di condividere dati tabulari gestiti in un'area di lavoro databricks abilitata per Unity Catalog con gli utenti in qualsiasi piattaforma di elaborazione.
Questo approccio usa il server di condivisione delta integrato in Azure Databricks ed è utile quando si gestiscono i dati usando Unity Catalog e si vuole condividerlo con gli utenti che non usano Databricks o non hanno accesso a un'area di lavoro di Databricks abilitata per Unity Catalog. L'integrazione con Unity Catalog sul lato provider semplifica la configurazione e la governance per i provider.
Vedere Condividere i dati usando il protocollo di condivisione Delta Sharing aperto.
Implementazione gestita dal cliente del server di condivisione Delta open source, che consente di condividere da qualsiasi piattaforma a qualsiasi piattaforma, indipendentemente dal fatto che Databricks o meno.
La documentazione di Azure Databricks non illustra le istruzioni per configurare il proprio server di Delta Sharing. Vedere github.com/delta-io/delta-sharing.
Condivisioni, fornitori e destinatari
I concetti principali alla base di Delta Sharing in Azure Databricks sono condivisioni, provider e destinatari.
Che cos'è una condivisione?
In Condivisione Delta una condivisione è una raccolta di sola lettura di tabelle e partizioni di tabella che un provider desidera condividere con uno o più destinatari. Se il destinatario usa un'area di lavoro databricks abilitata per Unity Catalog, è anche possibile includere file di notebook, visualizzazioni (incluse visualizzazioni dinamiche che limitano l'accesso a livello di riga e colonna), volumi del catalogo Unity e modelli di Catalogo Unity in una condivisione.
È possibile aggiungere o rimuovere tabelle, tabelle di streaming, tabelle Iceberg gestite, viste, viste materializzate, volumi, modelli e file di notebook da una condivisione in qualsiasi momento ed è possibile assegnare o revocare l'accesso di destinatari dati a una condivisione in qualsiasi momento.
In un'area di lavoro di Azure Databricks abilitata per Unity Catalog, una condivisione è un oggetto di sicurezza registrato in Unity Catalog. Se si rimuove una condivisione dal metastore del catalogo Unity, tutti i destinatari di tale condivisione perdono la possibilità di accedervi.
Consulta Creare e gestire condivisioni Delta.
Che cos'è un provider?
Un provider è un'entità che condivide i dati con un destinatario. Se si è un provider e si vuole sfruttare il server di condivisione Delta di Databricks predefinito e gestire condivisioni e destinatari usando Unity Catalog, è necessaria almeno un'area di lavoro di Azure Databricks abilitata per Unity Catalog. Non è necessario eseguire la migrazione di tutte le aree di lavoro esistenti a Unity Catalog. È sufficiente creare una nuova area di lavoro compatibile con Unity Catalog per le esigenze di condivisione Delta.
Se un destinatario si trova in un'area di lavoro Databricks abilitata per Unity Catalog, il provider è anche un oggetto sicuro di Unity Catalog che rappresenta l'organizzazione del provider e associa l'organizzazione con il set di condivisioni.
Che cos'è un destinatario?
Un destinatario è un'entità che riceve azioni da un provider. In Unity Catalog, una condivisione è un oggetto proteggibile che rappresenta un'organizzazione e lo associa a una credenziale o a un identificatore di condivisione sicura che consente all'organizzazione di accedere a una o più condivisioni.
In qualità di provider di dati (condivisore), è possibile definire più destinatari per qualsiasi metastore di Unity Catalog, ma se si desidera condividere dati da più metastore con un determinato utente o gruppo di utenti, è necessario definire il destinatario separatamente per ogni metastore. Un destinatario può avere accesso a più condivisioni.
Se un provider elimina un destinatario dal loro metastore di Unity Catalog, il destinatario perde l'accesso a tutte le condivisioni a cui poteva accedere in precedenza.
Consulta Creare e gestire i destinatari dei dati per Delta Sharing (condivisione da Databricks a Databricks).
Condivisione aperta contro condivisione da Databricks a Databricks
Questa sezione descrive i due protocolli per la condivisione da un'area di lavoro di Databricks abilitata per Unity Catalog.
Nota
Questa sezione presuppone che il provider si trova in un'area di lavoro di Azure Databricks abilitata per Unity Catalog. Per informazioni sulla configurazione di un server di condivisione Delta open source da condividere da una piattaforma non Databricks o da un'area di lavoro non Unity Catalog, vedere github.com/delta-io/delta-sharing.
Il modo in cui un provider usa Delta Sharing in Azure Databricks dipende dall'utente con cui condividono i dati:
- La condivisione aperta consente di condividere i dati con qualsiasi utente, indipendentemente dal fatto che abbiano o meno accesso ad Azure Databricks.
- La condivisione da Databricks a Databricks consente di condividere dati con gli utenti di Azure Databricks la cui area di lavoro è collegata a un metastore di Unity Catalog diverso da quello dell'utente. La condivisione Databricks-a-Databricks supporta anche la condivisione di notebook, volumi e modelli, una caratteristica non disponibile nella condivisione aperta.
Che cos'è Open Delta Sharing?
Se si vogliono condividere dati con utenti esterni all'area di lavoro di Azure Databricks, indipendentemente dal fatto che usino Databricks, è possibile usare Delta Sharing aperta per condividere i dati in modo sicuro. I provider di dati gestiscono l'autenticazione con il destinatario di condivisione usando uno dei metodi seguenti:
- Si genera un token di connessione di lunga durata e lo si condivide in modo sicuro con il destinatario. Usano il token per autenticarsi e ottenere accesso in lettura alle tabelle che hai incluso nelle condivisioni a cui hai dato loro accesso.
- Si usa la federazione OIDC (Open ID Connect), concedendo token OAuth di Databricks di breve durata al destinatario in cambio di token JWT passati dal provider di identità del destinatario a Databricks.
I destinatari possono accedere ai dati condivisi usando molti strumenti di calcolo e piattaforme, tra cui:
- Azure Databricks
- Apache Spark
- Panda
- Power BI
Per un elenco completo dei connettori di condivisione delta e informazioni su come usarli, vedere la documentazione relativa alla condivisione delta .
Vedere anche Condividere i dati usando il protocollo open di condivisione Delta Sharing (per i provider).
Che cos'è il Delta Sharing tra Databricks?
Se si vogliono condividere dati con gli utenti che hanno un'area di lavoro di Databricks abilitata per Unity Catalog, è possibile usare la condivisione delta da Databricks a Databricks. La condivisione da Databricks a Databricks consente di condividere dati con gli utenti in altri account Databricks, sia che si trovino in AWS, Azure o GCP. È anche un ottimo modo per condividere in modo sicuro i dati tra diversi metastore di Unity Catalog nel proprio account Databricks. Si noti che non è necessario usare la condivisione delta per condividere i dati tra aree di lavoro collegate allo stesso metastore del catalogo Unity, perché in questo scenario è possibile usare Il catalogo Unity stesso per gestire l'accesso ai dati tra aree di lavoro.
Uno dei vantaggi della condivisione da Databricks a Databricks è che il destinatario della condivisione non necessita di un token per accedere alla condivisione e il provider non deve gestire i token dei destinatari. La sicurezza della connessione di condivisione, inclusi verifica dell'identità, autenticazione e controllo, viene gestita interamente tramite Delta Sharing e la piattaforma Databricks. Un altro vantaggio è la possibilità di condividere file di notebook di Databricks, visualizzazioni, volumi del Catalogo Unity e modelli del Catalogo Unity.
Per i provider, vedere anche Condividere i dati usando il protocollo Databricks-to-Databricks (per i provider).
In che modo gli amministratori del provider configurano la condivisione Delta?
Questa sezione offre una panoramica del modo in cui i provider possono abilitare la Condivisione Delta e avviare la condivisione da un'area di lavoro di Azure Databricks con Unity Catalog abilitato. Per la condivisione delta open source, vedere github.com/delta-io/delta-sharing.
La condivisione dei dati da Databricks a Databricks tra i metastore di Unity Catalog nello stesso account è sempre abilitata. Se si è un provider che vuole abilitare Delta Sharing per condividere dati con le aree di lavoro di Databricks in altri account o client non Databricks, un amministratore dell'account Azure Databricks o un amministratore del metastore esegue i passaggi di configurazione seguenti (a livello generale):
Abilitare Delta Sharing per il metastore di Unity Catalog che gestisce i dati che si desidera condividere.
Nota
Non è necessario abilitare la condivisione Delta nel metastore se si intende usare la condivisione Delta per condividere i dati solo con gli utenti di altri metastore di Unity Catalog nell'account. La condivisione da metastore a metastore all'interno di un singolo account Azure Databricks è abilitata per impostazione predefinita.
Creare una condivisione che includa gli asset di dati registrati nel metastore di Unity Catalog.
Se si condivide con un destinatario esterno a Databricks (noto come condivisione aperta) è possibile includere tabelle nei formati Delta o Parquet. Se si prevede di usare la condivisione da Databricks a Databricks, è anche possibile aggiungere visualizzazioni, volumi del catalogo Unity, modelli di Catalogo Unity e file di notebook a una condivisione.
Consulta Creare e gestire condivisioni Delta.
Creare un destinatario.
Consulta Creare e gestire i destinatari dei dati per Delta Sharing (condivisione da Databricks a Databricks).
Se il destinatario non è un utente di Databricks o non ha accesso a un'area di lavoro di Databricks abilitata per Unity Catalog, è necessario usare la condivisione aperta. È possibile generare credenziali basate su bearer-token per il destinatario o usare la federazione OIDC.
Se il destinatario ha accesso a un'area di lavoro di Databricks abilitata per Unity Catalog, è possibile usare la condivisione da Databricks a Databricks e non sono necessarie credenziali basate su token. È necessario richiedere un identificatore di condivisione dal destinatario e usarlo per stabilire la connessione sicura.
Suggerimento
Usare se stessi come destinatario di prova per provare il processo di configurazione.
Concedi al destinatario l'accesso a una o più condivisioni.
Vedi Gestire l'accesso alle condivisioni dei dati Delta Sharing (per i provider).
Nota
Questo passaggio può essere eseguito anche da un utente non amministratore con privilegi
USE SHARE
,USE RECIPIENT
eSET SHARE PERMISSION
. Consulta Privilegi del Catalogo Unity e oggetti proteggibili.Inviare al destinatario le informazioni necessarie per connettersi alla condivisione (soltanto condivisione aperta).
Per la condivisione aperta usando token di portatore, invii un collegamento di attivazione al destinatario tramite un canale sicuro che consenta loro di scaricare le credenziali basate su token. Vedere Inviare al destinatario le informazioni di connessione.
Per la condivisione aperta con la federazione di token OIDC, inviare l'URL del portale generato. Usare la federazione OIDC (Open ID Connect) per abilitare l'autenticazione per le condivisioni Delta Sharing (open sharing), vedere .
Per la condivisione da Databricks a Databricks, i dati inclusi nella condivisione diventano disponibili nell'area di lavoro Databricks del destinatario non appena si concede loro l'accesso alla condivisione.
Ora, il destinatario può accedere ai dati condivisi.
In che modo i destinatari accedono ai dati condivisi?
I destinatari accedono agli asset di dati condivisi in formato di sola lettura. I file di notebook condivisi sono di sola lettura, ma possono essere clonati e quindi modificati ed eseguiti nell'area di lavoro del destinatario esattamente come qualsiasi altro notebook.
L'accesso sicuro dipende dal modello di condivisione:
La condivisione aperta (il destinatario non dispone di un'area di lavoro databricks abilitata per Unity Catalog) include due opzioni:
- Nel flusso del token di portatore, il destinatario fornisce le credenziali ogni volta che accede ai dati nel proprio strumento preferito, tra cui Apache Spark, pandas, Power BI, Databricks e molti altri. Per i destinatari, consulta Leggere i dati condivisi utilizzando Delta Sharing con condivisione aperta tramite token di connessione.
- Nel flusso di federazione del token OIDC, il destinatario o l'app client del destinatario accede ai dati usando il proprio IdP. Vedere Ricevere le condivisioni Delta Sharing usando la federazione OIDC (Open ID Connect) in un flusso da utente a computer (condivisione aperta) e Ricevere le condivisioni Delta Sharing con un client Python e una federazione OIDC (Open ID Connect) in un flusso da computer a computer (condivisione aperta).
Databricks-to-Databricks (l'area di lavoro del ricevente è attivata per Unity Catalog): il ricevente accede ai dati usando Databricks. Possono usare Unity Catalog per concedere e negare l'accesso ad altri utenti nell'account Databricks. Vedere Leggere i dati condivisi utilizzando Databricks-to-Databricks Delta Sharing (per i destinatari).
Ogni volta che il provider di dati aggiorna tabelle dati o volumi nel proprio account Databricks, gli aggiornamenti vengono visualizzati quasi in tempo reale nel sistema del destinatario. Per informazioni su come accedere ai dati condivisi con l'utente usando la condivisione Delta, vedere Accedere ai dati condivisi con l'utente usando la condivisione delta (per i destinatari).
Come si tiene traccia di chi condivide e accede ai dati condivisi?
I fornitori di dati negli spazi di lavoro di Azure Databricks con Unity Catalog abilitato possono utilizzare la registrazione di controllo e le tabelle di sistema di Azure Databricks per monitorare la creazione e la modifica delle condivisioni e dei destinatari e possono monitorare l'attività dei destinatari sulle condivisioni. Vedere Controllare e monitorare la condivisione dei dati.
I destinatari dei dati che usano dati condivisi in un'area di lavoro di Databricks possono usare la registrazione di controllo e le tabelle di sistema di Databricks per comprendere chi accede ai dati. Vedere Controllare e monitorare la condivisione dei dati.
Condivisione di volumi
È possibile condividere i volumi attraverso il flusso di condivisione Databricks-to-Databricks. Vedere Aggiungere volumi a una condivisione (per i provider) e Leggere i dati condivisi con Databricks-to-Databricks Delta Sharing (per i destinatari).
Condivisione di modelli
È possibile condividere modelli usando il flusso di condivisione da Databricks a Databricks. Vedere Aggiungere modelli a una condivisione (per i provider) e Leggere i dati condivisi con Databricks-to-Databricks Delta Sharing (per i destinatari).
Condivisione di notebook
È possibile usare Delta Sharing per condividere file di notebook usando il flusso di condivisione da Databricks a Databricks. Vedere Aggiungere file di notebook a una condivisione (per i provider) e Leggere notebook condivisi (per i destinatari).
Limitazione dell'accesso a livello di riga e colonna
È possibile condividere visualizzazioni dinamiche che limitano l'accesso a determinati dati di tabella in base alle proprietà del destinatario. La condivisione dinamica della visualizzazione richiede il flusso di condivisione da Databricks a Databricks. Vedere Aggiungere visualizzazioni dinamiche a una condivisione per filtrare righe e colonne.
Delta Sharing e streaming
La condivisione delta supporta Apache Spark Structured Streaming. Un provider può condividere una tabella con la cronologia o una tabella di streaming in modo che un destinatario possa usarla come origine Structured Streaming, elaborando i dati condivisi in modo incrementale con bassa latenza. I destinatari possono anche eseguire query di spostamento cronologico Delta Lake sulle tabelle condivise con la cronologia.
Per informazioni su come condividere tabelle con la cronologia, vedere Aggiungere tabelle a una condivisione. Per informazioni su come usare tabelle condivise come origini di streaming, vedere Eseguire query su una tabella usando Apache Spark Structured Streaming (per i destinatari della condivisione da Databricks a Databricks) o Accedere a una tabella condivisa usando Spark Structured Streaming (per i destinatari dei dati di condivisione aperta).
Per informazioni su come condividere tabelle di streaming, vedere Aggiungere tabelle di streaming a una condivisione.
Vedere anche Concetti di Structured Streaming.
Matrice di supporto delle funzionalità Delta Lake
La condivisione Delta supporta la maggior parte delle funzionalità di Delta Lake quando si condivide una tabella. Questa matrice di supporto elenca:
- Funzionalità delta che richiedono versioni specifiche di Databricks Runtime, il connettore Spark per Delta Sharing in open source o il connettore Python per Delta Sharing in open source.
- Funzionalità parzialmente supportate.
Funzionalità | Fornitore | Destinatario di Databricks | Destinatario di open source |
---|---|---|---|
Vettori di eliminazione |
|
|
|
Mappatura delle colonne |
|
|
|
Formato Uniform |
|
|
|
Checkpoint V2 | Supportato con limitazioni | Supportato con limitazioni | Supportato con limitazioni |
TimestampNTZ | Supportato | Databricks Runtime 14.1+ | Connettore Spark di Delta Sharing 3.3+ |
Raggruppamento liquido | Supportato con limitazioni | Supportato con limitazioni | Supportato con limitazioni |
Domande frequenti su Delta Sharing
Di seguito sono riportate le domande frequenti su Delta Sharing.
Ho bisogno di Unity Catalog per usare Delta Sharing?
No, non è necessario che Unity Catalog condivida (come provider) o consumi dati condivisi (come destinatario). Tuttavia, Unity Catalog offre vantaggi come il supporto per la condivisione di asset non tabulari e di asset di intelligenza artificiale, una governance pronta all'uso, la semplicità e le prestazioni delle query.
I provider possono condividere i dati in due modi:
Inserire gli asset da condividere sotto la gestione del Unity Catalog e condividerli usando il server integrato Azure Databricks Delta Sharing.
Non è necessario eseguire la migrazione di tutti gli asset al catalogo Unity. È necessaria una sola area di lavoro di Azure Databricks abilitata per Unity Catalog per gestire gli asset da condividere. In alcuni account, le nuove aree di lavoro vengono abilitate automaticamente per Il catalogo Unity. Vedere Abilitazione automatica del catalogo Unity.
Implementare il server di condivisione Delta aperto per condividere i dati, senza necessariamente usare l'account Azure Databricks.
I destinatari possono utilizzare i dati in due modi:
Senza un'area di lavoro di Databricks. Usare connettori open source Delta Sharing disponibili per molte piattaforme dati, tra cui Power BI, Pandas e Apache Spark open source. Vedere Leggere i dati condivisi utilizzando Delta Sharing e la condivisione aperta con token di connessione (per i destinatari) e il progetto open source Delta Sharing.
In un'area di lavoro di Databricks. Le aree di lavoro dei destinatari non necessitano di essere abilitate per il Catalogo Unity, ma esistono vantaggi in termini di governance, semplicità e prestazioni se lo sono.
Le organizzazioni destinatari che vogliono questi vantaggi non devono eseguire la migrazione di tutti gli asset al catalogo Unity. È necessaria una sola area di lavoro di Azure Databricks abilitata per unity Catalog per gestire gli asset condivisi con l'utente. In alcuni account, le nuove aree di lavoro vengono abilitate automaticamente per Il catalogo Unity. Vedere Abilitazione automatica del catalogo Unity.
Vedere Leggere i dati condivisi usando la condivisione Delta aperta con token di connessione (per i destinatari) e Leggere i dati condivisi usando la condivisione Delta di Databricks a Databricks (per i destinatari).
È necessario essere un cliente di Databricks per usare Delta Sharing?
No, Delta Sharing è un protocollo aperto. È possibile condividere dati non Databricks con destinatari in qualsiasi piattaforma dati. I provider possono configurare un server di condivisione Delta aperto da condividere da qualsiasi piattaforma di elaborazione. I destinatari possono usare dati condivisi usando connettori open source di condivisione Delta per molti prodotti dati, tra cui Power BI, pandas e Spark open source.
Tuttavia, l'uso della condivisione delta in Azure Databricks, in particolare la condivisione da un'area di lavoro abilitata per Unity Catalog, presenta molti vantaggi.
Per dettagli, vedere la prima domanda in queste domande frequenti.
Come posso incorrere e controllare i costi di Delta Sharing?
Il costo della condivisione Delta si manifesta quando si condividono e si accedono alle visualizzazioni, alle visualizzazioni materializzate e alle tabelle di streaming. Esistono due potenziali fonti di costi per la condivisione:
- Costo di calcolo, addebitato da Azure Databricks.
- Costi di archiviazione e trasferimento di rete (in uscita), addebitati dal fornitore di archiviazione.
Il metodo in base al quale viene eseguito il calcolo e chi ne paga dipende da diversi fattori:
- Tipo di computazione del destinatario
- Se la condivisione si verifica all'interno dello stesso account Azure Databricks o tra account
La tabella seguente descrive il metodo di fatturazione per la condivisione e l'accesso alle visualizzazioni tramite la condivisione Delta:
Calcolo destinatario | Relazione tra account | Chi paga | SKU usato per la fatturazione | Metodo di accesso |
---|---|---|---|---|
Databricks Serverless (ambiente senza server) | Qualunque | Destinatario | Serverless del destinatario | Il destinatario riceve l'accesso diretto ai dati sottostanti |
Databricks Classico | Stesso account | Destinatario | Un classico per il destinatario | Il destinatario riceve l'accesso diretto ai dati sottostanti |
Databricks Classico | Account diverso | Destinatario | Serverless del provider interattivo | Il provider esegue il filtro |
Aprire i connettori di condivisione Delta | Qualunque | Fornitore | Serverless del provider interattivo | Il provider esegue il filtro |
L'attribuzione della fatturazione può essere interrogata utilizzando il riferimento alla tabella di sistema per l'utilizzo fatturabile e il riferimento alla tabella di sistema per la cronologia di materializzazione di Delta Sharing. Se il destinatario paga per l'attribuzione, solo il destinatario può visualizzare il record associato nella tabella di sistema. Per le query di esempio, vedere Query di esempio.
La condivisione Delta comporta dei costi di uscita?
Delta Sharing all'interno di un'area non comporta alcun costo in uscita. A differenza di altre piattaforme di condivisione dati, Delta Sharing non richiede la replica dei dati. Questo modello presenta molti vantaggi, ma significa che il fornitore del cloud può addebitare costi di uscita ai dati quando si condividono i dati tra cloud o aree. Azure Databricks supporta la condivisione da Cloudflare R2, che non comporta costi in uscita e fornisce altri strumenti e raccomandazioni per monitorare ed evitare costi in uscita. Consulta Monitorare e gestire i costi di uscita della Condivisione Delta (per i provider).
I destinatari hanno accesso diretto ai dati sottostanti in viste condivise, viste materializzate e tabelle di streaming?
Il destinatario dei dati ha accesso diretto solo alle viste condivise, alle viste materializzate e alle tabelle di streaming se si trovano nello stesso account di Azure Databricks o se usano risorse di calcolo serverless da un account diverso. In caso contrario, i dati vengono convertiti in forma fisica e filtrati sul lato provider. La materializzazione dei dati viene archiviata nella posizione di archiviazione principale dell'asset di dati condiviso.
Quando si condividono risorse materializzate, l'elaborazione gestisce la richiesta applicando i filtri necessari e creando una cache di materializzazione temporanea nella memoria di archiviazione del provider. Questi dati filtrati vengono recapitati ai destinatari usando URL di breve durata prefirmati, garantendo l'accesso sicuro mantenendo al tempo stesso il controllo di accesso da provider a destinatario.
I provider possono revocare l'accesso ai destinatari?
Sì, l'accesso ai destinatari può essere revocato su richiesta e a livelli di granularità specificati. È possibile negare l'accesso dei destinatari a condivisioni specifiche e indirizzi IP specifici, filtrare i dati tabulari per un destinatario, revocare i token dei destinatari ed eliminare completamente i destinatari. Vedere Revocare l'accesso dei destinatari a una condivisione e Creare e gestire i destinatari dei dati per la condivisione delta (condivisione da Databricks a Databricks).
Non è sicuro usare URL prefirmato?
Delta Sharing usa URL prefirmati per fornire l'accesso temporaneo a un file nell'archivio oggetti. Vengono assegnati solo ai destinatari che hanno già accesso ai dati condivisi. Sono sicuri perché sono di breve durata e non espandono il livello di accesso oltre a ciò che i destinatari sono già stati concessi.
I token che vengono usati nel protocollo di condivisione aperta di Delta Sharing sono sicuri?
Poiché Delta Sharing abilita la condivisione multipiattaforma, a differenza di altre piattaforme di condivisione dei dati disponibili, il protocollo di condivisione richiede un token aperto. I provider possono garantire la sicurezza dei token configurando la durata del token, impostando i controlli di rete e revocando l'accesso su richiesta. Inoltre, il token non espande il livello di accesso oltre quello che i destinatari hanno già ricevuto. Vedere Considerazioni sulla sicurezza per i token.
Se preferisci non usare i token per gestire l'accesso alle condivisioni ai destinatari, dovresti usare la condivisione da Databricks a Databricks o contattare il team dell'account Databricks per discutere delle alternative.
Qual è la differenza tra Lakeflow Connect e Delta Sharing?
Delta Sharing consente di condividere in modo sicuro i dati live tra piattaforme, cloud e regioni. Databricks consiglia l'inserimento usando connettori gestiti perché vengono ridimensionati per supportare volumi di dati elevati, query a bassa latenza e limiti delle API di terze parti. Tuttavia, è possibile eseguire query sui dati senza spostarli.
Quando si ha una scelta tra connettori gestiti e condivisione delta, scegliere Condivisione delta per gli scenari seguenti:
- Limitazione della duplicazione dei dati.
- Esecuzione di query sui dati più aggiornati possibili.
Limitazioni
- I dati tabulari devono essere nel formato di tabella Delta . È possibile convertire facilmente le tabelle Parquet in Delta e viceversa. Vedi CONVERT TO DELTA.
- I provider non possono condividere tabelle che utilizzano il liquid clustering e il checkpoint V2 con il filtraggio delle partizioni.
- I provider non possono condividere tabelle R2 con clustering liquido e checkpoint V2.
- I vincoli di tabella (vincoli di chiave primaria ed esterna) non sono disponibili nelle tabelle condivise.
- Le viste condivisibili devono essere definite in tabelle Delta o in altre viste condivisibili. Vedere Aggiungere visualizzazioni a una condivisione (per i provider) e Leggere le visualizzazioni condivise (per i destinatari).
- La condivisione dei notebook è supportata soltanto nella condivisione da Databricks a Databricks. Per i destinatari, vedere Aggiungere file di notebook a una condivisione e leggere i dati condivisi con Databricks-to-Databricks Delta Sharing (per i destinatari).
- La condivisione dei volumi è supportata solo nello sharing da Databricks a Databricks. Vedere Aggiungere volumi a una condivisione (per i provider) e Leggere i dati condivisi con Databricks-to-Databricks Delta Sharing (per i destinatari).
- La condivisione dei modelli è supportata solo nella condivisione da Databricks a Databricks. Vedere Aggiungere modelli a una condivisione (per i provider) e Leggere i dati condivisi con Databricks-to-Databricks Delta Sharing (per i destinatari).
- Esistono limiti al numero di file nei metadati consentiti per una tabella condivisa. Per altre informazioni, vedere Errori di superamento del limite di risorse.
- Gli schemi denominati
information_schema
non possono essere importati in un metastore del catalogo Unity, perché tale nome dello schema è riservato nel catalogo unity. - La condivisione delle tabelle
SHALLOW CLONE
non è supportata da Delta Sharing. Azure Databricks non supporta gli URL di prefirma per i log Delta che fanno riferimento a percorsi assoluti. - La condivisione di tabelle con regole di confronto abilitate non è supportata da Delta Sharing.
- La condivisione differenziale può leggere solo le tabelle UniForm come tabelle Delta.
- Delta Sharing non supporta la condivisione per i client lettori di Apache Iceberg.
Vedere anche Matrice di supporto delle funzionalità delta Lake.
Quote di risorse
Azure Databricks applica le quote di risorse in tutti gli oggetti a protezione diretta di Delta Sharing. Queste quote sono elencate in Limiti delle risorse. Se si prevede di superare questi limiti di risorse, contattare il team dell'account Azure Databricks.
È possibile monitorare l'utilizzo delle quote usando le API delle quote delle risorse di Unity Catalog. Consulta Monitoraggio dell'utilizzo delle quote delle risorse di Unity Catalog.
Passaggi successivi
- Abilitare l'account Databricks per la condivisione Delta
- Creare condivisioni
- Creare destinatari
- Altre informazioni sulla condivisione aperta e sui modelli di condivisione da Databricks a Databricks
- Informazioni su come i destinatari accedono ai dati condivisi