Condividi tramite


Aggiornare un'area di lavoro di Azure Databricks a Unity Catalog

Questa pagina offre una panoramica su come aggiornare un'area di lavoro non-Unity Catalog a Unity Catalog. Fornisce inoltre istruzioni per la migrazione dal metastore Hive locale dell'area di lavoro legacy.

Panoramica dei passaggi di aggiornamento

Per eseguire l'aggiornamento a Unity Catalog, è necessario:

  1. Effettua il provisioning delle identità (utenti, gruppi e entità servizio) direttamente nell'account Azure Databricks, se non lo stai già facendo. Disattivare qualsiasi approvvigionamento delle identità a livello di area di lavoro.
  2. Converti i gruppi locali dello spazio di lavoro in gruppi a livello di account. Unity Catalog centralizza la gestione delle identità a livello di account.
  3. Collegare l'area di lavoro a un metastore di Unity Catalog. Se non esiste alcun metastore per l'area di lavoro, un amministratore dell'account deve crearne uno.
  4. Aggiornare tabelle e viste gestite nel metastore Hive a Unity Catalog.
  5. A livello di account, concedere agli utenti, ai gruppi o alle entità del servizio l'accesso alle tabelle aggiornate.
  6. Aggiornare le query e i processi per fare riferimento alle nuove tabelle di Unity Catalog anziché alle vecchie tabelle del metastore Hive.
  7. Disattiva il metastore Hive. Vedere Disabilitare l'accesso al metastore Hive usato dall'area di lavoro di Azure Databricks.

UCX, un progetto di Databricks Labs, fornisce strumenti che ti aiutano ad aggiornare il tuo spazio di lavoro non basato su Unity Catalog a Unity Catalog. UCX è una buona scelta per le migrazioni su larga scala. Vedi Utilizza le utilità UCX per aggiornare il tuo spazio di lavoro al Unity Catalog.

Prima di iniziare

Prima di iniziare, è necessario acquisire familiarità con i concetti di base del catalogo unity, inclusi i metastore e l'archiviazione gestita. Consulta Che cos'è il Catalogo Unity?.

È anche necessario verificare di possedere i seguenti requisiti:

  • Per la maggior parte dei passaggi di installazione, è necessario essere un amministratore dell'account Azure Databricks. Per qualsiasi attività che segue per cui sono presenti altri requisiti di autorizzazione, vengono elencati nella documentazione specifica dell'attività.

    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 degli amministratori di account aggiuntivi (che possono a loro volta assegnare altri amministratori di 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.

Eseguire l'aggiornamento alle demo di Unity Catalog

Guardare le seguenti brevi demo guidate per visualizzare le attività di aggiornamento chiave in azione. Ogni demo illustra un passaggio specifico e collegamenti alla documentazione dettagliata, se applicabile.

In alternativa, è possibile seguire la demo Usare UCX per eseguire l'aggiornamento a Unity Catalog.

Effettuare il provisioning di utenti, gruppi ed entità servizio nell'account

Unity Catalog fa riferimento alle identità a livello di account. Prima di collegare un metastore all'area di lavoro, è necessario eseguire le operazioni seguenti:

  • Se si usa SCIM per effettuare il provisioning di utenti, gruppi e entità servizio dal provider di identità all'area di lavoro, disattivarlo e configurare il provisioning nell'account Azure Databricks. Vedere Sincronizzare le identità dal provider di identità e Identità.

  • Aggiornare qualsiasi automazione configurata per gestire utenti, gruppi e entità servizio, ad esempio connettori di provisioning SCIM e automazione Terraform, in modo che facciano riferimento agli endpoint dell'account anziché agli endpoint dell'area di lavoro. Vedere il provisioning SCIM a livello di account e a livello di area di lavoro.

Convertire i gruppi locali dell'area di lavoro in gruppi a livello di account

Vedi Migrare i gruppi locali del workspace ai gruppi dell'account.

Collegare l'area di lavoro a un metastore

Se l'area di lavoro non è abilitata per Unity Catalog (collegato a un metastore), il passaggio successivo dipende dall'avere già definito un metastore di Unity Catalog per la regione dell'area di lavoro:

Aggiornare le tabelle nel metastore Hive alle tabelle del Catalogo Unity

Se l'area di lavoro era nel servizio prima che fosse abilitata per Unity Catalog, ha un metastore Hive che probabilmente contiene dati che si desidera continuare a usare. Databricks consiglia di aggiornare le tabelle gestite dal metastore Hive al metastore di Unity Catalog.

Opzione 1: Federare, quindi aggiornare le tabelle esterne

L'approccio raccomandato consiste per prima cosa nel federare il metastore Hive come catalogo esterno, per poi aggiornare in loco le tabelle esterne. Questo processo in due passaggi consente di eseguire la migrazione di tabelle senza spostamento dei dati mantenendo al tempo stesso la cronologia delle tabelle, la configurazione, le autorizzazioni e le viste.

Prima di tutto, federate il metastore Hive come catalogo esterno in Unity Catalog. In questo modo è possibile accedere alle tabelle esistenti tramite il catalogo unity e prepararle per l'aggiornamento.

Per istruzioni sulla federazione del metastore Hive, vedere Federazione del metastore Hive: abilitare il catalogo Unity per gestire le tabelle registrate in un metastore Hive.

Annotazioni

Se si sceglie di non aggiornare le tabelle e si vuole continuare a lavorare con il catalogo federato in modo permanente, è possibile farlo. Tuttavia, Databricks consiglia di completare l'aggiornamento per sfruttare al meglio le funzionalità di Unity Catalog.

Dopo aver federato il metastore Hive, è possibile aggiornare le tabelle esterne alle tabelle di Unity Catalog senza alcun spostamento dei dati. Questo flusso di lavoro aggiorna le tabelle sul posto, mantenendo la cronologia delle tabelle, la configurazione, le autorizzazioni e le viste.

Per aggiornare una tabella esterna a una tabella gestita di Unity Catalog, eseguire il comando seguente:

ALTER TABLE <foreign_catalog>.<schema>.<table_name> SET MANAGED;

Databricks consiglia l'aggiornamento a una tabella gestita per sbloccare l'ottimizzazione predittiva di Unity Catalog, che include la manutenzione automatica (compattazione, clustering, pulizia) e miglioramenti delle prestazioni. Per aggiornare invece una tabella esterna a una tabella esterna del catalogo Unity, eseguire il comando seguente:

ALTER TABLE <foreign_catalog>.<schema>.<table_name> SET EXTERNAL;

Dopo aver eseguito la migrazione delle tabelle e non ci si basa più sulla federazione nel catalogo esterno, è possibile rimuovere la connessione:

ALTER CATALOG <foreign_catalog> DROP CONNECTION;

Per altri dettagli su questo flusso di lavoro, vedere Convertire una tabella esterna in una tabella del catalogo Unity gestita.

Opzione 2: Aggiornare direttamente le tabelle

Se si sceglie di non usare il flusso di lavoro di aggiornamento basato su federazione, è possibile aggiornare le tabelle direttamente usando SYNC o CREATE TABLE AS SELECT. Vedi Aggiornamento delle tabelle e delle viste Hive al Unity Catalog.

Concedere l'accesso alle tabelle aggiornate o federate

Concedere l'accesso alle nuove tabelle agli utenti, ai gruppi o ai principali del servizio a livello di account. Consulta Gestione dei privilegi in Unity Catalog.

Aggiornare le query e i processi per funzionare con le vostre tabelle potenziate e i percorsi ai dati aggiornati

Durante la transizione dal metastore Hive locale dell'area di lavoro al catalogo Unity, è possibile continuare a usare query e processi che fanno riferimento ai dati registrati nel metastore Hive, usando la federazione del metastore Hive (scelta consigliata) o la sintassi descritta in Usare il metastore Hive legacy insieme a Unity Catalog. Tuttavia, alla fine è necessario aggiornare tutte le query e i processi per usare tabelle e sintassi del catalogo Unity.

Analogamente, aggiornare query e attività che utilizzano l'accesso ai file basato su percorso per usare invece i volumi di Unity Catalog.

Per ulteriori consigli dettagliati, vedere Aggiornare i processi quando si aggiornano le aree di lavoro legacy a Unity Catalog.