Migra i metadati di Dataproc Metastore a BigLake Metastore

Questo documento spiega come utilizzare lo strumento di migrazione di BigLake Metastore, che consente di spostare i metadati di database, tabelle e partizioni da un servizio Dataproc Metastore a BigLake Metastore.

Prima di iniziare

  1. Abilita la fatturazione per il tuo progetto Google Cloud . Scopri come verificare se la fatturazione è abilitata per un progetto.
  2. Abilita le API BigQuery e Dataflow.

    Abilita le API

  3. (Facoltativo) Scopri di più su:

    • Scopri come funziona BigLake Metastore e perché dovresti utilizzarlo.
    • Scopri come funziona Dataflow e come monitorare un job in corso.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per eseguire lo strumento di migrazione, chiedi all'amministratore di concederti i seguenti ruoli IAM:

  • Crea database, tabelle e partizioni in BigQuery: Editor dati BigQuery (roles/bigQuery.dataEditor) nell'account di servizio Dataflow che esegue il job di migrazione.
  • Concedi l'accesso in lettura ai metadati di Dataproc Metastore su un endpoint gRPC: Ruolo Visualizzatore metadati (roles/metastore.metadataViewer) sul account di servizio Dataflow che esegue il job di migrazione.

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Come funziona lo strumento di migrazione

Lo strumento di migrazione avvia un job Dataflow che estrae i metadati da Dataproc Metastore e li importa in BigLake Metastore.

Non puoi accedere ai dati di Dataproc Metastore direttamente da BigLake Metastore. Questo processo di migrazione è necessario per eseguire workload o job sui metadati esistenti. Se non utilizzi questo strumento, devi estrarre manualmente i metadati da Dataproc Metastore e importarli in BigLake Metastore.

Considerazioni

  • Lo strumento di migrazione supporta le istanze Dataproc Metastore che utilizzano il protocollo dell'endpoint gRPC o Thrift.
  • Ogni volta che esegui lo strumento di migrazione, il job Dataflow crea una copia completa dei metadati da Dataproc Metastore a BigLake Metastore.

Limitazioni

Lo strumento di migrazione non esegue la migrazione dei metadati non correlati alle partizioni di database e tabelle. Se lo strumento non riesce a eseguire la migrazione di un database o di una tabella, registra un messaggio nell'istanza Cloud Logging del progetto che contiene il job Dataflow.

Dopo la registrazione dell'errore, il job Dataflow continua a elaborare altre tabelle e database nella pipeline.

Eseguire una migrazione con lo strumento

Per eseguire una migrazione con lo strumento, crea un job modello flessibile Dataflow eseguendo il seguente comando gcloud dataflow flex-template.

gcloud dataflow flex-template run JOB_NAME" \
   --template-file-gcs-location "gs://bigquery-metastore-migration/dpms_to_bqms_migration.json" \
   --parameters bigQueryMetastoreProjectId="DESTINATION_BIGQUERY_PROJECT_ID" \
   --parameters endpointUri="METASTORE_URI" \
   --parameters bigQueryMetastoreDatabaseLocation=DATABASE_LOCATION \
  [--network=NETWORK] \
  [--subnetwork=SUBNETWORK]

Sostituisci quanto segue:

  • JOB_NAME: il nome del job Dataflow per eseguire la migrazione.
  • DESTINATION_BIGQUERY_PROJECT_ID: l'ID del progetto BigQuery in cui il job Dataflow scrive i dati.
  • METASTORE_URI: l'URI del servizio Dataproc Metastore.
  • DATABASE_LOCATION: la posizione in cui BigLake Metastore scrive i dati. Ad esempio, se imposti questo valore su US, tutte le risorse BigQuery create dallo strumento vengono archiviate in questa posizione.
  • NETWORK: (facoltativo) la rete su cui eseguire il job Dataflow. Obbligatorio solo per i servizi Dataproc Metastore che utilizzano un endpoint Thrift.
  • SUBNETWORK: facoltativo: la subnet in cui eseguire il job Dataflow. Obbligatorio solo per i servizi Dataproc Metastore che utilizzano un endpoint Thrift.

Passaggi successivi