Creare un metastore di Unity Catalog
Questo articolo illustra come creare un metastore del catalogo Unity e collegarlo alle aree di lavoro.
Importante
Per le aree di lavoro abilitate automaticamente per Unity Catalog, le istruzioni in questo articolo non sono necessarie. Databricks ha iniziato ad abilitare automaticamente nuove aree di lavoro per Unity Catalog il 9 novembre 2023, con un'implementazione graduale tra gli account. È necessario seguire le istruzioni in questo articolo solo se si dispone di un'area di lavoro e non si dispone già di un metastore nell'area di lavoro. Per determinare se un metastore esiste già nell'area, vedere Abilitazione automatica del catalogo Unity.
Un metastore è il contenitore di primo livello per i dati in Unity Catalog. I metastore del catalogo Unity registrano i metadati relativi a oggetti a protezione diretta ,ad esempio tabelle, volumi, percorsi esterni e condivisioni, e le autorizzazioni che regolano l'accesso a tali oggetti. Ogni metastore espone uno spazio dei nomi a tre livelli (catalog
.schema
.table
) in base al quale è possibile organizzare i dati. È necessario disporre di un metastore per ogni area in cui opera l'organizzazione. Per usare Unity Catalog, gli utenti devono trovarsi in un'area di lavoro collegata a un metastore nella propria area.
Per creare un metastore, eseguire le operazioni seguenti:
Nell'account Azure creare facoltativamente un percorso di archiviazione per l'archiviazione a livello di metastore di tabelle e volumi gestiti.
Per informazioni su come decidere se è necessaria l'archiviazione a livello di metastore, vedere (Facoltativo) Creare un archivio a livello di metastore e i dati sono separati fisicamente nell'archiviazione.
Nell'account Azure creare un'identità gestita di Azure o un'entità servizio che concede l'accesso a tale posizione di archiviazione.
In Azure Databricks creare il metastore, collegare il percorso di archiviazione e assegnare le aree di lavoro al metastore.
Nota
Oltre agli approcci descritti in questo articolo, è anche possibile creare un metastore usando il provider Databricks Terraform, in particolare la risorsa databricks_metastore . Per consentire a Unity Catalog di accedere al metastore, usare databricks_metastore_data_access. Per collegare le aree di lavoro a un metastore, usare databricks_metastore_assignment.
Operazioni preliminari
Prima di iniziare, è necessario acquisire familiarità con i concetti di base del catalogo unity, inclusi i metastore e l'archiviazione gestita. Vedere Che cos'è Unity Catalog?.
È anche necessario verificare di soddisfare i requisiti seguenti per tutti i passaggi di installazione:
È necessario essere un amministratore dell'account in Azure Databricks.
Il primo amministratore dell'account Azure Databricks deve essere un amministratore globale di Microsoft Entra ID al momento dell'accesso alla console dell'account Azure Databricks. Al primo accesso, l'utente diventa un amministratore dell'account Azure Databricks e non ha più il ruolo di amministratore globale di Microsoft Entra ID per accedere all'account Azure Databricks. Il primo amministratore dell'account può assegnare gli utenti nel tenant di Microsoft Entra ID come amministratori di account aggiuntivi (che possono assegnare più amministratori account). Gli amministratori dell'account aggiuntivi non richiedono ruoli specifici in Microsoft Entra ID.
Le aree di lavoro collegate al metastore devono trovarsi nel piano Azure Databricks Premium.
Se si vuole configurare l'archiviazione radice a livello di metastore, è necessario disporre dell'autorizzazione per creare quanto segue nel tenant di Azure:
- Un account di archiviazione da usare con Azure Data Lake Storage Gen2. Vedere Creare un account di archiviazione da usare con Azure Data Lake Storage Gen2.
- Nuova risorsa per contenere un'identità gestita assegnata dal sistema. A tale scopo, è necessario essere un collaboratore o proprietario di un gruppo di risorse in qualsiasi sottoscrizione nel tenant.
Passaggio 1 (facoltativo): Creare un contenitore di archiviazione per l'archiviazione gestita a livello di metastore
In questo passaggio, facoltativo, si crea un account di archiviazione e un contenitore per archiviare i dati della tabella gestita e del volume a livello di metastore. Per determinare se è necessaria l'archiviazione a livello di metastore, vedere (Facoltativo) Creare un archivio a livello di metastore.
Creare un account di archiviazione per Azure Data Lake Storage Gen2.
Questo account di archiviazione conterrà tabelle e volumi gestiti di Unity Catalog. Deve trattarsi di un account Azure Data Lake Storage Gen2 nella stessa area delle aree di lavoro di Azure Databricks. Vedere Creare un account di archiviazione da usare con Azure Data Lake Storage Gen2.
Creare un contenitore di archiviazione che conterrà le tabelle gestite e i dati del volume a livello di metastore.
È possibile creare un solo metastore per area. È necessario usare la stessa area per il metastore e il contenitore di archiviazione.
Questo percorso di archiviazione a livello di metastore può essere sottoposto a override a livello di catalogo e schema. Vedere Specificare un percorso di archiviazione gestito nel catalogo unity.
Prendere nota dell'URI ADLSv2 per il contenitore, nel formato seguente:
abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/<metastore-name>
Nei passaggi seguenti sostituire
<storage-container>
con questo URI.
Passaggio 2 (facoltativo): Creare un'identità gestita per accedere al percorso di archiviazione gestito
In questo passaggio, obbligatorio solo se è stato completato il passaggio 1, creare un connettore di accesso di Azure Databricks che contiene un'identità gestita e concedere l'accesso al contenitore di archiviazione.
Seguire le istruzioni in Usare le identità gestite di Azure nel catalogo unity per accedere all'archiviazione.
Nota
È possibile usare un'identità gestita di Azure o un'entità servizio come identità che consente l'accesso al contenitore di archiviazione del metastore. Databricks consiglia vivamente le identità gestite, perché non richiedono di mantenere le credenziali o ruotare i segreti e consentono di connettersi a un account Azure Data Lake Storage Gen2 protetto da un firewall di archiviazione. Per usare un'entità servizio, vedere Creare un'archiviazione gestita del catalogo Unity usando un'entità servizio (legacy).
Passaggio 3: Creare il metastore e collegare un'area di lavoro
Ogni area di Azure Databricks richiede il proprio metastore del catalogo Unity.
Si crea un metastore per ogni area in cui opera l'organizzazione. È possibile collegare ognuno di questi metastore a livello di area a un numero qualsiasi di aree di lavoro in tale area. Ogni area di lavoro collegata ha la stessa visualizzazione dei dati nel metastore e il controllo di accesso ai dati può essere gestito tra aree di lavoro. È possibile accedere ai dati in altri metastore usando la condivisione delta.
Se si sceglie di creare l'archiviazione a livello di metastore, il metastore userà il contenitore di archiviazione e l'identità gestita di Azure creata nei passaggi precedenti.
Per creare un metastore:
Se si sceglie di creare l'archiviazione a livello di metastore, assicurarsi di avere il percorso del contenitore di archiviazione e l'ID risorsa del connettore di accesso di Azure Databricks creato nell'attività precedente.
Accedere all'area di lavoro come amministratore dell'account.
Fare clic sul nome utente nella barra superiore dell'area di lavoro di Azure Databricks e selezionare Gestisci account.
Accedere alla console dell'account Azure Databricks.
Fare clic su Catalogo.
Fare clic su Crea metastore.
Immetti gli elementi seguenti:
Nome del metastore.
Area in cui verrà distribuito il metastore.
Deve trovarsi nella stessa area delle aree di lavoro che si desidera usare per accedere ai dati. Se si sceglie di creare un contenitore di archiviazione per l'archiviazione a livello di metastore, tale area deve essere la stessa.
(Facoltativo) Percorso di ADLS Gen 2: immettere il percorso del contenitore di archiviazione che verrà usato come risorsa di archiviazione radice per il metastore.
Il
abfss://
prefisso viene aggiunto automaticamente.(Facoltativo) ID connettore di accesso: immettere l'ID risorsa del connettore di accesso di Azure Databricks nel formato:
/subscriptions/12f34567-8ace-9c10-111c-aea8eba12345c/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
Cliccare su Crea.
Quando richiesto, selezionare aree di lavoro da collegare al metastore.
Per informazioni dettagliate, vedere Abilitare un'area di lavoro per il catalogo unity.
Trasferire il ruolo di amministratore del metastore a un gruppo.
L'utente che crea un metastore è il proprietario, detto anche amministratore del metastore. L'amministratore del metastore può creare oggetti di primo livello nel metastore, ad esempio cataloghi e può gestire l'accesso alle tabelle e ad altri oggetti. Databricks consiglia di riassegnare il ruolo di amministratore del metastore a un gruppo. Vedere Assegnare un amministratore del metastore.
Abilitare la gestione di Caricamenti in volumi gestiti in Azure Databricks.
Azure Databricks usa la condivisione di risorse tra le origini (CORS) per caricare i dati nei volumi gestiti in Unity Catalog. Vedere Configurare l'account di archiviazione del catalogo Unity per CORS.