Condividi tramite


Set configura e gestisci Unity Catalog

Questo articolo illustra come configurare e usare Unity Catalog per gestire i dati nell'area di lavoro di Azure Databricks. È destinato principalmente agli amministratori dell'area di lavoro che usano Unity Catalog per la prima volta. Per set up Unity Catalog usando il provider Databricks Terraform, vedere Automate Unity Catalog setup using Terraform.To set up up Unity Catalog using Terraform provider, see Automate Unity Catalog setup using Terraform.

In questa articolo verranno illustrati:

  • Un'area di lavoro abilitata per Unity Catalog.
  • Calcolo con accesso a Unity Catalog.
  • Gli utenti con l'autorizzazione per accedere e creare oggetti in Unity Catalog.

È anche possibile esaminare altri articoli introduttivi:

Nota

Se si vuole aggiornare un'area di lavoro non Unity-Catalog esistente a Unity Catalog, è possibile trarre vantaggio dall'uso di UCX, un progetto databricks Labs che fornisce un set di flussi di lavoro e utilità per l'aggiornamento di identità, autorizzazioni e tables a Unity Catalog. Vedere Usare le utilità UCX per aggiornare l'area di lavoro a Unity Catalog.

Panoramica dell'abilitazione di Unity Catalog

Per usare Unity Catalog, le aree di lavoro di Azure Databricks devono essere abilitate per Unity Catalog, il che significa che le aree di lavoro sono collegate a un metastore Catalog Unity, il contenitore di primo livello per i metadati di Unity Catalog.

Il modo in cui gli amministratori set up Unity Catalog dipende dal fatto che l'area di lavoro sia stata abilitata automaticamente per Unity Catalog o richieda l'abilitazione manuale.

abilitazione automatica di Unity Catalog

Databricks ha iniziato ad abilitare automaticamente le nuove aree di lavoro per Unity Catalog il 9 novembre 2023, con un'implementazione graduale tra gli account. Le aree di lavoro abilitate automaticamente hanno le proprietà seguenti:

  • Un metastore Unity Catalog con provisioning automatico (a meno che non esista già un metastore Unity Catalog per la regione dell'area di lavoro e il metastore sia abilitato per l'assegnazione automatica dell'area di lavoro).

  • Privilegi predefiniti per gli amministratori dell'area di lavoro, ad esempio la possibilità di creare un catalog o una connessione di database esterna.

  • Nessun amministratore del metastore (a meno che non sia stato utilizzato un metastore Unity Catalog esistente oppure un amministratore del metastore sia già stato assegnato).

  • Nessuna risorsa di archiviazione a livello di metastore per le tables gestite e le volumes gestite (a meno che non sia stato usato un metastore Catalog esistente con l'archiviazione a livello di metastore).

  • Un'area di lavoro catalog, che, quando è stata originariamente configurata, è chiamata come la tua area di lavoro.

    Tutti gli utenti dell'area di lavoro possono creare asset nel defaultschema in questo catalog. Per impostazione predefinita, questa catalog è associata al tuo spazio di lavoro, il che significa che è accessibile solo attraverso di esso. Il provisioning automatico dell'area di lavoro catalog viene implementato gradualmente su tutti gli account durante la creazione dell'area di lavoro.

Queste configurazioni predefinite funzionano correttamente per la maggior parte delle aree di lavoro, ma possono essere tutte modificate da un amministratore dell'area di lavoro o da un amministratore dell'account. Ad esempio, un amministratore dell'account può assegnare un amministratore del metastore e creare una risorsa di archiviazione a livello di metastore e un amministratore dell'area di lavoro può modificare l'area di lavoro catalog nome e accesso.

Cosa accade se l'area di lavoro non è stata abilitata automaticamente per Unity Catalog?

Se l'area di lavoro non è stata abilitata automaticamente per Unity Catalog, un amministratore dell'account o un amministratore del metastore deve collegare manualmente l'area di lavoro a un metastore Unity Catalog nella stessa regione. Se non esiste alcun metastore Unity Catalog nella regione, un amministratore dell'account deve crearne uno. Per istruzioni, vedere Creare un metastore UnityCatalog .

Come è possibile sapere se l'area di lavoro è stata abilitata per Unity Catalog?

Per confermare se l'area di lavoro è abilitata per Unity Catalog, chiedi a un amministratore dell'area di lavoro di Azure Databricks o a un amministratore dell'account di verificare per te. Vedere anche Passaggio 1: Verificare che l'area di lavoro sia abilitata per Unity Catalog.

Come è possibile sapere se l'area di lavoro include un'area di lavoro catalog?

Alcune nuove aree di lavoro hanno un'area di lavoro catalog, che, quando viene inizialmente fornita, è denominata in base al nome della tua area di lavoro. Per determinare se l'area di lavoro ne ha una, fare clic sull'icona CatalogCatalog nella barra laterale per aprire Catalog Explorer e cercare un catalog che usa il nome dell'area di lavoro come nome catalog.

Nota

L'area di lavoro catalog è simile a qualsiasi altra catalog in Unity Catalog: un amministratore dell'area di lavoro può modificare il nome, modificarne la proprietà o persino eliminarla. Tuttavia, subito dopo la creazione dell'area di lavoro, porta il nome dell'area di lavoro

Operazioni preliminari

Prima di iniziare le attività descritte in questo articolo, è necessario acquisire familiarità con i concetti di base di Unity Catalog, tra cui metastores, ruoli di amministratore e archiviazione gestita. Consulta Che cos'è Unity Catalog?.

È anche necessario verificare di possedere i seguenti requisiti:

  • Un'area di lavoro di Azure Databricks sul piano Premium.

  • I seguenti ruoli e privilegi, che dipendono dallo stato dell'area di lavoro:

    • Amministratore dell'area di lavoro: se l'area di lavoro è stata abilitata per Unity Catalog automaticamente al momento della creazione, è necessario essere un amministratore dell'area di lavoro per completare le attività necessarie.

    • Amministratore account: se l'area di lavoro non è già abilitata per Unity Catalog, un amministratore account deve collegare l'area di lavoro al metastore.

      Se non c'è alcun metastore Unity Catalog nella stessa regione del workspace, anche un amministratore dell'account deve creare il metastore Unity Catalog.

      Istruzioni per determinare se esiste un metastore per lo spazio dell'area di lavoro, insieme alle istruzioni per la creazione di un metastore, vedere questo articolo.

    Vedere privilegi di amministratore di in Unity Catalog e abilitazione automatica di Unity Catalog.

Passaggio 1: Verificare che l'area di lavoro sia abilitata per Unity Catalog

In questo passaggio si determina se l'area di lavoro è già abilitata per Unity Catalog, where l'abilitazione viene definita come having un metastore Catalog Unity collegato all'area di lavoro. Se l'area di lavoro non è abilitata per Unity Catalog, è necessario abilitare manualmente l'area di lavoro per Unity Catalog. Consulta Passaggi successivi se l'area di lavoro non è abilitata per Unity Catalog.

Per confermare, usare uno dei metodi descritti di seguito.

Usare la console dell'account per confermare l'abilitazione di Unity Catalog

  1. Come amministratore di un account Azure Databricks, accedere alla console dell'account.
  2. Fare clic su Icona aree di lavoroAree di lavoro.
  3. Trova la tua area di lavoro e controlla il Metastore column. Se è presente un nome di metastore, l'area di lavoro è collegata a un metastore Unity Catalog e quindi abilitata per Unity Catalog.

Eseguire una query SQL per confermare l'abilitazione di Unity Catalog

Eseguire la query SQL seguente nell'editor di query SQL o in un notebook collegato a un cluster che usa la modalità di accesso condiviso o utente singolo. Vedere Modalità di accesso usata. Non è necessario alcun ruolo di amministratore.

SELECT CURRENT_METASTORE();

Se la query restituisce un ID metastore simile al seguente, l'area di lavoro viene collegata a un metastore di Unity Catalog e quindi abilitata per Unity Catalog.

Output del metastore corrente

Passaggi successivi se l'area di lavoro non è abilitata per Unity Catalog

Se l'area di lavoro non è abilitata per Unity Catalog (collegata a un metastore), il passaggio successivo dipende dal fatto che abbiate già definito un Unity metastore Catalog per la regione dell'area di lavoro:

  • Se il tuo account ha già un metastore Catalog Unity definito per la regione della tua area di lavoro, basta collegare la tua area di lavoro al metastore esistente. Vai a e abilita l'area di lavoro per Unity Catalog.
  • Se non c'è un metastore di Unity Catalog definito per la tua area di lavoro, è necessario creare un metastore e quindi associarlo all'area di lavoro. Passare a creare un metastore Unity Catalog.

Quando l'area di lavoro è abilitata per Unity Catalog, andare al passaggio successivo.

Passaggio 2: aggiungere utenti e assegnare il ruolo di amministratore dell'area di lavoro

L'utente che crea l'area di lavoro viene aggiunto automaticamente come utente dell'area di lavoro con il ruolo di amministratore dell'area di lavoro, ovvero un utente nel gruppo locale dell'area di lavoro admins. Gli amministratori dell'area di lavoro possono aggiungere e invitare utenti all'area di lavoro, assegnare il ruolo di amministratore dell'area di lavoro ad altri utenti e creare entità servizio e gruppi.

Anche gli amministratori di account possono aggiungere utenti, entità servizio e gruppi all'area di lavoro. Possono grant i ruoli di amministratore dell'account e di amministratore del metastore.

Per informazioni dettagliate, vedere Gestire gli utenti.

Può essere utile gestire l'accesso degli utenti ad Azure Databricks configurando il provisioning da Microsoft Entra ID. Per istruzioni complete, vedere utenti e gruppi di Sync da Microsoft Entra ID.

Passaggio 3: creare cluster o magazzini SQL che gli utenti possono usare per eseguire query e creare oggetti

Per eseguire i carichi di lavoro di Unity Catalog, le risorse di calcolo devono essere conformi a determinati requisiti di sicurezza. Le risorse di calcolo non conformi non possono accedere ai dati o ad altri oggetti in Unity Catalog. I warehouse SQL sono sempre conformi ai requisiti di Unity Catalog, ma alcune modalità di accesso al cluster non lo sono. Vedere Modalità di accesso usata.

In qualità di amministratore dell'area di lavoro, è possibile scegliere di rendere la creazione di calcolo limitata agli amministratori o consentire agli utenti di creare i propri magazzini e cluster di SQL. È anche possibile creare criteri di cluster che consentono agli utenti di creare i propri cluster utilizzando specifiche conformi a Unity Catalogche si impongono. Vedere Autorizzazioni di calcolo e Creare e gestire i criteri di calcolo.

Passaggio 4: privilegi di Grant agli utenti

Per creare oggetti e accedervi in Unity Catalogcatalogs e schemi, un utente deve disporre dell'autorizzazione per farlo. Questa sezione descrive i privilegi utente e amministratore concessi per impostazione predefinita ad alcune aree di lavoro e descrive come grant privilegi aggiuntivi.

Privilegi utente predefiniti

Alcune aree di lavoro hanno privilegi utente (non amministratore) predefiniti al momento dell'avvio:

  • Se il tuo spazio di lavoro è stato avviato con uno spazio di lavoro con provisioning automatico catalog, tutti gli utenti dello spazio di lavoro possono creare oggetti nello spazio di lavoro di catalogdefaultschema.

    Per informazioni su come determinare se l'area di lavoro dispone di un'area di lavoro catalog, vedere Come è possibile sapere se l'area di lavoro include un'area di lavoro catalog?.

  • Se l'area di lavoro è stata abilitata manualmente per Unity Catalog, viene configurato automaticamente un maincatalog.

    Gli utenti dell'area di lavoro hanno il privilegio di USE CATALOG per l'maincatalog, che non grant la possibilità di creare o select da qualsiasi oggetto nell'catalog, ma è un prerequisito per l'uso di qualsiasi oggetto nel catalog. L'utente che ha creato il metastore possiede il maincatalog per impostazione predefinita e può sia trasferire la proprietà che l'accesso grant ad altri utenti.

    Se l'archiviazione metastore viene aggiunta dopo la creazione del metastore, non viene fornito nessun maincatalog.

In altre aree di lavoro, nessun catalogs è creato per impostazione predefinita e nessun privilegio utente non amministratore è abilitato per impostazione predefinita. Un amministratore dell'area di lavoro deve creare il primo accesso degli utenti catalog e grant ad esso e agli oggetti al suo interno. Passare a Passaggio 5: creare un nuovo catalogs e nuovi schemi prima di completare i passaggi descritti in questa sezione.

Privilegi predefiniti dell'amministratore

In alcune aree di lavoro, gli amministratori hanno dei privilegi per impostazione predefinita al momento dell'avvio:

  • Se la tua area di lavoro era stata abilitata per Unity Catalog automaticamente:
    • Gli amministratori dell'area di lavoro possono creare nuovi catalogs e oggetti in nuovi catalogs, e gestire l'accesso a essi con grant.
    • Non ci sono amministratori del metastore per impostazione predefinita.
    • Gli amministratori dell'area di lavoro sono proprietari dell'area di lavoro catalog (se presente) e possono grant l'accesso a tale catalog e a qualsiasi oggetto in tale catalog.
  • Se la tua area di lavoro è stata abilitata manualmente per Unity Catalog:
    • Per impostazione predefinita, gli amministratori dell'area di lavoro non dispongono di privilegi speciali di Unity Catalog.
    • Gli amministratori del metastore devono esistere e possono creare qualsiasi oggetto Unity Catalog e assumere il controllo di qualsiasi oggetto Unity Catalog.

Per un list di privilegi di oggetto aggiuntivi concessi agli amministratori delle aree di lavoro nelle aree di lavoro Catalog di Unity abilitate automaticamente, vedere privilegi di amministratore delle aree di lavoro quando queste sono abilitate automaticamente per Unity Catalog.

Grant privilegi

Per l'accesso a oggetti diversi da quelli elencati nelle sezioni precedenti, un utente con privilegi deve eseguire grant per tale accesso.

Ad esempio, per grant un gruppo la possibilità di creare nuovi schemi in my-catalog, il proprietario catalog può eseguire quanto segue nell'editor SQL o in un notebook:

GRANT CREATE SCHEMA ON my-catalog TO `data-consumers`;

Se l'area di lavoro è stata abilitata automaticamente per Unity Catalog, l'amministratore dell'area di lavoro è proprietario dell'area di lavoro catalog e può grant la possibilità di creare nuovi schemi:

GRANT CREATE SCHEMA ON <workspace-catalog> TO `data-consumers`;

È anche possibile gestire le autorizzazioni grant e revoke usando Catalog Explorer.

Importante

Non è possibile grant privilegi per i gruppi di users o admins locali dell'area di lavoro. Per avere i privilegi grant sui gruppi, questi devono essere gruppi a livello di account.

Per informazioni dettagliate sulla gestione dei privilegi in Unity Catalog, vedere Gestire i privilegi in Unity Catalog.

Passaggio 5: Creare catalogs e nuovi schemi

Per iniziare a usare Unity Catalog, è necessario avere almeno un catalog definito. Catalogs sono l'unità principale per l'isolamento e l'organizzazione dei dati in Unity Catalog. Tutti gli schemi e tables si trovano in catalogs, così come volumes, viewse i modelli.

Alcuni spazi di lavoro non hanno provisioning automatico catalog. Per usare Unity Catalog, un amministratore dello spazio di lavoro deve creare il primo catalog per tali spazi di lavoro.

Altre aree di lavoro hanno accesso a un catalog con provisioning preliminare, a cui gli utenti possono accedere per iniziare le get (sia l'area di lavoro catalog sia l'maincatalog, a seconda della modalità di abilitazione dell'area di lavoro per Unity Catalog). Man mano che si aggiungono altri asset di dati e intelligenza artificiale in Azure Databricks, è possibile creare altri catalogs per raggruppare tali asset in modo da semplificare la governance logica dei dati.

Per consigli su come usare catalogs e schemi per organizzare i dati e gli asset di intelligenza artificiale, vedere Unity Catalog procedure consigliate.

Come amministratore del metastore, amministratore dell'area di lavoro (solo aree di lavoro abilitate automaticamente) o altro utente con il privilegio CREATE CATALOG, è possibile creare nuovi catalogs nel metastore. Quando si esegue questa operazione, è necessario:

  1. Creare di archiviazione gestita per il nuovo catalog.

    L'archiviazione gestita è una posizione di archiviazione dedicata nell'account Azure per i tables gestiti e i volumesgestiti. È possibile assegnare l'archiviazione gestita al metastore, a catalogse agli schemi. Quando un utente crea un table, i dati vengono archiviati nella posizione di archiviazione più inferiore nella gerarchia. Ad esempio, se viene definita una posizione di archiviazione per il metastore e catalog ma non per il schema, i dati vengono archiviati nella posizione definita per l'catalog.

    Databricks consiglia di assegnare l'archiviazione gestita a livello di catalog, perché catalogs in genere rappresentano unità logiche di isolamento dei dati. Se hai familiarità con i dati in più catalogs che condividono la stessa posizione di archiviazione, puoi impostare come predefinita la posizione di archiviazione a livello di metastore. Se l'area di lavoro è stata abilitata automaticamente per Unity Catalog, per impostazione predefinita non è disponibile alcuna risorsa di archiviazione a livello di metastore. Un amministratore dell'account ha la possibilità di configurare l'archiviazione a livello di metastore. Vedere Specificare un percorso di archiviazione gestito in Unity Catalog e Aggiungere archiviazione gestita a un metastore esistente.

    L'assegnazione dell'archiviazione gestita a un catalog richiede il fatto che si crei:

    • Delle credenziali di archiviazione.
    • Una posizione esterna che faccia riferimento alle credenziali di archiviazione.

    Per un'introduzione a questi oggetti e istruzioni per la creazione di questi oggetti, vedere Connettersi all'archiviazione di oggetti cloud e ai servizi usando Unity Catalog.

  2. Associare il nuovo catalog al proprio workspace se si desidera limit l'accesso da altri workspace che condividono lo stesso metastore.

    Vedere Limitcatalog l'accesso a aree di lavoro specifiche.

  3. Grant privilegi su l'catalog.

Per istruzioni dettagliate, vedere Creare catalogs.

Catalog esempio di creazione

Nell'esempio seguente viene illustrata la creazione di un catalog con l'archiviazione gestita, seguita dalla concessione del privilegio SELECT al catalog:

CREATE CATALOG IF NOT EXISTS mycatalog
  MANAGED LOCATION 'abfss://mycontainer@<myaccount.dfs.core.windows.net//depts/finance';

GRANT SELECT ON mycatalog TO `finance-team`;

Per altri esempi, incluse istruzioni per creare catalogs tramite Esplora Catalog, vedere Creare catalogs.

Creare un schema

Gli schemi rappresentano raggruppamenti più granulari ,ad esempio reparti o progetti, rispetto a catalogs. Tutti gli oggetti tables e altri Catalog Unity nel catalog sono contenuti negli schemi. Come proprietario di un nuovo catalog, potrebbe voler creare gli schemi nel catalog. È tuttavia consigliabile delegare la possibilità di creare schemi ad altri utenti assegnando loro il privilegio CREATE SCHEMA per l'catalog.

Per istruzioni dettagliate, vedere Creare schemi.

(Facoltativo) Assegnare il ruolo di amministratore del metastore

Se l'area di lavoro è stata abilitata automaticamente per Unity Catalog, di default non viene assegnato alcun ruolo di amministratore del metastore. Gli amministratori di metastore hanno alcuni privilegi che gli amministratori dell'area di lavoro non hanno.

Se necessario, è possibile assegnare un amministratore del metastore:

Per informazioni dettagliate sul ruolo di amministratore del metastore e istruzioni per assegnarlo, vedere Assegnare un amministratore del metastore.

Aggiornare tables nel metastore Hive a Unity Catalogtables

Se l'area di lavoro era operativa prima che venisse abilitata a Unity Catalog, è probabile abbia un metastore Hive che contiene dati che desideri continuare a utilizzare. Databricks consiglia di eseguire la migrazione del tables gestito dal metastore Hive al metastore di Unity Catalog.

Consulta per aggiornare Hive tables e views a Unity Catalog, e . Usa le utilità UCX per aggiornare l'area di lavoro a Unity Catalog,.

(Facoltativo) Continuare a lavorare con il metastore Hive

Se l'area di lavoro dispone di un metastore Hive che contiene dati che si desidera continuare a usare e si sceglie di non seguire la raccomandazione di aggiornare il tables gestito dal metastore Hive al metastore di Unity Catalog metastore, è possibile continuare a usare i dati nel metastore Hive insieme ai dati nel metastore unity Catalog.

Il metastore Hive è rappresentato nelle interfacce Unity Catalog come una catalog denominata hive_metastore. Per continuare a usare i dati nel metastore Hive senza having per update query per specificare il hive_metastorecatalog, è possibile set l'catalog predefinita dell'area di lavoro per hive_metastore. Vedi Gestisci il catalogpredefinito.

A seconda del momento in cui l'area di lavoro è stata abilitata per Unity Catalog, il catalog predefinito potrebbe essere già hive_metastore.

(Facoltativo) Creare un archivio a livello di metastore

Anche se Databricks consiglia di creare un percorso di archiviazione gestito separato per ogni catalog nel metastore (ed è possibile eseguire le stesse operazioni per gli schemi), è possibile scegliere di creare una posizione gestita a livello di metastore e usarla come risorsa di archiviazione per più schemi e catalogs.

Se si vuole un'archiviazione a livello di metastore, è necessario assegnare anche un amministratore del metastore. Vedere (Facoltativo) Assegnare il ruolo di amministratore del metastore.

L'archiviazione a livello di metastore è necessaria solo se si usa un'integrazione del prodotto partner Databricks che si basa su percorsi di gestione temporanea personali (deprecati).

Per altre informazioni sulla gerarchia delle posizioni di archiviazione gestita, vedere Dati separati fisicamente nell'archiviazione.

Per sapere come aggiungere uno storage a livello di metastore a metastores che non ne hanno, vedere Aggiungere uno storage gestito a un metastore esistente.

Nota

La maggior parte delle aree di lavoro abilitate per Unity Catalog prima del 9 novembre 2023 ha una radice di archiviazione a livello di metastore.

Passaggi successivi