Condividi tramite


Creare e gestire condivisioni per la condivisione Delta

Questa pagina illustra come creare e gestire condivisioni per la condivisione Delta.

Una condivisione è un oggetto sicuro in Unity Catalog utilizzato per la condivisione delle seguenti risorse di dati con uno o più destinatari:

  • Tabelle e partizioni di tabella
  • Tabelle di streaming
  • Tabelle Iceberg gestite
  • Schemi e tabelle esterne
  • Visualizzazioni, incluse le visualizzazioni dinamiche che limitano l'accesso a livello di riga e colonna
  • Viste materializzate
  • Volumes
  • Notebooks
  • Modelli di intelligenza artificiale

Se si condivide un intero schema (database), il destinatario può accedere a tutte le tabelle, le tabelle di streaming, le viste, le viste materializzate, i modelli e i volumi nello schema al momento in cui vengono condivisi, insieme a tutti gli asset di dati e intelligenza artificiale aggiunti allo schema in futuro.

Una condivisione può contenere dati e asset di intelligenza artificiale da un solo metastore di Unity Catalog. È possibile aggiungere o rimuovere i dati e gli asset di intelligenza artificiale da una condivisione in qualsiasi momento.

Prima di creare una condivisione, verificare di avere configurato la condivisione Delta per l'account (per i provider).

Per altre informazioni sul modello di condivisione, vedere Condivisioni, provider e destinatari.

Requirements

Verificare di soddisfare i requisiti elencati per ogni attività che si vuole completare.

Suggerimento

Quando si aggiungono asset di dati a una condivisione, Databricks consiglia di usare un gruppo come proprietario della condivisione.

Task Requirements
Creare una condivisione
  • Essere un amministratore del metastore o avere il CREATE SHARE privilegio per il metastore di Unity Catalog in cui sono registrati i dati da condividere.
  • Creare la condivisione usando un'area di lavoro di Azure Databricks con il metastore di Unity Catalog collegato.
Aggiungere quanto segue a una condivisione:
  • Tables
  • Tabelle di streaming
  • Tabelle Iceberg gestite
  • Tabelle esterne
  • Views
  • Viste materializzate
  • Diventa l'azionista.
  • Avere i privilegi USE CATALOG e USE SCHEMA sul catalogo e sullo schema che contengono l'asset di dati.
  • Disporre del SELECT privilegio per l'asset di dati. È necessario mantenere tale privilegio affinché l'asset continui a essere condiviso. Se si perde tale privilegio, il destinatario non può accedere all'asset tramite la condivisione.
Condividere un intero schema o uno schema esterno
  • Essere il proprietario della condivisione e dello schema, oppure disporre di USE SCHEMA.
  • Disponi SELECT sullo schema per condividere le tabelle.
  • Avere READ VOLUME nello schema per condividere volumi.
Aggiungere volumi a una condivisione
  • Diventa l'azionista.
  • Avere i privilegi USE CATALOG e USE SCHEMA sul catalogo e sullo schema che contengono il volume, o essere proprietari del catalogo o dello schema.
  • Disporre del READ VOLUME privilegio per il volume. È necessario mantenere tale privilegio affinché il volume continui a essere condiviso. Se lo perdi, il destinatario non può accedere al volume tramite la condivisione.
Aggiungere UDF Python a una condivisione
  • Diventa l'azionista.
  • Disporre del privilegio USE CATALOG e USE SCHEMA sul catalogo e sullo schema che contengono la funzione definita dall'utente Python, o possedere la proprietà del catalogo o dello schema.
  • Avere il privilegio EXECUTE sulla UDF di Python. È necessario mantenere tale privilegio affinché la Python UDF continui a essere condivisa. Se lo perdi, il destinatario non può accedere alla funzione definita dall'utente Python tramite la condivisione.
Aggiungere modelli a una condivisione
  • Diventa l'azionista.
  • Avere il privilegio USE CATALOG e USE SCHEMA sul catalogo e sullo schema che contengono il modello, o essere proprietario del catalogo o dello schema.
  • Avere il EXECUTE privilegio sul modello. È necessario mantenere tale privilegio affinché il modello continui a essere condiviso. Se lo perdi, il destinatario non può accedere al modello attraverso la condivisione.
Aggiungere file di notebook a una condivisione
  • Essere il proprietario della condivisione, con l'autorizzazione CAN READ per il notebook.
Concedere ai destinatari l'accesso a una condivisione
  • Essere un amministratore del metastore. ALTRIMENTI
  • Essere un utente con autorizzazioni delegate o proprietà sia per la condivisione che per gli oggetti destinatario, il che significa che l'utente deve soddisfare entrambi i requisiti seguenti:
    • Avere i privilegi di USE SHARE o di SET SHARE PERMISSION O essere il proprietario della condivisione
    • Disporre USE RECIPIENT del privilegio OPPURE essere il proprietario del destinatario
Visualizzare le condivisioni
  • Essere amministratore del metastore (possono visualizzare tutto). OR
  • Essere un utente con il USE SHARE privilegio (può visualizzare tutti). OR
  • Essere il proprietario dell'oggetto di condivisione.
Aggiornare il proprietario della condivisione
  • Essere un amministratore del metastore.
Aggiornare il nome della condivisione
  • Avere il CREATE SHARE privilegio .
  • Diventa l'azionista.
Aggiornare altre proprietà di condivisione
  • Diventa l'azionista.
Eliminare condivisioni
  • Essere il proprietario dell'oggetto di condivisione.

Requisiti di calcolo

  • Se si usa un notebook di Databricks per creare la condivisione, la risorsa di calcolo deve usare Databricks Runtime 11.3 LTS o versione successiva e avere una modalità di accesso standard o dedicata (in precedenza condivisa e utente singolo).
  • Se si usano istruzioni SQL per aggiungere uno schema a una condivisione (o aggiornare o rimuovere uno schema), è necessario usare un'istanza di SQL Warehouse o un calcolo che esegue Databricks Runtime 13.3 LTS o versione successiva. Per eseguire la stessa operazione con Esplora Catalog non sono previsti requisiti di calcolo.

Creare un oggetto di condivisione

Verificare di soddisfare i requisiti prima di creare un oggetto di condivisione.

Per creare una condivisione, usa Catalog Explorer, l'interfaccia della riga di comando del Databricks Unity Catalog o il comando SQL CREATE SHARE in un notebook Azure Databricks o nell'editor di query SQL di Databricks.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me fare clic sul pulsante Condividi dati .

  4. Nella pagina Crea condivisione immettere il nome della condivisione e un commento facoltativo.

  5. Fare clic su Salva e continua.

    È possibile continuare ad aggiungere asset di dati oppure fermarsi e tornare in un secondo momento.

  6. Nella scheda Aggiungi asset di dati selezionare gli asset di dati da condividere.

    Per istruzioni dettagliate, requisiti aggiuntivi e limitazioni correlate, vedere:

  7. Fare clic su Salva e continua.

  8. Nella scheda Aggiungi notebook selezionare i notebook da condividere.

    Per istruzioni dettagliate, vedere Aggiungere file di notebook a una condivisione.

  9. Fare clic su Salva e continua.

  10. Nella scheda Aggiungi destinatari selezionare i destinatari con cui si vuole condividere.

    Per istruzioni dettagliate, vedere Gestire l'accesso alle condivisioni dati di Delta Sharing (per i provider).

  11. Fare clic su Condividi dati per condividere i dati con i destinatari.

SQL

Eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks:

CREATE SHARE [IF NOT EXISTS] <share-name>
[COMMENT "<comment>"];

È ora possibile aggiungere tabelle, tabelle di streaming, volumi, viste, viste materializzate e modelli alla condivisione.

Per istruzioni dettagliate, requisiti aggiuntivi e limitazioni correlate, vedere:

CLI

Eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks.

databricks shares create <share-name>

È possibile usare --comment per aggiungere un commento o --json per aggiungere asset alla condivisione. Per informazioni dettagliate, vedere le sezioni seguenti.

È ora possibile aggiungere tabelle, tabelle di streaming, volumi, viste, viste materializzate e modelli alla condivisione.

Per istruzioni dettagliate, requisiti aggiuntivi e limitazioni correlate, vedere:

Aggiungere tabelle a una condivisione

Verificare di soddisfare i requisiti prima di aggiungere tabelle a una condivisione.

Se si è un amministratore dell'area di lavoro e si sono ereditate le USE SCHEMA autorizzazioni e USE CATALOG per lo schema e il catalogo che contengono la tabella dal gruppo di amministrazione dell'area di lavoro, non è possibile aggiungere la tabella a una condivisione. È necessario prima concedere a se stessi le autorizzazioni USE SCHEMA e le USE CATALOG per lo schema e il catalogo.

Note

I commenti delle tabelle, i commenti di colonna e i vincoli di chiave primaria sono inclusi nelle condivisioni con un destinatario utilizzando la condivisione da Databricks a Databricks a partire dal 25 luglio 2024. Se si desidera iniziare a condividere commenti e vincoli tramite una condivisione condivisa con un destinatario prima della data di rilascio, è necessario revocare e concedere di nuovo l'accesso del destinatario per attivare la condivisione di commenti e vincoli.

Per aggiungere tabelle a una condivisione, usare Esplora cataloghi, la CLI di Unity Catalog di Databricks o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi dall'utente corrente individuare la condivisione a cui si vuole aggiungere una tabella e fare clic sul relativo nome.

  4. Fare clic su Gestisci asset > Aggiungi asset di dati.

  5. Nella pagina Aggiungi tabelle selezionare un intero schema (database) o singole tabelle.

    • Per selezionare una tabella o una vista, selezionare prima il catalogo, quindi lo schema che contiene la tabella, quindi la tabella o la vista stessa.

      È possibile cercare tabelle in base al nome, al nome della colonna o al commento usando la ricerca nell'area di lavoro. Vedere Cercare oggetti dell'area di lavoro.

    • Per selezionare uno schema, selezionare prima il catalogo e quindi lo schema.

      Per informazioni dettagliate sulla condivisione degli schemi, vedere Aggiungere schemi a una condivisione.

  6. Cronologia: condividere la cronologia delle tabelle per consentire ai destinatari di eseguire query di spostamento del tempo o leggere la tabella con Spark Structured Streaming. Per le condivisioni da Databricks a Databricks, viene condiviso anche il log Delta della tabella per migliorare le prestazioni. Vedere Migliorare le prestazioni di lettura della tabella con la condivisione della cronologia. La condivisione della cronologia richiede Databricks Runtime 12.2 LTS o versione successiva.

    Note

    Se si vuole anche che i clienti possano eseguire query sul feed di dati delle modifiche di una tabella usando la funzione table_changes(), è necessario abilitare CDF nella tabella prima di condividerlo WITH HISTORY.

  7. (Facoltativo) Fare clic sull'icona Del riconoscimento vocale più. Sotto le colonne Alias o Partition per aggiungere un alias o una partizione. Alias e partizioni non sono disponibili se si seleziona un intero schema. La cronologia delle tabelle è inclusa per impostazione predefinita se si seleziona un intero schema.

  8. Fare clic su Salva.

SQL

Eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks per aggiungere una tabella:

ALTER SHARE <share-name> ADD TABLE <catalog-name>.<schema-name>.<table-name>  [COMMENT "<comment>"]
   [PARTITION(<clause>)] [AS <alias>]
   [WITH HISTORY | WITHOUT HISTORY];

Eseguire il comando seguente per aggiungere un intero schema. Il comando ADD SCHEMA richiede un SQL Warehouse o un ambiente di calcolo che utilizza Databricks Runtime 13.3 LTS o versione successiva. Per informazioni dettagliate sulla condivisione degli schemi, vedere Aggiungere schemi a una condivisione.

ALTER SHARE <share-name> ADD SCHEMA <catalog-name>.<schema-name>
[COMMENT "<comment>"];

Le opzioni includono quanto segue. PARTITION e AS <alias> non sono disponibili se si seleziona un intero schema.

  • PARTITION(<clause>): se si desidera condividere solo una parte della tabella, è possibile specificare una partizione. Ad esempio, (column = 'value') vedere Specificare partizioni di tabella da condividere e Usare le proprietà del destinatario per eseguire il filtro delle partizioni.

  • AS <alias>: nome di tabella alternativo o Alias per rendere il nome della tabella più leggibile. L'alias è il nome della tabella visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono utilizzare il nome effettivo della tabella se viene specificato un alias. Usare il formato<schema-name>.<table-name>.

  • WITH HISTORY o WITHOUT HISTORY: quando WITH HISTORY viene specificato, condividere la tabella con la cronologia completa, consentendo ai destinatari di eseguire query temporali e letture in streaming. Per le condivisioni da Databricks a Databricks, la condivisione della cronologia condivide anche il log Delta della tabella per migliorare le prestazioni. Il comportamento predefinito per la condivisione di tabelle è WITH HISTORY se il calcolo esegue Databricks Runtime 16.2 o versione successiva e WITHOUT HISTORY per le versioni precedenti di Databricks Runtime. Per la condivisione dello schema, il valore predefinito è WITH HISTORY indipendentemente dalla versione di Databricks Runtime. WITH HISTORY e WITHOUT HISTORY richiedono Databricks Runtime 12.2 LTS o versione successiva. Vedere anche Migliorare le prestazioni di lettura della tabella con la condivisione della cronologia.

    Note

    Se, oltre a eseguire query di spostamento del tempo e letture in streaming, si vuole che i destinatari eseseguono query sul feed di dati delle modifiche di una tabella usando la funzione table_changes(), è necessario abilitare CDF nella tabella prima di condividerlo WITH HISTORY.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

Per aggiungere una tabella, eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks.

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "ADD",
        "data_object": {
          "name": "<table-full-name>",
          "data_object_type": "TABLE",
          "shared_as": "<table-alias>"
        }
      }
    ]
  }'

Per aggiungere uno schema, eseguire il seguente comando CLI di Databricks:

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "ADD",
        "data_object": {
          "name": "<schema-full-name>",
          "data_object_type": "SCHEMA"
        }
      }
    ]
  }'

Note

Per le tabelle e solo le tabelle, è possibile omettere "data_object_type".

Per informazioni sulle opzioni elencate in questo esempio, vedere le istruzioni nella scheda SQL.

Per altre informazioni sui parametri aggiuntivi, eseguire databricks shares update --help o vedere PATCH /api/2.1/unity-catalog/shares/ nelle informazioni di riferimento sull'API REST.

Per informazioni sulla rimozione di tabelle da una condivisione, vedere Aggiornare le condivisioni.

Specificare le partizioni di tabella da condividere

Per condividere solo una parte di una tabella quando si aggiunge la tabella a una condivisione, specificare una specifica di partizione. Specificare le partizioni quando si aggiunge una tabella a una condivisione o si aggiorna una condivisione usando Esplora cataloghi, l'interfaccia della riga di comando del catalogo Unity di Databricks o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks. Vedere Aggiungere tabelle a una condivisione e Aggiornare le condivisioni.

Example

L'esempio SQL seguente condivide parte dei dati nella inventory tabella, partizionati dalle yearcolonne , monthe date :

  • Dati per l'anno 2021.
  • Dati relativi a dicembre 2020.
  • Dati relativi al 25 dicembre 2019.
ALTER SHARE share_name
ADD TABLE inventory
PARTITION (year = "2021"),
          (year = "2020", month = "Dec"),
          (year = "2019", month = "Dec", date = "2019-12-25");

Usare le proprietà del destinatario per filtrare le partizioni

È possibile condividere una partizione di tabella che corrisponda alle proprietà del destinatario dei dati, note anche come condivisione di partizioni con parametri.

Le proprietà predefinite includono:

  • databricks.accountId: l'account di Azure Databricks a cui appartiene un destinatario di dati (solo condivisione da Databricks a Databricks).
  • databricks.metastoreId: il metastore del catalogo Unity a cui appartiene il destinatario di dati (solo condivisione da Databricks a Databricks).
  • databricks.name: nome del destinatario dati.

È possibile creare qualsiasi proprietà personalizzata quando si crea o si aggiorna un destinatario.

Il filtro in base alla proprietà del destinatario consente di condividere le stesse tabelle, usando la stessa condivisione, tra più account, aree di lavoro e utenti di Databricks mantenendo al tempo stesso i limiti dei dati tra di essi.

Ad esempio, se le tabelle includono una colonna ID account Azure Databricks, è possibile creare una singola condivisione con partizioni di tabella definite dall'ID account Azure Databricks. Quando si condivide, la condivisione Delta distribuisce dinamicamente a ogni destinatario solo i dati associati al proprio account Azure Databricks.

Diagramma della condivisione dinamica delle partizioni basata su parametri in Condivisione delta

Senza la possibilità di partizionare dinamicamente per proprietà, è necessario creare una condivisione separata per ogni destinatario.

Per specificare una partizione che filtra in base alle proprietà dei destinatari quando si crea o si aggiorna una condivisione, è possibile usare Esplora cataloghi o la CURRENT_RECIPIENT funzione SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks:

Note

Le proprietà dei destinatari sono disponibili in Databricks Runtime 12.2 e versioni successive.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione che si vuole aggiornare e fare clic sul nome.

  4. Fare clic su Gestisci asset > Aggiungi asset di dati.

  5. Nella pagina Aggiungi tabelle selezionare il catalogo e il database che contengono la tabella, quindi selezionare la tabella.

    Se non si è certi del catalogo e del database che contengono la tabella, è possibile cercarlo in base al nome, al nome della colonna o al commento usando la ricerca nell'area di lavoro. Vedere Cercare oggetti dell'area di lavoro.

  6. (Facoltativo) Fare clic sull'icona a forma di bolle di riconoscimento vocale. In Colonna partizione per aggiungere una partizione.

    Nella finestra di dialogo Aggiungi partizione alla tabella aggiungere la specifica della partizione basata su proprietà usando la sintassi seguente:

    (<column-name> = CURRENT_RECIPIENT().<property-key>)
    

    Ad esempio:

    (country = CURRENT_RECIPIENT().country)
    
  7. Fare clic su Salva.

SQL

Eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks:

ALTER SHARE <share-name> ADD TABLE <catalog-name>.<schema-name>.<table-name>
   PARTITION (<column-name> = CURRENT_RECIPIENT().<property-key>);

Ad esempio:

ALTER SHARE acme ADD TABLE acme.default.some_table
  PARTITION (country = CURRENT_RECIPIENT().country);

Aggiungere tabelle con vettori di eliminazione o mapping di colonne in una condivisione

Important

Questa funzionalità è disponibile in anteprima pubblica.

I vettori di eliminazione sono una funzionalità di ottimizzazione dell'archiviazione che è possibile abilitare nelle tabelle Delta. Vedere Che cosa sono i vettori di eliminazione?.

Azure Databricks supporta anche il mapping delle colonne per le tabelle Delta. Consultare Rinominare ed eliminare le colonne con la mappatura delle colonne di Delta Lake.

Per condividere una tabella con vettori di eliminazione o mapping di colonne, è necessario condividerla con la storia. Vedere Aggiungere tabelle a una condivisione.

Quando si condivide una tabella con vettori di eliminazione o mapping di colonne, i destinatari possono eseguire query sulla tabella usando un SQL warehouse, un calcolo che esegue Databricks Runtime 14.1 o versione successiva o un calcolo che esegue l'open source delta-sharing-spark 3.1 o superiore. Vedere Leggere tabelle con vettori di eliminazione o mapping di colonne abilitati e Leggere tabelle con vettori di eliminazione o mapping di colonne abilitati.

Aggiungere schemi a una condivisione

Verificare di soddisfare i requisiti prima di aggiungere schemi a una condivisione.

L'aggiunta di un intero schema a una condivisione consente ai destinatari di accedere a tutti gli asset di dati nello schema al momento della creazione della condivisione, nonché a tutti gli asset aggiunti allo schema nel corso del tempo. Sono incluse tutte le tabelle, le viste e i volumi nello schema. Le tabelle condivise in questo modo includono sempre la cronologia completa.

Condividere schemi con un destinatario

Per aggiungere uno schema a una condivisione, seguire le istruzioni riportate in Aggiungere tabelle a una condivisione, prestando attenzione al contenuto che specifica come aggiungere uno schema.

L'aggiunta, l'aggiornamento o la rimozione di uno schema tramite SQL richiede un'istanza di SQL Warehouse o un ambiente di calcolo che esegue Databricks Runtime 13.3 LTS o versione successiva. Per eseguire la stessa operazione con Esplora Catalog non sono previsti requisiti di calcolo.

Limitazioni

  • Gli alias di tabella, le partizioni e gli alias di volume non sono disponibili se si condivide un intero schema. Se sono stati creati alias o partizioni per qualsiasi asset nello schema, questi vengono rimossi quando si aggiunge l'intero schema alla condivisione.

  • Se si desidera specificare opzioni avanzate per una tabella o un volume nello schema, è necessario condividere la tabella o il volume usando SQL e assegnare alla tabella o al volume un alias con un nome di schema diverso.

Aggiungere tabelle e schemi protetti dai criteri di controllo degli accessi in base al ruolo a una condivisione

Important

Questa funzionalità è disponibile in anteprima pubblica.

Il controllo degli accessi in base all'attributo è un modello di governance dei dati che offre un controllo di accesso flessibile, scalabile e centralizzato in Azure Databricks.

È possibile condividere una tabella o uno schema protetti da criteri di controllo degli accessi in base al ruolo come le tabelle standard. Per informazioni su come applicare criteri di controllo degli accessi in base al ruolo agli asset di dati, vedere Creare e gestire criteri di controllo degli accessi in base all'attributo.

Tuttavia, è necessario essere un utente con privilegi. Un utente con privilegi è il proprietario della condivisione e un utente escluso dai criteri di controllo degli accessi in base al ruolo applicati all'asset di dati. I criteri non regolano l'accesso del destinatario. I destinatari hanno accesso completo all'asset condiviso. Si applicano le limitazioni del controllo degli accessi in base al ruolo.

Aggiungere tabelle di streaming a una condivisione

Le tabelle di streaming sono tabelle Delta regolari con supporto aggiuntivo per lo streaming o l'elaborazione incrementale dei dati. Le tabelle di streaming sono progettate per origini dati di sola aggiunta e processano gli input una sola volta. Vedere Usare tabelle di streaming in Databricks SQL.

Verificare di soddisfare i requisiti prima di aggiungere tabelle di streaming a una condivisione.

Requisiti aggiuntivi

  • Se l'area di lavoro dispone di collegamenti del catalogo dell'area di lavoro abilitati, verificare che l'area di lavoro disponga dell'accesso in lettura e scrittura al catalogo che contiene la tabella di streaming. Per altre informazioni, vedere Limitare l'accesso al catalogo a aree di lavoro specifiche.
  • Le tabelle di streaming condivisibili devono essere definite in tabelle Delta o in altre tabelle o viste di streaming condivisibili.
  • È necessario usare un'istanza di SQL Warehouse o un ambiente di calcolo in Databricks Runtime 13.3 LTS o versione successiva quando si aggiunge una tabella di streaming a una condivisione.

Limitazioni

  • La tabella di streaming non può avere filtri di riga e maschere di colonna.
    • La tabella di base della tabella di streaming può avere filtri di riga e maschere di colonna.
  • La tabella di streaming non può avere filtri di partizione. Creare invece una vista nella parte superiore della tabella di streaming.

Condividere tabelle di streaming con un destinatario

Per aggiungere tabelle di streaming a una condivisione:

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi dall'utente corrente individuare la condivisione a cui si vuole aggiungere una tabella di streaming e fare clic sul nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica asset cercare la tabella di streaming che si vuole condividere e selezionarla.

  6. (Facoltativo) Nella colonna Alias fare clic sull'icona Del riconoscimento vocale più. Per specificare un alias o un nome di tabella di streaming alternativo, per rendere il nome della tabella di streaming più leggibile. L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo della tabella di streaming se è specificato un alias.

  7. Fare clic su Salva.

SQL

Eseguire il seguente comando in un notebook o nell'editor di query SQL di Databricks.

ALTER SHARE <share_name> ADD TABLE <st_name> [COMMENT <comment>] [AS <shared_st_name>];

CLI

Eseguire il seguente comando dell'interfaccia della riga di comando di Databricks.

databricks shares update <share-name> \
  --json '{
    “updates”: [
      {
        “action”: “ADD”,
        “data_object”: {
          “name”: “<st-full-name>",
          “data_object_type”: “TABLE”,
          “comment”: “<comment>”
        }
      }
    ]
  }'

Per informazioni sulla rimozione di tabelle di streaming da una condivisione, vedere Aggiornare le condivisioni.

Aggiungere tabelle Iceberg gestite a una condivisione

Important

Questa funzionalità è disponibile in anteprima pubblica.

Apache Iceberg è un formato di tabella open source per i carichi di lavoro di analisi. In Azure Databricks è possibile creare tabelle Iceberg in Unity Catalog, note come tabelle Iceberg gestite.

Verificare di soddisfare i requisiti prima di aggiungere tabelle Iceberg gestite a una condivisione.

Si applicano le limitazioni della tabella Iceberg e della tabella Iceberg gestita. Vedere Limitazioni della tabella Iceberg.

Per aggiungere tabelle Iceberg gestite a una condivisione:

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me trovare la condivisione a cui si vuole aggiungere una tabella Iceberg gestita e fare clic sul nome.

  4. Fare clic su Gestisci asset>.

  5. Nella pagina Modifica asset, cercare o sfogliare la tabella Iceberg gestita che si desidera condividere e selezionarla.

  6. (Facoltativo) Nella colonna Alias fare clic sull'icona speech bubble plus. per specificare un alias o un nome alternativo della tabella Iceberg gestita, per rendere il nome più leggibile. L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo della tabella Iceberg gestita se è specificato un alias.

  7. Fare clic su Salva.

SQL

Eseguire il seguente comando in un notebook o nell'editor di query SQL di Databricks. Opzionalmente, specificare <shared_iceberg_table_name> per esporre la tabella Iceberg gestita con un nome diverso.

ALTER SHARE <share_name> ADD TABLE <managed_iceberg_name> [COMMENT <comment>] [AS <shared_iceberg_table_name>];

CLI

Eseguire il seguente comando dell'interfaccia della riga di comando di Databricks.

databricks shares update <share-name> \
  --json '{
    “updates”: [
      {
        “action”: “ADD”,
        “data_object”: {
          “name”: “<managed-iceberg-full-name>",
          “data_object_type”: “TABLE”,
          “comment”: “<comment>”
        }
      }
    ]
  }'

Aggiungere schemi o tabelle esterne a una condivisione

Important

Questa funzionalità è in versione beta. Gli amministratori dell'area di lavoro possono controllare l'accesso a questa funzionalità dalla pagina Anteprime . Vedere Gestire le anteprime di Azure Databricks.

Lakehouse Federation consente di usare Azure Databricks per eseguire query su origini dati esterne. È possibile creare schemi e tabelle esterne, contenenti dati e metadati gestiti da sistemi esterni, con Unity Catalog che aggiunge governance dei dati per eseguire query su queste tabelle. Per altre informazioni sulla connessione a origini esterne, vedere Che cos'è Lakehouse Federation?.

Delta Sharing consente di condividere in modo sicuro i dati esterni dalla loro posizione originale, senza copiare dati in Azure Databricks, trasferimenti di credenziali o configurazioni di rete complesse.

Verificare di soddisfare i requisiti prima di aggiungere schemi o tabelle esterne a una condivisione.

Requisiti aggiuntivi

  • È necessario abilitare il calcolo serverless per flussi di lavoro, notebook e pipeline dichiarative di Lakeflow Spark nell'account in cui è configurata la condivisione esterna dello schema o della tabella esterna. Vedi Connettersi al calcolo serverless.

  • Quando si condividono schemi e tabelle di terzi, i dati vengono sottoposti a query e materializzati temporaneamente sul lato del fornitore. Per impostazione predefinita, i dati materializzati vengono archiviati in uno schema nascosto usando l'archiviazione predefinita di Azure Databricks (anteprima privata). Verificare di soddisfare i requisiti e osservare le limitazioni per l'archiviazione predefinita.

    Per informazioni dettagliate sulla disponibilità regionale di archiviazione predefinita, consultare Disponibilità serverless.

    Per rinunciare all'uso dell'archiviazione predefinita di Azure Databricks e utilizzare il proprio spazio di archiviazione per la materializzazione temporanea, aprire un caso di supporto.

  • Se si sceglie di usare l'archiviazione predefinita, è necessario abilitare l'anteprima Delta Sharing for Default Storage – Expanded Access (Condivisione differenziale per l'archiviazione predefinita – Anteprima dell'accesso espanso) a livello di account. Vedere Gestire le anteprime di Azure Databricks.

I risultati delle query vengono generati su richiesta per ogni query, pertanto la condivisione di tabelle esterne e schemi potrebbe non risultare conveniente rispetto alla condivisione di tabelle o viste materializzate. Azure Databricks consiglia quanto segue per migliorare le prestazioni:

  • Mantenere le dimensioni dei risultati delle query tipiche inferiori a 10 GB.
  • Usare query esplorative ad hoc invece di scaricamenti frequenti di dati.
  • Quando si usa la condivisione di token cloud, è consigliabile condividere viste materializzate create su tabelle esterne per ottenere un'efficienza dei costi e prestazioni migliori.

Condividere lo schema o la tabella esterna con un destinatario

Per aggiungere schemi o tabelle esterne a una condivisione, usare Esplora cataloghi, l'interfaccia della riga di comando di Databricks Unity Catalog o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi dall'utente corrente individuare la condivisione a cui si vuole aggiungere una tabella o uno schema esterno e fare clic sul relativo nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica asset, cercare o sfogliare la tabella o lo schema esterno che si desidera condividere e selezionarlo.

  6. (Facoltativo) Nella colonna Alias, fai clic sull'icona a forma di fumetto con un più. per specificare un alias, ovvero uno schema esterno o un nome di tabella alternativo, per rendere lo schema esterno o il nome della tabella più leggibile. L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono utilizzare lo schema esterno effettivo o il nome della tabella se è specificato un alias.

  7. Fare clic su Salva.

SQL

ALTER SHARE <share-name>
  ADD {TABLE | SCHEMA} {federated_catalog.federated_schema.federated_table | federated_catalog.federated_schema}
  [COMMENT "<comment>"]
  [AS <alias>];

Le opzioni includono:

  • AS <alias>: un nome alternativo o un alias per rendere il nome dell'asset di dati più leggibile. L'alias è il nome dell'asset di dati visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo se viene specificato un alias. Usare il formato<catalog-name>.<schema-name>.<view-name>.
  • COMMENT "<comment>": i commenti vengono visualizzati nell'interfaccia utente di Esplora cataloghi e quando si elencano e visualizzano i dettagli degli asset di dati usando istruzioni SQL.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

databricks shares update <share-name> \
  --json '{
    “updates”: [
      {
        “action”: “ADD”,
        “data_object”: {
          “name”: “<federated-data-asset-full-name>",
          “data_object_type”: “{TABLE | SCHEMA}”,
          "shared_as": "<foreign-data-asset-alias>",
          “comment”: “<comment>”
        }
      }
    ]
  }'

Aggiungere visualizzazioni a una condivisione

Le viste sono oggetti di sola lettura creati da una o più tabelle o altre viste. È possibile creare una vista dalle tabelle e da altre viste contenute in più schemi e cataloghi in un metastore di Unity Catalog. Vedere Creare e gestire le visualizzazioni.

Verificare di soddisfare i requisiti prima di aggiungere visualizzazioni a una condivisione.

Requisiti aggiuntivi

  • Le viste condivisibili devono essere definite in tabelle Delta, altre viste condivisibili o viste materializzate locali e tabelle di streaming. Le viste condivisibili non possono essere definite nelle tabelle esterne.
  • Non è possibile condividere viste che fanno riferimento a tabelle o viste condivise.
  • È necessario usare un'istanza di SQL Warehouse o un ambiente di calcolo in Databricks Runtime 13.3 LTS o versione successiva quando si aggiunge una visualizzazione a una condivisione.
  • Se l'area di lavoro ha i collegamenti catalogo dell'area di lavoro abilitati, verificare che l'area di lavoro abbia accesso in lettura e scrittura al catalogo. Per altre informazioni, vedere Limitare l'accesso al catalogo a aree di lavoro specifiche.
  • Quando si condividono le visualizzazioni, i dati vengono interrogati e materializzati temporaneamente. I dati materializzati vengono archiviati nella posizione di archiviazione dello schema o del catalogo padre della vista, o nella posizione radice del metastore.
  • Se il percorso di archiviazione include configurazioni di rete personalizzate, ad esempio un firewall o un collegamento privato, è necessario verificare che i destinatari siano autorizzati a connettersi al percorso di archiviazione. Per istruzioni sulla configurazione delle regole del firewall per l'ambiente di calcolo serverless, vedere Configurare un firewall per l'accesso alle risorse di calcolo serverless.

Condividere visualizzazioni con un destinatario

Questa sezione descrive come aggiungere visualizzazioni a una condivisione usando Esplora cataloghi, l'interfaccia della riga di comando di Databricks o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks. Se si preferisce usare l'API REST del catalogo Unity, vedere PATCH /api/2.1/unity-catalog/shares/ nella guida di riferimento all'API REST.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me, individua la condivisione a cui si vuole aggiungere una visualizzazione e fai clic sul nome.

  4. Fare clic su Gestisci asset > Aggiungi asset di dati.

  5. Nella pagina Aggiungi tabelle, cerca o sfoglia per trovare la visualizzazione che si desidera condividere e selezionarla.

  6. (Facoltativo) Fare clic sull'icona con la nuvoletta di dialogo e il simbolo più. nella colonna Alias per specificare un nome di visualizzazione alternativo, o Alias, per rendere il nome della visualizzazione più leggibile. L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo della visualizzazione se è specificato un alias.

  7. Fare clic su Salva.

SQL

Eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks:

ALTER SHARE <share-name> ADD VIEW <catalog-name>.<schema-name>.<view-name>
   [COMMENT "<comment>"]
   [AS <alias>];

Le opzioni includono:

  • AS <alias>: un nome di visualizzazione alternativo, o alias, per rendere il nome della visualizzazione più leggibile. L'alias è il nome della visualizzazione che il destinatario vede e deve utilizzare nelle query. I destinatari non possono usare il nome effettivo della visualizzazione se è specificato un alias. Usare il formato<schema-name>.<view-name>.
  • COMMENT "<comment>": i commenti vengono visualizzati nell'interfaccia utente di Esplora cataloghi e quando si elencano e visualizzano i dettagli usando istruzioni SQL.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

Eseguire il seguente comando CLI di Databricks:

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "ADD",
        "data_object": {
          "name": "<view-full-name>",
          "data_object_type": "VIEW",
          "shared_as": "<view-alias>"
        }
      }
    ]
  }'

"shared_as": "<view-alias>" è facoltativo e fornisce un nome di visualizzazione alternativo, o alias, per rendere il nome della visualizzazione più leggibile. L'alias è il nome della visualizzazione che il destinatario vede e deve utilizzare nelle query. I destinatari non possono usare il nome effettivo della visualizzazione se è specificato un alias. Usare il formato<schema-name>.<view-name>.

Per altre informazioni sui parametri aggiuntivi, eseguire databricks shares update --help o vedere PATCH /api/2.1/unity-catalog/shares/ nelle informazioni di riferimento sull'API REST.

Per informazioni sulla rimozione di visualizzazioni da una condivisione, vedere Aggiornare le condivisioni.

Aggiungere visualizzazioni dinamiche a una condivisione per filtrare righe e colonne

È possibile usare le viste dinamiche per configurare il controllo di accesso con granularità fine ai dati della tabella, tra cui:

  • Sicurezza a livello di colonne o righe.
  • Mascheramento dei dati.

Quando si crea una visualizzazione dinamica che usa la funzione CURRENT_RECIPIENT(), è possibile limitare l'accesso dei destinatari in base alle proprietà specificate nella definizione del destinatario.

In questa sezione vengono forniti esempi di limitazione dell'accesso dei destinatari ai dati della tabella a livello di riga e colonna tramite una visualizzazione dinamica.

Requirements

  • Verificare di soddisfare i requisiti per l'aggiunta di una visualizzazione a una condivisione.
  • Versione di Databricks Runtime: la CURRENT_RECIPIENT funzione è supportata in Databricks Runtime 14.2 e versioni successive.

Limitazioni

  • Si applicano tutte le limitazioni per la condivisione delle visualizzazioni .
  • Quando un provider condivide una vista che usa la CURRENT_RECIPIENT funzione, il provider non può eseguire query direttamente sulla vista a causa del contesto di condivisione. Per testare una visualizzazione dinamica di questo tipo, il provider deve condividere la vista con se stessi ed eseguire query sulla vista come destinatario.
  • I provider non possono creare una vista che fa riferimento a una visualizzazione dinamica.

Impostare una proprietà del destinatario

In questi esempi, la tabella da condividere ha una colonna denominata countrye solo i destinatari con una proprietà corrispondente country possono visualizzare determinate righe o colonne.

È possibile impostare le proprietà dei destinatari usando Esplora cataloghi o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Destinatari trovare il destinatario a cui si desidera aggiungere le proprietà e fare clic sul relativo nome.

  4. Fare clic su Modifica proprietà.

  5. Nella finestra di dialogo Modifica proprietà destinatario immettere il nome della colonna come chiave (in questo caso country) e il valore da filtrare in base al valore , ad esempio CA.

  6. Fare clic su Salva.

SQL

Per impostare la proprietà sul destinatario, utilizzare ALTER RECIPIENT. In questo esempio la country proprietà è impostata su CA.

ALTER RECIPIENT recipient1 SET PROPERTIES ('country' = 'CA');

Creare una visualizzazione dinamica con l'autorizzazione a livello di riga per i destinatari

In questo esempio solo i destinatari con una proprietà corrispondente country possono visualizzare determinate righe.

CREATE VIEW my_catalog.default.view1 AS
  SELECT * FROM my_catalog.default.my_table
  WHERE country = CURRENT_RECIPIENT('country');

Un'altra opzione è che il provider di dati mantenga una tabella di mapping separata che esegue il mapping dei campi della tabella dei fatti alle proprietà del destinatario. Ciò consente di separare le proprietà dei destinatari e i campi della tabella dei fatti per una maggiore flessibilità.

Creare una visualizzazione dinamica con l'autorizzazione a livello di colonna per i destinatari

In questo esempio solo i destinatari che corrispondono alla country proprietà possono visualizzare determinate colonne. Altri visualizzano i dati restituiti come REDACTED:

CREATE VIEW my_catalog.default.view2 AS
  SELECT
  CASE
    WHEN CURRENT_RECIPIENT('country') = 'US' THEN pii
    ELSE 'REDACTED'
  END AS pii
  FROM my_catalog.default.my_table;

Condividere la visualizzazione dinamica con un destinatario

Per condividere la visualizzazione dinamica con un destinatario, usare gli stessi comandi SQL o la stessa procedura dell'interfaccia utente come si farebbe per una visualizzazione standard. Vedere Aggiungere visualizzazioni a una condivisione.

Aggiungere visualizzazioni materializzate a una condivisione

Come le viste, le viste materializzate sono i risultati di una query ed è possibile accedervi come si farebbe con una tabella. A differenza delle visualizzazioni regolari, i risultati di una vista materializzata riflettono lo stato dei dati quando la vista materializzata è stata aggiornata per l'ultima volta. Per altre informazioni sulle viste materializzate, vedere Usare viste materializzate in Databricks SQL.

Verificare di soddisfare i requisiti prima di aggiungere visualizzazioni materializzate a una condivisione.

Requisiti aggiuntivi

  • Se le associazioni del catalogo dell'area di lavoro sono abilitate, bisogna verificare che l'area di lavoro abbia accesso in lettura e scrittura al catalogo contenente la vista materializzata. Per altre informazioni, vedere Limitare l'accesso al catalogo a aree di lavoro specifiche.
  • Le viste materializzate condivise devono essere definite su tabelle Delta o su altre tabelle di streaming condivise, viste o viste materializzate.
  • È necessario usare un'istanza di SQL Warehouse o un ambiente di calcolo in Databricks Runtime 13.3 LTS o versione successiva quando si aggiunge una vista materializzata a una condivisione.

Limitazioni

  • La vista materializzata non può avere filtri di riga, ma la tabella di base della vista materializzata può avere filtri di riga e maschere di colonna.
  • La vista materializzata non può avere filtri di partizione. Invece, crea una vista sopra la vista materializzata.

Condividere visualizzazioni materializzate con un destinatario

Questa sezione descrive come aggiungere viste materializzate a una condivisione usando Esplora cataloghi, l'interfaccia della riga di comando di Databricks o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks. Se si preferisce usare l'API REST del catalogo Unity, vedere PATCH /api/2.1/unity-catalog/shares/ nella guida di riferimento all'API REST.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me trovare la condivisione a cui si vuole aggiungere una visualizzazione materializzata e fare clic sul nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica asset, cercare o sfogliare la vista materializzata da condividere e selezionarla.

  6. (Facoltativo) Nella colonna Alias fare clic sull'icona Del riconoscimento vocale più. Per specificare un alias o un nome di visualizzazione materializzato alternativo, per rendere il nome della visualizzazione materializzato più leggibile. L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono utilizzare il nome reale della vista materializzata se è stato specificato un alias.

  7. Fare clic su Salva.

SQL

Eseguire il seguente comando in un notebook o nell'editor di query SQL di Databricks.

ALTER SHARE <share_name> ADD MATERIALIZED VIEW <mv_name> [COMMENT <comment>] [AS <shared_mv_name>];

CLI

databricks shares update <share-name> \
  --json '{
    “updates”: [
      {
        “action”: “ADD”,
        “data_object”: {
          “name”: “<mat-view-full-name>”,
          “data_object_type”: “MATERIALIZED_VIEW”,
          “comment”: “<comment>”
        }
      }
    ]
  }'

Per informazioni sulla rimozione di viste materializzate da una condivisione, vedere Aggiornare le condivisioni.

Aggiungi volumi a una condivisione

I volumi sono oggetti del catalogo Unity che rappresentano un volume logico di archiviazione in una posizione di archiviazione oggetti cloud. Sono destinati principalmente a fornire governance su asset di dati non tabulari. Vedere Che cosa sono i volumi del catalogo Unity?.

Verificare di soddisfare i requisiti prima di aggiungere volumi a una condivisione.

Requisiti aggiuntivi

  • La condivisione dei volumi è supportata solo nella condivisione da Databricks a Databricks.
  • È necessario usare un SQL warehouse nella versione 2023.50 o successiva o una risorsa di calcolo su Databricks Runtime 14.1 o versione successiva quando si aggiunge un volume a una condivisione.
  • Se l'archiviazione del volume sul lato provider dispone di configurazioni di rete personalizzate (ad esempio un firewall o un collegamento privato), il provider deve verificare che il piano di controllo e gli indirizzi del piano dati del destinatario siano correttamente consentiti per potersi connettere al percorso di archiviazione del volume.

Note

I commenti dei volumi sono inclusi nei dati condivisi con un destinatario tramite la piattaforma Databricks su o dopo il 25 luglio 2024. Se si desidera iniziare a condividere i commenti tramite una condivisione condivisa con un destinatario prima della data di rilascio, è necessario revocare e concedere di nuovo l'accesso del destinatario per attivare la condivisione dei commenti.

Condividere volumi con un destinatario

Questa sezione descrive come aggiungere volumi a una condivisione usando Catalog Explorer, il Databricks CLI o i comandi SQL in un notebook di Azure Databricks o un editor di query SQL. Se si preferisce usare l'API REST del catalogo Unity, vedere PATCH /api/2.1/unity-catalog/shares/ nella guida di riferimento all'API REST.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione a cui si vuole aggiungere un volume e fare clic sul nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica asset, cerca o sfoglia il volume da condividere e selezionalo.

    In alternativa, è possibile selezionare l'intero schema che contiene il volume. Vedere Aggiungere schemi a una condivisione.

  6. (Facoltativo) Fare clic sull'icona Del riconoscimento vocale più. Nella colonna Alias per specificare un nome di volume alternativo o Alias, per rendere il nome del volume più leggibile.

    Gli alias non sono disponibili se si seleziona un intero schema.

    L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. Se viene specificato un alias, i destinatari non possono usare il nome effettivo del volume.

  7. Fare clic su Salva.

SQL

Eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks:

ALTER SHARE <share-name> ADD VOLUME <catalog-name>.<schema-name>.<volume-name>
   [COMMENT "<comment>"]
   [AS <alias>];

Le opzioni includono:

  • AS <alias>: un nome di volume alternativo, o alias, per rendere il nome del volume più leggibile. L'alias è il nome del volume che il destinatario vede e deve utilizzare nelle query. I destinatari non possono usare il nome effettivo del volume se viene specificato un alias. Usare il formato<schema-name>.<volume-name>.
  • COMMENT "<comment>": i commenti vengono visualizzati nell'interfaccia utente di Esplora cataloghi e quando si elencano e visualizzano i dettagli del volume usando istruzioni SQL.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

Eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks 0.210 o versione successiva:

 databricks shares update <share-name> \
   --json '{
     "updates": [
       {
         "action": "ADD",
         "data_object": {
           "name": "<volume-full-name>",
           "data_object_type": "VOLUME",
           "string_shared_as": "<volume-alias>"
         }
       }
     ]
   }'

"string_shared_as": "<volume-alias>" è facoltativo e fornisce un nome di volume alternativo, o alias, per rendere il nome del volume più leggibile. L'alias è il nome del volume che il destinatario vede e deve utilizzare nelle query. I destinatari non possono usare il nome effettivo del volume se viene specificato un alias. Usare il formato<schema-name>.<volume-name>.

Per altre informazioni sui parametri aggiuntivi, eseguire databricks shares update --help o vedere PATCH /api/2.1/unity-catalog/shares/ nelle informazioni di riferimento sull'API REST.

Per informazioni sulla rimozione di volumi da una condivisione, vedere Aggiornare le condivisioni.

Aggiungere funzioni definite dall'utente Python a una condivisione

Le funzioni definite dall'utente consentono di riutilizzare e condividere codice che estende le funzionalità predefinite in Azure Databricks. Per informazioni su come creare UDF Python, vedere Funzioni scalari UDF - Python.

Verificare di soddisfare i requisiti prima di aggiungere UDF Python a una condivisione.

Limitazioni aggiuntive

  • Non è possibile condividere funzioni definite dall'utente Python con un destinatario aperto.

Condividere UDF (funzioni definite dall'utente) Python con un destinatario

Questa sezione descrive come aggiungere funzioni definite dall'utente (UDF) Python a una condivisione usando Catalog Explorer, la CLI di Databricks o i comandi SQL in un notebook di Azure Databricks o in un editor di query SQL. Se si preferisce usare l'API REST del catalogo Unity, vedere PATCH /api/2.1/unity-catalog/shares/ nella guida di riferimento all'API REST.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione a cui si vuole aggiungere un UDF Python e fare clic sul nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica asset cerca o sfoglia la funzione UDF Python che si vuole condividere e selezionala.

    In alternativa, è possibile selezionare l'intero schema che contiene l'UDF Python. Vedere Aggiungere schemi a una condivisione.

  6. (Facoltativo) Fare clic sull'icona Più della nuvoletta di dialogo. nella colonna Alias per specificare un nome alternativo per l'UDF Python o creare un Alias per rendere il nome dell'UDF Python più leggibile.

    Gli alias non sono disponibili se si seleziona un intero schema.

    L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. Se viene specificato un alias, i destinatari non possono usare il nome effettivo della funzione UDF Python.

  7. Fare clic su Salva.

SQL

Eseguire il comando seguente, che usa ADD MODEL, in un notebook o nell'editor di query SQL di Databricks:

ALTER SHARE <share-name> ADD MODEL <catalog-name>.<schema-name>.<python-udf-name>
   [AS <alias>];

Le opzioni includono:

  • AS <alias>: Un alias o un nome alternativo di UDF Python per rendere più leggibile il nome della UDF Python. L'alias è il nome della UDF in Python che il destinatario vede e deve usare nelle query. I destinatari non possono utilizzare il nome effettivo della funzione definita dall'utente in Python se è stato specificato un alias. Usare il formato<schema-name>.<python-udf-name>.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

Eseguire il comando seguente, che specifica il tipo di oggetto come modello, usando l'interfaccia della riga di comando di Databricks 0.210 o versione successiva:

 databricks shares update <share-name> \
   --json '{
     "updates": [
       {
         "action": "ADD",
         "data_object": {
           "name": "<python-udf-full-name>",
           "data_object_type": "MODEL",
           "string_shared_as": "<python-udf-alias>"
         }
       }
     ]
   }'

"string_shared_as": "<python-udf-alias>" è facoltativo e fornisce un nome UDF Python alternativo, o alias, per rendere il nome UDF Python più leggibile. L'alias è il nome della UDF in Python che il destinatario vede e deve usare nelle query. I destinatari non possono utilizzare il nome effettivo della funzione definita dall'utente in Python se è stato specificato un alias. Usare il formato<schema-name>.<python-udf-name>.

Per altre informazioni sui parametri aggiuntivi, eseguire databricks shares update --help o vedere PATCH /api/2.1/unity-catalog/shares/ nelle informazioni di riferimento sull'API REST.

Aggiungere FeatureSpecs a una condivisione

Un FeatureSpec è un set definito dall'utente di funzionalità e funzioni. I destinatari possono creare un endpoint di gestione delle funzionalità dall'oggetto condiviso FeatureSpec. Per informazioni su come creare FeatureSpecs, vedere Creare un oggetto FeatureSpec.

Verificare di soddisfare i requisiti prima di aggiungere FeatureSpecs a una condivisione.

Requisiti aggiuntivi

  • Tutte le dipendenze devono essere aggiunte alla condivisione. Quando si usa l'interfaccia utente per aggiungere un FeatureSpec oggetto a una condivisione, tutte le dipendenze devono essere aggiunte automaticamente alla condivisione.
  • Se al modello viene aggiunta una dipendenza, è necessario aggiungerla anche alla condivisione.

Limitazioni aggiuntive

  • Se l'asset è una dipendenza di un altro modello, non è possibile specificare un alias.
  • Non è possibile condividere FeatureSpecs con un destinatario aperto.

Condividere FeatureSpecs con un destinatario

Questa sezione descrive come aggiungere FeatureSpecs a una condivisione usando Catalog Explorer, il Databricks CLI o i comandi SQL in un notebook di Azure Databricks o un editor di query SQL. Se si preferisce usare l'API REST del catalogo Unity, vedere PATCH /api/2.1/unity-catalog/shares/ nella guida di riferimento all'API REST.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione a cui si vuole aggiungere un FeatureSpec e fare clic sul nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica risorse, cercare o sfogliare l'elemento FeatureSpec che si vuole condividere e selezionarlo.

    In alternativa, è possibile selezionare l'intero schema che contiene .FeatureSpec Vedere Aggiungere schemi a una condivisione.

  6. (Facoltativo) Fare clic sull'icona Del riconoscimento vocale più. Nella colonna Alias per specificare un nome alternativo FeatureSpec o Alias, per rendere il FeatureSpec nome più leggibile.

    Gli alias non sono disponibili se si seleziona un intero schema.

    L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. Se viene specificato un alias, i destinatari non possono usare il nome effettivo FeatureSpec .

  7. Se sono presenti dipendenze, la finestra di dialogo Aggiungi tutte le dipendenze indica che vengono tutte aggiunte automaticamente. Fare clic su Aggiungi tutte le dipendenze.

  8. Fare clic su Salva.

SQL

Eseguire il comando seguente, che usa ADD MODEL, in un notebook o nell'editor di query SQL di Databricks:

ALTER SHARE <share-name> ADD MODEL <catalog-name>.<schema-name>.<featurespec-name>
   [AS <alias>];

--Opzioni includono:

  • AS <alias>: un nome alternativo FeatureSpec , o alias, per rendere il FeatureSpec nome più leggibile. L'alias è il FeatureSpec nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo FeatureSpec se viene specificato un alias. Usare il formato<schema-name>.<featurespec-name>.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

Eseguire il comando seguente, che specifica il tipo di oggetto come modello, usando l'interfaccia della riga di comando di Databricks 0.210 o versione successiva:

 databricks shares update <share-name> \
   --json '{
     "updates": [
       {
         "action": "ADD",
         "data_object": {
           "name": "<featurespec-full-name>",
           "data_object_type": "MODEL",
           "string_shared_as": "<featurespec-alias>"
         }
       }
     ]
   }'

"string_shared_as": "<volume-alias>" è facoltativo e fornisce un nome alternativo FeatureSpec , o alias, per rendere il FeatureSpec nome più leggibile. L'alias è il FeatureSpec nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo FeatureSpec se viene specificato un alias. Usare il formato<schema-name>.<featurespec-name>.

Per altre informazioni sui parametri aggiuntivi, eseguire databricks shares update --help o vedere PATCH /api/2.1/unity-catalog/shares/ nelle informazioni di riferimento sull'API REST.

Aggiungere modelli a una condivisione

Verificare di soddisfare i requisiti prima di aggiungere modelli a una condivisione.

Note

I commenti del modello e quelli sulla versione del modello sono inclusi nelle condivisioni effettuate tramite Databricks-to-Databricks.

Requisiti aggiuntivi

  • La condivisione dei modelli è supportata solo nella condivisione da Databricks a Databricks.
  • È necessario usare un SQL warehouse nella versione 2023.50 o successiva o una risorsa di calcolo in Databricks Runtime 14.0 o versione successiva quando si aggiunge un modello a una condivisione.

Condividere modelli con un destinatario

Questa sezione descrive come aggiungere modelli a una condivisione utilizzando Catalog Explorer, la CLI di Databricks o i comandi SQL in un notebook di Azure Databricks o un editor di query SQL. Se si preferisce usare l'API REST del catalogo Unity, vedere PATCH /api/2.1/unity-catalog/shares/ nella guida di riferimento all'API REST.

Per aggiungere modelli a una condivisione:

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione alla quale aggiungere un modello e fare clic sul nome.

  4. Fare clic su Gestisci asset Modifica asset>.

  5. Nella pagina Modifica asset, cerca o sfoglia il modello da condividere e selezionalo.

    In alternativa, è possibile selezionare l'intero schema che contiene il modello. Vedere Aggiungere schemi a una condivisione.

  6. (Facoltativo) Fare clic sull'icona bolla di dialogo più. nella colonna Alias per specificare un nome di modello alternativo o Alias, per rendere il nome del modello più leggibile.

    Gli alias non sono disponibili se si seleziona un intero schema.

    L'alias è il nome visualizzato dal destinatario e deve essere usato nelle query. I destinatari non possono usare il nome effettivo del modello se è specificato un alias.

  7. Fare clic su Salva.

SQL

Eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks:

ALTER SHARE <share-name> ADD MODEL <catalog-name>.<schema-name>.<model-name>
   [COMMENT "<comment>"]
   [AS <alias>];

Le opzioni includono:

  • AS <alias>: un nome di modello alternativo, o alias, per rendere il nome del modello più leggibile. L'alias è il nome del modello che il destinatario visualizza e deve usare nelle query. I destinatari non possono usare il nome effettivo del modello se è specificato un alias. Usare il formato<schema-name>.<model-name>.
  • COMMENT "<comment>": i commenti vengono visualizzati nell'interfaccia utente di Esplora cataloghi e quando si elencano e visualizzano i dettagli del modello usando istruzioni SQL.

Per altre informazioni sulle opzioni di ALTER SHARE, vedere ALTER SHARE.

CLI

Eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks 0.210 o versione successiva:

 databricks shares update <share-name> \
   --json '{
     "updates": [
       {
         "action": "ADD",
         "data_object": {
           "name": "<model-full-name>",
           "data_object_type": "MODEL",
           "string_shared_as": "<model-alias>"
         }
       }
     ]
   }'

"string_shared_as": "<model-alias>" è facoltativo e fornisce un nome di modello alternativo, o alias, per rendere il nome del modello più leggibile. L'alias è il nome del modello che il destinatario visualizza e deve usare nelle query. I destinatari non possono usare il nome effettivo del modello se è specificato un alias. Usare il formato<schema-name>.<model-name>.

Per altre informazioni sui parametri aggiuntivi, eseguire databricks shares update --help o vedere PATCH /api/2.1/unity-catalog/shares/ nelle informazioni di riferimento sull'API REST.

Per informazioni sulla rimozione di modelli da una condivisione, vedere Aggiornare le condivisioni.

Aggiungere file di notebook a una condivisione

Verificare di soddisfare i requisiti prima di aggiungere file di notebook a una condivisione.

Usare Esplora catalogo per aggiungere un file notebook per la condivisione.

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.
  2. Fare clic sul pulsante Delta Sharing >.
  3. Nella scheda Condivisi da me, individuare la condivisione a cui si vuole aggiungere un notebook e cliccare sul nome.
  4. Fare clic su Gestisci asset e selezionare Aggiungi file notebook.
  5. Nella pagina Aggiungi file del notebook fare clic sull'icona del file per cercare il notebook da condividere.
    • Fare clic sul file che si desidera condividere e fare clic su Seleziona.
    • (Facoltativamente) specificare un alias descrittivo per il file nel campo Condividi come . Si tratta dell'identificatore visualizzato dai destinatari.
    • In percorso di archiviazione, immettere il percorso esterno nell'archiviazione cloud dove si desidera memorizzare il notebook. È possibile specificare un sottopercorso nella posizione esterna definita. Se non si specifica un percorso esterno, il notebook viene archiviato nel percorso di archiviazione a livello di metastore (o "percorso radice del metastore"). Se non è definita alcuna posizione principale per il metastore, è necessario immettere un percorso esterno qui. Consulta Aggiungi memoria gestita a un metastore esistente.
  6. Fare clic su Salva.

Il file del notebook condiviso viene ora visualizzato nell'elenco File notebook nella scheda Asset .

Rimuovere i file del notebook dalle condivisioni

Per rimuovere un file di notebook da una condivisione:

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione che include il notebook e fare clic sul nome della condivisione.

  4. Nella scheda Asset trovare il file del notebook che si vuole rimuovere dalla condivisione.

  5. Fare clic sull'icona del menu Kebab. Menu kebab a destra della riga e selezionare Elimina file notebook.

  6. Nella finestra di dialogo di conferma fare clic su Elimina.

Aggiornare i file del notebook nelle condivisioni

Per aggiornare un notebook già condiviso, è necessario aggiungerlo nuovamente, assegnandogli un nuovo alias nel campo Condividi come . Databricks consiglia di usare un nome che indica lo stato modificato del notebook, ad esempio <old-name>-update-1. Potrebbe essere necessario inviare una notifica al destinatario della modifica. Il destinatario deve selezionare e clonare il nuovo notebook per sfruttare i vantaggi dell'aggiornamento.

Abilitare la condivisione a client Iceberg esterni

Important

Questa funzionalità è disponibile in anteprima pubblica.

È possibile condividere tabelle Delta, tabelle iceberg esterne, viste, viste materializzate e tabelle di streaming con client Iceberg esterni che usano l'API del catalogo REST Apache Iceberg.

Prima della condivisione, verificare di soddisfare i requisiti di condivisione delta necessari per aggiungere l'asset di dati a una condivisione. È inoltre necessario disabilitare i vettori di eliminazione per le tabelle.

Note

Questa funzionalità è diversa dalla condivisione delle tabelle di Iceberg gestite.

Per condividere asset di dati con client Iceberg esterni:

  1. Se si condivide una tabella Delta, configurare ogni tabella Delta con IcebergCompatV2 per esporla come tabella compatibile con Iceberg. Ciò consente la generazione asincrona di metadati Iceberg insieme alle operazioni Delta standard. Verificare di soddisfare i requisiti per la condivisione delle tabelle Delta con i client Iceberg e osservare le limitazioni. Per informazioni su come abilitare le letture Iceberg, vedere Abilitare le letture Iceberg (UniForm).

    Se si condividono dati su Snowflake, il destinatario visualizza solo le tabelle abilitate per l'accesso uniforme. Altre tabelle vengono filtrate.

    Note

    • Usare DESCRIBE HISTORY per verificare che la generazione dei metadati Iceberg sia stata completata prima che la tabella possa essere eseguita tramite query dai client Iceberg.
    • Il tipo di autenticazione OIDC non è supportato.
  2. Aggiungere la risorsa di dati a una condivisione. Per istruzioni dettagliate, consultare:

    Important

    La materializzazione dei dati sul lato provider viene attivata se si condividono visualizzazioni, viste materializzate o tabelle di streaming, che potrebbero causare l'accumulo di costi di calcolo. Per ulteriori informazioni, vedere Come si sostengono e si verificano i costi di Delta Sharing?.

  3. Condividi con il tuo destinatario aperto. Per istruzioni su come creare un destinatario e concedere loro l'accesso alla condivisione, vedere Creare un oggetto destinatario per gli utenti non Databricks usando token di connessione (condivisione aperta).

Concedere ai destinatari l'accesso a una condivisione

Verificare di soddisfare i requisiti prima di concedere ai destinatari l'accesso a una condivisione.

Per istruzioni, vedere Gestire l'accesso alle condivisioni dati di Delta Sharing (per i fornitori). Questa pagina illustra anche come revocare l'accesso di un destinatario a una condivisione.

Visualizzare condivisioni e condividere i dettagli

Verificare di soddisfare i requisiti prima di visualizzare le condivisioni e condividere i dettagli.

Per visualizzare un elenco di condivisioni o dettagli su una condivisione, usare Esplora cataloghi, l'interfaccia della riga di comando di Databricks Unity Catalog o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks.

I dettagli di condivisione includono quanto segue:

  • Proprietario della condivisione, autore, timestamp di creazione, aggiornamento, timestamp aggiornato, commenti.
  • Asset di dati condivisi.
  • Destinatari con accesso alla condivisione.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Aprire la scheda Condivisioni per visualizzare un elenco di condivisioni.

  4. Visualizzare i dettagli della condivisione nella scheda Dettagli .

SQL

Per visualizzare un elenco di condivisioni, eseguire il comando seguente in un notebook o nell'editor di query SQL di Databricks. Facoltativamente, sostituire <pattern> con un LIKE predicato.

SHOW SHARES [LIKE <pattern>];

Per visualizzare i dettagli su una condivisione specifica, eseguire il comando seguente.

DESCRIBE SHARE <share-name>;

Per visualizzare i dettagli su tutte le tabelle, le viste e i volumi in una condivisione, eseguire il comando seguente.

SHOW ALL IN SHARE <share-name>;

CLI

Per visualizzare un elenco di condivisioni, eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks.

databricks shares list

Per visualizzare i dettagli su una condivisione specifica, eseguire il comando seguente.

databricks shares get <share-name>

Visualizzare i destinatari che dispongono delle autorizzazioni per una condivisione

Verificare di soddisfare i requisiti prima di visualizzare i destinatari.

Per visualizzare l'elenco di condivisioni a cui è stato concesso l'accesso a un destinatario, usare Catalog Explorer, il Databricks Unity Catalog CLI o il SHOW GRANTS TO RECIPIENT comando SQL in un notebook di Azure Databricks o nell'editor di SQL di Databricks.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me trovare e selezionare il destinatario.

  4. Passare alla scheda Destinatari per visualizzare l'elenco dei destinatari che possono accedere alla condivisione.

SQL

Eseguire il seguente comando in un notebook o nell'editor di query SQL di Databricks.

SHOW GRANTS ON SHARE <share-name>;

CLI

Eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks.

databricks shares share-permissions <share-name>

Aggiornare le condivisioni

Verificare di soddisfare i requisiti prima di apportare aggiornamenti a una condivisione.

È possibile aggiornare una condivisione nei modi seguenti:

  • Rinominare una condivisione.
  • Rimuovere tabelle, viste, volumi e schemi da una condivisione.
  • Aggiungere o aggiornare un commento in una condivisione.
  • Rinominare l'alias di una tabella (il nome della tabella visualizzato nel destinatario).
  • Abilitare o disabilitare l'accesso ai dati della cronologia di una tabella, consentendo ai destinatari di eseguire query temporali o letture in streaming della tabella.
  • Aggiungere, aggiornare o rimuovere definizioni di partizione.
  • Modificare il proprietario della condivisione.

Per eseguire questi aggiornamenti alle condivisioni, utilizzare Esplora cataloghi, il CLI di Databricks Unity Catalog o i comandi SQL in un notebook di Azure Databricks o nell'editor di query SQL di Databricks. Tuttavia, non è possibile usare Esplora cataloghi per rinominare la condivisione.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione che si vuole aggiornare e fare clic sul nome.

Nella pagina dei dettagli della condivisione eseguire le operazioni seguenti:

  • Fare clic sull'icona Modifica icona modifica accanto al campo Proprietario o Commento per aggiornare questi valori.
  • Fare clic sul pulsante icona del menu kebab in una riga dell'asset per rimuoverlo.
  • Fare clic su Gestisci asset Modifica asset > per aggiornare tutte le altre proprietà:
    • Per rimuovere un asset, deselezionare la casella di controllo accanto all'asset.
    • Per aggiungere, aggiornare o rimuovere definizioni di partizione, fare clic su Opzioni avanzate.

SQL

Eseguire i comandi seguenti in un notebook o nell'editor SQL di Databricks.

Rinominare una condivisione:

ALTER SHARE <share-name> RENAME TO <new-share-name>;

Rimuovere tabelle da una condivisione:

ALTER SHARE share_name REMOVE TABLE <table-name>;

Rimuovere volumi da una condivisione:

ALTER SHARE share_name REMOVE VOLUME <volume-name>;

Aggiungere o aggiornare un commento in una condivisione:

COMMENT ON SHARE <share-name> IS '<comment>';

Aggiungere o modificare partizioni per una tabella in una condivisione:

ALTER SHARE <share-name> ADD TABLE <table-name> PARTITION(<clause>);

Modificare il proprietario della condivisione:

ALTER SHARE <share-name> OWNER TO  '<principal>'

-- Principal must be an account-level user email address or group name.

Abilitare la condivisione della cronologia per una tabella:

ALTER SHARE <share-name> ADD TABLE <table-name> WITH HISTORY;

Per informazioni dettagliate sui parametri di ALTER SHARE, vedere ALTER SHARE.

CLI

Eseguire i comandi seguenti usando l'interfaccia della riga di comando di Databricks.

Rinominare una condivisione:

databricks shares update <share-name> --name <new-share-name>

Rimuovere tabelle da una condivisione:

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "REMOVE",
        "data_object": {
          "name": "<table-full-name>",
          "data_object_type": "TABLE",
          "shared_as": "<table-alias>"
        }
      }
    ]
  }'

Rimuovere volumi da una condivisione (usando l'interfaccia della riga di comando di Databricks 0.210 o versione successiva):

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "REMOVE",
        "data_object": {
          "name": "<volume-full-name>",
          "data_object_type": "VOLUME",
          "string_shared_as": "<volume-alias>"
        }
      }
    ]
  }'

Note

Utilizzare la name proprietà se non è presente alcun alias per il volume. Usare string_shared_as se è presente un alias.

Aggiungere o aggiornare un commento in una condivisione:

databricks shares update <share-name> --comment '<comment>'

Modificare il proprietario della condivisione:

databricks  shares update <share-name> --owner '<principal>'

L'entità principale deve essere l'indirizzo email di un utente a livello di account o il nome di un gruppo.

Considerazioni sull'aggiornamento del proprietario della condivisione

L'utente proprietario della condivisione influisce sul modo in cui vengono valutate le funzionalità di autorizzazione e sicurezza, ad esempio i criteri di controllo degli accessi in base al ruolo. Il trasferimento della proprietà della condivisione a un utente con privilegi elevati consente ai destinatari di avere accesso con privilegi elevati se si dispone di una tabella o uno schema protetto dai criteri di controllo degli accessi in base al ruolo.

Eliminare condivisioni

Quando si elimina una condivisione, i destinatari non possono più accedere ai dati condivisi. Verificare di soddisfare i requisiti prima di eliminare un oggetto condivisione.

Per eliminare una condivisione, utilizzare Catalog Explorer, la CLI di Databricks Unity Catalog, oppure il comando SQL DELETE SHARE in un notebook di Azure Databricks o nell'editor di query SQL di Databricks. È necessario essere un proprietario della quota.

Esploratore di cataloghi

  1. Nell'area di lavoro di Azure Databricks fare clic sull'icona Dati.Catalogo.

  2. Nella parte superiore del riquadro Catalogo, fare clic su sull'icona a forma di ingranaggio. e selezionare Delta Sharing.

    In alternativa, nella pagina Accesso rapido, fare clic sul pulsante Condivisione Delta >.

  3. Nella scheda Condivisi da me individuare la condivisione che si desidera eliminare e fare clic sul nome.

  4. Fare clic sull'icona del menu Kebab. Menu kebab e selezionare Elimina.

  5. Nella finestra di dialogo di conferma fare clic su Elimina.

SQL

Eseguire il seguente comando in un notebook o nell'editor di query SQL di Databricks.

DROP SHARE [IF EXISTS] <share-name>;

CLI

Eseguire il comando seguente usando l'interfaccia della riga di comando di Databricks.

databricks shares delete <share-name>