Introduzione alle query continue

Questo documento descrive le query continue di BigQuery.

Le query continue di BigQuery sono istruzioni SQL eseguite ininterrottamente. Le query continue ti consentono di analizzare i dati in arrivo in BigQuery in tempo reale. Puoi inserire le righe di output prodotte da una query continua in una tabella BigQuery o esportarle in Pub/Sub o Bigtable. Le query continue possono elaborare i dati scritti nelle tabelle BigQuery standard utilizzando uno dei seguenti metodi:

Puoi utilizzare le query continue per eseguire attività sensibili al tempo, ad esempio creare e agire immediatamente in base agli approfondimenti, applicare l'inferenza di machine learning (ML) in tempo reale e replicare i dati in altre piattaforme. In questo modo puoi utilizzare BigQuery come motore di elaborazione dei dati basato sugli eventi per la logica decisionale della tua applicazione.

Il seguente diagramma mostra i flussi di lavoro comuni per le query continue:

Diagramma che illustra i flussi di lavoro comuni delle query continue BigQuery, tra cui l'importazione dati, l'elaborazione e l'esportazione dei dati in destinazioni come Bigtable e Pub/Sub.

Casi d'uso

Di seguito sono riportati alcuni casi d'uso comuni in cui potresti voler utilizzare le query continue:

  • Servizi di interazione personalizzata con i clienti: utilizza l'AI generativa per creare messaggi personalizzati per ogni interazione con i clienti.
  • Rilevamento di anomalie: crea soluzioni che ti consentano di eseguire il rilevamento di anomalie e minacce su dati complessi in tempo reale, in modo da poter reagire più rapidamente ai problemi.
  • Pipeline basate su eventi personalizzabili: utilizza l'integrazione di query continua con Pub/Sub per attivare applicazioni downstream in base ai dati in entrata.
  • Arricchimento dei dati ed estrazione delle entità: utilizza query continue per eseguire la trasformazione e l'arricchimento dei dati in tempo reale utilizzando funzioni SQL e modelli di machine learning.
  • Estrazione, trasformazione e caricamento (ETL) inversi: esegui l'ETL inversa in tempo reale in altri sistemi di archiviazione più adatti per la pubblicazione di applicazioni a bassa latenza. Ad esempio, analizzare o migliorare i dati degli eventi scritti in BigQuery e poi trasmetterli in streaming a Bigtable per la pubblicazione delle applicazioni.

Operazioni supportate

Le seguenti operazioni sono supportate nelle query continue:

  • Esecuzione di istruzioni INSERT per scrivere i dati di una query continua in una tabella BigQuery.
  • Esecuzione di istruzioni EXPORT DATA per pubblicare l'output della query continua negli argomenti Pub/Sub. Per maggiori informazioni, consulta Esportare dati in Pub/Sub.

    Da un argomento Pub/Sub, puoi utilizzare i dati con altri servizi, ad esempio eseguire l'analisi dei flussi di dati utilizzando Dataflow o utilizzare i dati in un flusso di lavoro di integrazione delle applicazioni.

  • Esecuzione di istruzioni EXPORT DATA per esportare i dati da BigQuery alle tabelle Bigtable. Per ulteriori informazioni, vedi Esportare dati in Bigtable.

  • Chiamata della seguente funzione di AI generativa:

    Questa funzione richiede un modello remoto BigQuery ML su un modello Vertex AI.

  • Chiamata delle seguenti funzioni di AI:

    Queste funzioni richiedono un modello remoto BigQuery ML tramite un'API Cloud AI.

  • Normalizzare i dati numerici utilizzando la funzione ML.NORMALIZER.

  • Utilizzo di funzioni GoogleSQL stateless, ad esempio funzioni di conversione. Nelle funzioni stateless, ogni riga viene elaborata indipendentemente dalle altre righe della tabella.

  • Utilizzando la funzione di cronologia delle modifiche APPENDS per avviare l'elaborazione continua delle query da un momento specifico.

Autorizzazione

I token di accessoGoogle Cloud utilizzati durante l'esecuzione dei job di query continua hanno una durata (TTL) di due giorni quando vengono generati da un account utente. Pertanto, questi job smettono di essere eseguiti dopo due giorni. I token di accesso generati dagli account di servizio possono essere eseguiti più a lungo, ma devono comunque rispettare il runtime massimo della query. Per ulteriori informazioni, vedi Eseguire una query continua utilizzando un service account.

Località

Le query continue sono supportate nelle seguenti località:

Descrizione della regione Nome regione Dettagli
Americhe
Iowa us-central1 icona foglia Bassi livelli di CO2
Montréal northamerica-northeast1 icona foglia Bassi livelli di CO2
Virginia del Nord us-east4
Oregon us-west1 icona foglia Bassi livelli di CO2
Salt Lake City us-west3
San Paolo southamerica-east1 icona foglia Bassi livelli di CO2
Carolina del Sud us-east1
Stati Uniti (multiregionale) us
Asia Pacifico
Delhi asia-south2
Hong Kong asia-east2
Giacarta asia-southeast2
Mumbai asia-south1
Seul asia-northeast3
Singapore asia-southeast1
Sydney australia-southeast1
Taiwan asia-east1
Tokyo asia-northeast1
Europa
Belgio europe-west1 icona foglia Bassi livelli di CO2
Multiregione UE eu
Francoforte europe-west3 icona foglia Bassi livelli di CO2
Londra europe-west2 icona foglia Bassi livelli di CO2
Paesi Bassi europe-west4 icona foglia Bassi livelli di CO2

Limitazioni

Le query continue sono soggette alle seguenti limitazioni:

Limitazioni delle prenotazioni

  • Per eseguire query continue, devi creare prenotazioni per la versione Enterprise o Enterprise Plus. Le query continue non supportano il modello di fatturazione di calcolo on demand.
  • Quando crei un CONTINUOUS assegnazione di prenotazione, la prenotazione associata è limitata a un massimo di 500 slot. Puoi richiedere un aumento di questo limite contattando bq-continuous-queries-feedback@google.com.
  • Un'assegnazione di prenotazione di query continua non condivide slot inattivi, anche se la prenotazione è configurata per farlo.
  • Non puoi creare un'assegnazione di prenotazione che utilizzi un tipo di job diverso nella stessa prenotazione di un'assegnazione di prenotazione di query continua.
  • Non puoi configurare la concorrenza delle query continue. BigQuery determina automaticamente il numero di query continue che possono essere eseguite contemporaneamente in base alle assegnazioni di prenotazione disponibili che utilizzano il tipo di job CONTINUOUS.
  • Quando esegui più query continue utilizzando la stessa prenotazione, i singoli job potrebbero non dividere equamente le risorse disponibili, come definito da BigQuery fairness.

Scalabilità automatica degli slot

Le query continue possono utilizzare la scalabilità automatica degli slot per scalare dinamicamente la capacità allocata in base al tuo workload. Man mano che il carico di lavoro delle query continue aumenta o diminuisce, BigQuery regola dinamicamente gli slot.

Una volta avviata, una query continua ascolta attivamente i dati in arrivo, che consumano risorse slot. Mentre una prenotazione con una query continua in esecuzione non viene fare lo scale down a zero slot, una query continua inattiva che ascolta principalmente i dati in arrivo dovrebbe consumare una quantità minima di slot, in genere circa 1 slot.

Prezzi

Le query continue utilizzano i prezzi di calcolo della capacità di BigQuery, che vengono misurati in slot. Per eseguire query continue, devi disporre di una prenotazione che utilizzi Enterprise o Enterprise Plus, e di un assegnazione di prenotazione che utilizzi il tipo di job CONTINUOUS.

L'utilizzo di altre risorse BigQuery, come l'importazione e l'archiviazione dei dati, viene addebitato alle tariffe indicate nei prezzi di BigQuery.

L'utilizzo di altri servizi che ricevono risultati di query continua o che vengono chiamati durante l'elaborazione di query continua viene addebitato alle tariffe pubblicate per questi servizi. Per i prezzi di altri servizi Google Cloud utilizzati dalle query continue, consulta i seguenti argomenti:

Passaggi successivi

Prova a creare una query continua.