Importa file Parquet dallo spazio di archiviazione a Lakehouse utilizzando Dataflow

Puoi utilizzare un blueprint del builder dei job Dataflow per aggiungere file Apache Parquet esistenti dall'archiviazione basata sul cloud (Cloud Storage o Amazon S3) a una tabella Apache Iceberg in Lakehouse.

Questo processo utilizza la IcebergAddFiles trasformazione. Se i file Parquet si trovano in Cloud Storage, questa trasformazione li registra con Lakehouse senza spostare o riscrivere i dati sottostanti. Se i file si trovano in un sistema di archiviazione esterno come Amazon S3, vengono copiati in Cloud Storage per velocizzare le query tramite Lakehouse e poi registrati.

Utilizza i seguenti dettagli di connessione per aggiungere file Parquet dall'archiviazione basata sul cloud a una tabella Apache Iceberg in Lakehouse.

Prima di iniziare

  1. Abilita le API Dataflow, BigQuery e Lakehouse.

  2. Per ottenere le autorizzazioni necessarie per creare le risorse, chiedi all'amministratore di concederti i ruoli Identity and Access Management (IAM) richiesti per il tuo progetto.

  3. Crea un catalogo, uno spazio dei nomi e una tabella Lakehouse per Apache Iceberg in cui importare i dati.

  4. Crea un bucket di archiviazione basato sul cloud (Cloud Storage o Amazon S3) e carica i file Parquet nel bucket.

  5. Se il bucket di archiviazione basato su cloud che stai utilizzando non è Cloud Storage di Google, crea un bucket Cloud Storage per archiviare i log degli errori dei job.

Supporto e limitazioni

L'importazione di file Parquet nell'archiviazione basata sul cloud in Lakehouse per Apache Iceberg utilizzando Dataflow presenta le seguenti limitazioni:

  • I dati di origine devono essere in formato Apache Parquet e archiviati in Cloud Storage o Amazon S3.
  • Questa funzionalità supporta solo le pipeline batch.

Importa file Parquet in Lakehouse

Segui questi passaggi per importare file Parquet dall'archiviazione basata sul cloud in una tabella Iceberg in Lakehouse utilizzando l'interfaccia utente del builder dei job Dataflow.

  1. Nella Google Cloud console, vai alla pagina Lakehouse per Apache Iceberg.

    Vai a Lakehouse

  2. Seleziona il catalogo, lo spazio dei nomi e la tabella in cui vuoi importare i dati.

  3. Nella pagina Dettagli tabella, fai clic su Importa tabella.

  4. Nella finestra di dialogo Configurazione importazione, seleziona Importa una tabella da file Apache Parquet in Lakehouse (batch).

    Si apre la pagina Builder dei job di Dataflow.

  5. Nella sezione Origini:

    1. Apri la voce di origine CreateGlobalInput già creata.

    2. Nella sezione dell'editor Configurazione origine YAML, inserisci uno o più percorsi ai file Parquet nella sequenza elements.

      Per migliorare l'efficienza dell'importazione, specifica più set di file (glob) quando registri un numero elevato di file. Ad esempio:

      reshuffle: true
      elements:
        -   gs://BUCKET_NAME/restaurant-data/2023/*.parquet
        -   gs://BUCKET_NAME/restaurant-data/2024/*.parquet
      
    3. Fai clic su Fine.

  6. Nella sezione Trasformazioni:

    1. Fai clic sulla sezione di trasformazione IcebergAddFiles per aprirla.

    2. Nel campo Tabella Iceberg, inserisci lo spazio dei nomi e il nome della tabella. Ad esempio: NAMESPACE .TABLE_NAME .

    3. In Catalogo proprietà, configura i seguenti elementi:

      1. warehouse: il percorso Cloud Storage del catalogo. Ad esempio, gs://CATALOG_PATH.

      2. header.x-goog-user-project: Il tuo Google Cloud ID progetto: PROJECT_ID.

    4. Fai clic su Fine.

  7. Nella sezione Sink:

    1. Fai clic sul sink Scrivi risultati per aprirlo.

    2. Nel campo Percorso JSON, specifica il percorso e il nome file di Cloud Storage in cui scrivere i risultati degli errori. Ad esempio:

      gs://BUCKET_NAME/errors/errors.json
      
    3. Fai clic su Fine.

  8. Nella sezione Opzioni Dataflow, fai clic su Esegui job.

Se devi personalizzare ulteriormente la pipeline Dataflow utilizzata per registrare i file Parquet, puoi farlo utilizzando il modulo del builder dei job o l'editor YAML.

Esamina l'output del job

Al termine del job, puoi verificare che i dati siano stati registrati nella tabella Iceberg eseguendo una query in BigQuery.

  1. Nell'elenco dei job Dataflow, verifica che lo stato del job sia Riuscito.

    Vai a Job

  2. Se il job non riesce o presenta errori, controlla il file di log degli errori JSON in Cloud Storage per i dettagli.

    Vai a Bucket

  3. Nella Google Cloud console, vai alla pagina Studio di BigQuery.

    Vai a BigQuery

  4. Nell'editor di query, inserisci una query SQL per esaminare la tabella. Puoi utilizzare la PROJECT_ID.CATALOG>NAMESPACE.TABLE_NAME convenzione per eseguire query.

    SELECT * FROM `PROJECT_ID.CATALOG>NAMESPACE.TABLE_NAME` LIMIT 10
    
  5. Fai clic su Esegui.

  6. Esamina i risultati della query per assicurarti che i dati siano stati elaborati correttamente.

Passaggi successivi