Origine batch BigQuery

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

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

Prima di iniziare

In genere Cloud Data Fusion ha due account di servizio:

Prima di utilizzare il plug-in dell'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 è necessario aggiungere autorizzazioni aggiuntive. Come 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 account di servizio dello spazio dei nomi oltre all'account di servizio predefinito in fase di progettazione, aggiungi le autorizzazioni elencate nell'elenco precedente.

Account di servizio Compute Engine

Nel tuo Google Cloud progetto, concedi i seguenti ruoli o le seguenti autorizzazioni IAM all'account di servizio Compute Engine:

  • Utente job BigQuery (roles/bigquery.jobUser). Questo ruolo predefinito contiene l'autorizzazione bigquery.jobs.create richiesta.
  • Editor dei 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 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 caso d'uso.

Configura 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 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, segui questi passaggi:

      1. Nel campo Project ID (ID progetto), lascia il valore su rilevamento automatico.
      2. Se il set di dati BigQuery si trova in un progetto diverso, inserisci l'ID nel campo Dataset Project ID (ID progetto set di dati).
      3. Nel campo Tipo di account di servizio, scegli una delle opzioni riportate di seguito 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 predefinito.

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

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

    4. (Facoltativo) Se il set di dati è già disponibile nell'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 WHERE clausola BigQuery.

    11. (Facoltativo) Nel campo Nome del 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 di Cloud Key Management Service (Cloud KMS). Per ulteriori informazioni, vedi Ottenere il nome della risorsa per la chiave.

    13. (Facoltativo) Attiva Attiva le visualizzazioni con query. Se li attivi, procedi come segue:

      • Nel campo 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 della tabella temporanea, 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 rilevati.

    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à Macro attivata 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 navighi tra le connessioni, 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 Utilizza 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 Viene 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 del progetto con il set di dati BigQuery. Se non viene fornito alcun valore, il valore predefinito del campo è l'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 account di servizio No Seleziona una delle seguenti opzioni:
  • Percorso del file: il percorso in cui si trova l'account di servizio.
  • JSON: contenuti JSON dell'account di servizio.
Percorso del file dell'account di servizio No Viene utilizzato solo quando il valore del tipo di account di servizio è Percorso del file. Il percorso nel file system locale della chiave dell'account di servizio utilizzata per l'autorizzazione. Se i job vengono eseguiti su cluster Dataproc, 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 dell'account di servizio No Viene utilizzato solo quando il valore del tipo di account di servizio è JSON. I contenuti del file JSON dell'account di servizio.
Nome di riferimento No Nome che identifica in modo univoco questa origine per altri servizi, ad esempio la cronologia e l'annotazione dei metadati.
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 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 della partizione No Data di inizio della partizione inclusiva, 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 specificato 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;. È lo stesso della 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 essere stati letti. Se non viene fornito un nome, viene creato un bucket univoco che viene 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 esistente, questo valore viene ignorato. Per ulteriori informazioni, consulta CMEK.
Abilitare le viste con query No Se consentire le viste logiche e materializzate BigQuery. Poiché le viste BigQuery non sono attivate 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 Viene utilizzato solo quando l'opzione Abilita le visualizzazioni con query è 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. Per impostazione predefinita, viene utilizzato 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