Potresti dover partizionare le tabelle BigQuery in segmenti più piccoli per migliorare le prestazioni delle query e controllare i costi. Poiché Datastream non il partizionamento delle tabelle in BigQuery, devi aggiungere manualmente prima di avviare lo stream. Per informazioni generali sul partizionamento In BigQuery, consulta Introduzione alle tabelle partizionate.
Tabelle di partizione in BigQuery
Per eseguire il partizionamento delle tabelle in BigQuery, utilizza una delle opzioni descritte nelle sezioni che seguono, a seconda del caso d'uso.
Opzione 1: la tabella esiste già in BigQuery ed è inclusa in uno stream
- Escludi la tabella dalla configurazione dell'origine del flusso. Per ulteriori informazioni sull'inclusione ed esclusione di oggetti dalla configurazione dell'origine, consulta Configurare i database di origine.
- Attendi alcuni minuti per assicurarti che Datastream abbia completato l'elaborazione tutti gli eventi per la tabella.
- Crea la tua tabella partizionata in BigQuery. Se vuoi conservare i dati già presenti nella tabella BigQuery originale, assegna alla tabella un nome temporaneo diverso.
- Copia i dati dalla tabella originale alla nuova tabella partizionata.
- Rilascia o rinomina la tabella originale.
- Modifica il nome temporaneo della nuova tabella con il nome della tabella originale.
- Aggiungi la tabella di origine alla configurazione del tuo flusso.
Opzione 2: la tabella non esiste in BigQuery
Crea la tabella in BigQuery utilizzando uno dei seguenti approcci:
- Utilizza il BigQuery Migration Toolkit.
Creare manualmente una tabella BigQuery compatibile con Datastream. Ad esempio, se vuoi creare una tabella e partizionare i dati in base alla colonna
TIMESTAMP
, puoi utilizzare una query simile alla seguente:CREATE TABLE dataset.partitioned_table ( 'id' INT64, 'name' STRING 'update_date' DATETIME, 'datastream_metadata' STRUCT<'uuid' STRING, 'source_timestamp' INT64>, PRIMARY KEY ('id') NOT ENFORCED ) PARTITION BY TIMESTAMP(update_date)
Dopo aver creato la tabella partizionata, assicurati che il suo valore
max_staleness
sia impostato in base ai tuoi requisiti. Se non imposti il valore, il valore predefinito di0
è impostato. Per saperne di più, consulta Utilizzare le tabelle BigQuery con l'opzionemax_staleness
.Aggiungi la tabella di origine alla configurazione del tuo flusso.
Se hai impostato il backfill manuale per lo stream, avvia il backfill per la tabella.