Transizione al glossario aziendale in Dataplex Universal Catalog

Questo documento fornisce istruzioni per la migrazione in un unico passaggio dalla versione di anteprima del glossario aziendale, che supportava i metadati di Data Catalog, alla versione disponibile a livello generale del glossario aziendale, che supporta i metadati di Dataplex Universal Catalog.

Prima di iniziare

  1. Installa gcloud o i pacchetti Python. Autentica il tuo account utente e le Credenziali predefinite dell'applicazione (ADC) utilizzate dalle librerie Python. Esegui i seguenti comandi e segui le istruzioni basate sul browser:

    gcloud init
    gcloud auth login
    gcloud auth application-default login
    
  2. Abilita le seguenti API:

  3. Crea uno o più bucket Cloud Storage in uno qualsiasi dei tuoi progetti. I bucket verranno utilizzati come posizione temporanea per i file di importazione. Più bucket fornisci, più veloce è l'importazione. Concedi il ruolo IAM Amministratore di Storage all'account di servizio che esegue la migrazione:

    service-MIGRATION_PROJECT_ID@gcp-sa-dataplex.iam.gserviceaccount.com

    Sostituisci MIGRATION_PROJECT_ID con il progetto da cui stai eseguendo la migrazione dei glossari.

  4. Configura il repository:

    1. Clona il repository:

      git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git
      cd dataplex-labs/dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
      
    2. Installa i pacchetti richiesti:

      pip3 install -r requirements.txt
      cd migration
      

Ruoli obbligatori

Esegui lo script di migrazione

python3 run.py --project=MIGRATION_PROJECT_ID --user-project=USER_PROJECT_ID --buckets=BUCKET1,BUCKET2

Sostituisci quanto segue:

  • USER_PROJECT_ID: l'ID progetto del progetto da migrare.

    MIGRATION_PROJECT_ID si riferisce al progetto di origine contenente i glossari Data Catalog che vuoi esportare. USER_PROJECT_ID è il progetto utilizzato per l'attribuzione di fatturazione e quota per le chiamate API generate dallo script.

  • BUCKET1 e BUCKET2: gli ID dei bucket Cloud Storage da utilizzare per l'importazione.

    Puoi fornire uno o più bucket. Per gli argomenti del bucket, fornisci un elenco separato da virgole di nomi di bucket senza spazi (ad esempio, --buckets=bucket-one,bucket-two). Non è necessario un mapping uno a uno tra bucket e glossari; lo script esegue i job di importazione in parallelo, velocizzando la migrazione.

Se i problemi di autorizzazione impediscono allo script di rilevare automaticamente gli ID dell'organizzazione, utilizza il flag --orgIds per specificare le organizzazioni che lo script può utilizzare per cercare gli asset di dati collegati ai termini del glossario.

Glossari nell'ambito della migrazione

Per eseguire la migrazione solo di glossari specifici, definisci il loro ambito fornendo i rispettivi URL.

python3 run.py --project=MIGRATION_PROJECT_ID --user-project=USER_PROJECT_ID --buckets=BUCKET1,BUCKET2 --glossaries="GLOSSARY_URL1","GLOSSARY_URL2"

Sostituisci GLOSSARY_URL1 (e GLOSSARY_URL2) con gli URL dei glossari che stai migrando. Puoi fornire uno o più URL del glossario.

Quando viene eseguita la migrazione, il numero di job di importazione può essere inferiore al numero di glossari esportati. Ciò si verifica quando vengono creati direttamente glossari vuoti che non richiedono un job di importazione in background.

Riprendere la migrazione per gli errori del job di importazione

La presenza di file dopo la migrazione indica che alcuni job di importazione non sono riusciti. Per riprendere la migrazione, esegui questo comando:

python3 run.py --project=MIGRATION_PROJECT_ID --user-project=USER_PROJECT_ID --buckets=BUCKET1,BUCKET2 --resume-import

Se si verificano errori, esegui di nuovo il comando resume. Lo script elabora solo i file che non sono stati importati ed eliminati correttamente.

Lo script applica i controlli delle dipendenze per i link di ingresso e i link tra glossari. Un file di link di voce viene importato solo se il glossario principale è stato importato correttamente. Allo stesso modo, un collegamento tra i termini viene importato solo se tutti i termini a cui viene fatto riferimento sono stati importati correttamente.

Risoluzione dei problemi

Questa sezione fornisce soluzioni agli errori comuni.

  • Autorizzazione negata / Errore 403: assicurati che l'utente o il account di servizio disponga del ruolo Editor di Dataplex Universal Catalog nel progetto di destinazione e del ruolo Visualizzatore Data Catalog nel progetto di origine.

  • ModuleNotFoundError: assicurati di aver attivato l'ambiente virtuale Python e di aver installato i pacchetti richiesti utilizzando pip3 install -r requirements.txt.

  • TimeoutError / ssl.SSLError: questi errori a livello di rete potrebbero essere causati da firewall, proxy o connessioni lente. Lo script ha un timeout di 5 minuti. I problemi persistenti potrebbero richiedere il controllo della configurazione della rete locale.

  • Metodo non trovato (Impossibile recuperare le voci): questo errore spesso indica che il tuo progetto utente non è incluso nella lista consentita per chiamare l'API, impedendo il recupero delle voci necessarie.