Origine batch BigQuery

Questa pagina fornisce indicazioni sulla configurazione del plug-in di origine batch BigQuery in Cloud Data Fusion.

Il plug-in di origine BigQuery ti consente di connetterti e caricare i dati dalle tabelle BigQuery. I dati di una tabella BigQuery vengono esportati in una posizione temporanea in Cloud Storage, quindi vengono letti nella pipeline da lì.

Prima di iniziare

Cloud Data Fusion in genere ha due service account:

Prima di utilizzare il plug-in di origine batch BigQuery, concedi i seguenti ruoli o autorizzazioni a ogni account di servizio.

Cloud Data Fusion API Service Agent

Questo account di servizio dispone già di tutte le autorizzazioni richieste e non devi aggiungerne altre. Per riferimento, ha le seguenti autorizzazioni:

  • bigquery.datasets.get
  • bigquery.tables.create
  • bigquery.tables.get
  • bigquery.tables.updateData
  • bigquery.tables.update
  • bigquery.tables.export

Se utilizzi un service account namespace oltre aaccount di serviziont di progettazione predefinito, aggiungi le autorizzazioni dell'elenco precedente.

Service account Compute Engine

Nel tuo progetto Google Cloud , concedi i seguenti ruoli o autorizzazioni IAM al service account Compute Engine:

  • Utente job BigQuery (roles/bigquery.jobUser). Questo ruolo predefinito contiene l'autorizzazione bigquery.jobs.create richiesta.
  • Editor dati BigQuery (roles/bigquery.dataEditor). Questo ruolo predefinito contiene le seguenti autorizzazioni richieste:

    • bigquery.datasets.get
    • bigquery.tables.create
    • bigquery.tables.get
    • bigquery.tables.updateData
    • bigquery.tables.update
    • bigquery.tables.export

Questi ruoli e autorizzazioni possono essere assegnati anche al set di dati o alla tabella BigQuery, a seconda del tuo caso d'uso.

  • Writer bucket legacy Storage (roles/storage.legacyBucketWriter). Questo ruolo predefinito contiene le seguenti autorizzazioni richieste:

    • storage.buckets.get
    • storage.objects.get
    • storage.objects.list

Questo ruolo e queste autorizzazioni possono essere assegnati anche al bucket Cloud Storage, a seconda del tuo caso d'uso.

Configurare il plug-in

  1. Vai all'interfaccia web di Cloud Data Fusion e fai clic su Studio.
  2. Verifica che sia selezionata l'opzione Pipeline di dati - Batch (non In tempo reale).
  3. Nel menu Origine, fai clic su BigQuery. Il nodo BigQuery viene visualizzato nella pipeline.
  4. Per configurare l'origine, vai al nodo BigQuery e fai clic su Properties (Proprietà).
  5. Inserisci le seguenti proprietà. Per un elenco completo, consulta Proprietà.

    1. Inserisci un'etichetta per il nodo BigQuery, ad esempio BigQuery tables.
    2. Inserisci i dettagli della connessione. Puoi configurare una nuova connessione una tantum o una connessione esistente riutilizzabile.

      Nuova connessione

      Per aggiungere una connessione una tantum a BigQuery:

      1. Nel campo ID progetto, lascia il valore di rilevamento automatico.
      2. Se il set di dati BigQuery si trova in un progetto diverso, nel campo Dataset Project ID (ID progetto set di dati), inserisci l'ID.
      3. Nel campo Tipo di service account, scegli una delle seguenti opzioni e inserisci i contenuti nel campo successivo:

        • Percorso del file
        • JSON

      Connessione riutilizzabile

      Per riutilizzare una connessione esistente:

      1. Attiva l'opzione Usa connessione.
      2. Fai clic su Browse connections (Sfoglia connessioni).
      3. Fai clic sul nome della connessione, ad esempio BigQuery Default.

      4. (Facoltativo) Se non esiste una connessione e vuoi crearne una nuova riutilizzabile, fai clic su Aggiungi connessione e segui i passaggi nella scheda Nuova connessione di questa pagina.

    3. Nel campo Reference name (Nome di riferimento), inserisci un nome da utilizzare per la derivazione.

    4. (Facoltativo) Se il set di dati è già disponibile nella tua istanza, fai clic su Sfoglia e seleziona i dati da leggere.

    5. Nel campo Dataset, inserisci il nome del set di dati che contiene la tabella.

    6. Nel campo Table (Tabella), inserisci il nome della tabella.

    7. Per testare la connettività, fai clic su Ottieni schema.

    8. (Facoltativo) Nel campo Data di inizio della partizione, inserisci la stringa della data di inizio inclusiva, ad esempio 2021-01-11.

    9. (Facoltativo) Nel campo Data di fine partizione, inserisci la stringa della data di fine inclusiva, ad esempio 2024-01-11.

    10. (Facoltativo) Nel campo Filtra, inserisci una clausola WHERE BigQuery.

    11. (Facoltativo) Nel campo Nome bucket temporaneo, inserisci un nome per il bucket Cloud Storage.

    12. (Facoltativo) Nel campo Nome chiave di crittografia, inserisci il nome della chiave di crittografia Cloud Key Management Service (Cloud KMS). Per saperne di più, consulta Recuperare il nome della risorsa per la chiave.

    13. (Facoltativo) Attiva l'opzione Abilita query sulle visualizzazioni. Se li attivi, procedi come segue:

      • Nel campo Temporary table creation project (Progetto di creazione della tabella temporanea), inserisci il nome del progetto in cui viene creata la tabella temporanea.
      • Nel campo Set di dati per la creazione di tabelle temporanee, inserisci il nome del set di dati in cui viene creata la tabella temporanea.
    14. (Facoltativo) Fai clic su Convalida e correggi gli eventuali errori trovati.

    15. Fai clic su Close (Chiudi). Le proprietà vengono salvate e puoi continuare a creare la pipeline di dati nell'interfaccia web di Cloud Data Fusion.

Proprietà

Proprietà Con macro Proprietà obbligatoria Descrizione
Etichetta No Il nome del nodo nella pipeline di dati.
Utilizzare la connessione No No Cerca una connessione riutilizzabile all'origine. Per saperne di più su come aggiungere, importare e modificare le connessioni visualizzate quando le sfogli, consulta Gestire le connessioni.
Connessione Se l'opzione Utilizza connessione è attiva, in questo campo viene visualizzato il nome della connessione riutilizzabile selezionata.
ID progetto No Utilizzato solo quando l'opzione Usa connessione è disattivata. Un identificatore univoco globale per il progetto in cui viene eseguito il job BigQuery.
Il valore predefinito è auto-detect.
ID progetto del set di dati No Utilizzato solo quando l'opzione Utilizza connessione è disattivata. Se il set di dati si trova in un progetto diverso da quello in cui viene eseguito il job BigQuery, questo valore è l'identificatore univoco a livello globale per il progetto con il set di dati BigQuery. Se non viene fornito alcun valore, il campo viene impostato sul valore predefinito ID progetto. Il ruolo Data Viewer di BigQuery deve essere concesso all'account di servizio specificato per leggere i dati BigQuery nel progetto.
Tipo di service account No Seleziona una delle seguenti opzioni:
  • Percorso del file: il percorso in cui si trova il account di servizio.
  • JSON: contenuti JSON del account di servizio.
Service account file path (Percorso del file dell'account di servizio) No Utilizzato solo quando il valore del tipo di service account è Percorso file. Il percorso nel file system locale della chiave dell'account di servizio utilizzata per l'autorizzazione. Se i job vengono eseguiti su cluster Managed Service per Apache Spark, imposta il valore su rilevamento automatico. Se i job vengono eseguiti su altri tipi di cluster, il file deve essere presente su ogni nodo del cluster.
Il valore predefinito è auto-detect.
JSON del service account No Utilizzato solo quando il valore del tipo di service account è JSON. Il contenuto del file JSON del account di servizio.
Nome di riferimento No Nome che identifica in modo univoco questa origine per altri servizi, ad esempio metadati di derivazione e annotazione.
Set di dati Il set di dati a cui appartiene la tabella. Un set di dati è contenuto in un progetto specifico. I set di dati sono contenitori di primo livello che organizzano e controllano l'accesso a tabelle e viste.
Tabella La tabella da cui leggere. Una tabella contiene i singoli record organizzati in righe. Ogni record è composto da colonne (dette anche campi). Ogni tabella è definita da uno schema che descrive i nomi delle colonne, i tipi di dati e altre informazioni.
Data di inizio partizione No Data di inizio della partizione inclusa, specificata come yyyy-mm-dd. Se non viene fornito alcun valore, verranno lette tutte le partizioni fino alla data di fine della partizione.
Data di fine partizione No Data di fine della partizione esclusiva, specificata come yyyy-mm-dd. Se non viene fornito alcun valore, vengono lette tutte le partizioni a partire dalla data di inizio della partizione.
Filtro No Una query SQL che filtra in base alle condizioni specificate. Ad esempio, questa query restituisce tutte le righe della tabella Roster in cui la colonna SchoolID ha il valore SchoolID > 52:
SELECT * FROM Roster WHERE SchoolID > 52;. È uguale alla clausola WHERE in BigQuery.
Nome bucket temporaneo No Il bucket Cloud Storage per l'archiviazione temporanea dei dati. Viene creato automaticamente se non esiste. I dati temporanei vengono eliminati dopo la lettura. Se non viene fornito un nome, viene creato un bucket univoco e poi eliminato al termine dell'esecuzione.
Nome della chiave di crittografia No Chiave che cripta i dati scritti in qualsiasi bucket creato dal plug-in. Se il bucket esiste, questo valore viene ignorato. Per saperne di più, consulta CMEK.
Abilita l'esecuzione di query sulle viste No Se consentire le viste logiche e materializzate BigQuery. Poiché le viste BigQuery non sono abilitate per impostazione predefinita, l'esecuzione di query su di esse potrebbe comportare un sovraccarico delle prestazioni.
Il valore predefinito è No.
Progetto di creazione di tabelle temporanee No Utilizzato solo quando l'opzione Abilita query sulle visualizzazioni è attivata. Il nome del progetto in cui deve essere creata la tabella temporanea. Per impostazione predefinita, è lo stesso progetto in cui si trova la tabella.
Set di dati per la creazione di tabelle temporanee No Il set di dati nel progetto specificato in cui deve essere creata la tabella temporanea. Il valore predefinito è lo stesso set di dati in cui si trova la tabella.
Schema di output Schema della tabella da leggere. Puoi recuperarlo facendo clic su Ottieni schema.

Mappature dei tipi di dati

La tabella seguente è un elenco dei tipi di dati BigQuery con i tipi CDAP corrispondenti.

Tipo di dati BigQuery Tipo di dati dello schema CDAP
BOOL boolean
BYTES bytes
DATE date
DATETIME datetime, string
FLOAT64 double
GEO unsupported
INT64 long
NUMERIC decimal
BIGNUMERIC decimal
REPEATED array
STRING string, datetime (formato ISO 8601)
STRUCT record
TIME time (microsecondi)
TIMESTAMP timestamp (microsecondi)
JSON unsupported

Passaggi successivi