Orchestrare i carichi di lavoro

Le attività BigQuery fanno solitamente parte di workload più grandi, con attività esterne attivate e poi attivate da operazioni BigQuery. L'orchestrazione dei carichi di lavoro aiuta gli amministratori, gli analisti e gli sviluppatori di dati a organizzare e ottimizzare questa catena di azioni, creando una connessione perfetta tra le risorse e i processi di dati. I metodi e gli strumenti di orchestrazione aiutano a progettare, creare, implementare e monitorare questi complessi carichi di lavoro di dati.

Scegli un metodo di orchestrazione

Per selezionare un metodo di orchestrazione, devi identificare se i tuoi workload sono basati su eventi, su tempo o su entrambi. Un evento è definito come una modifica dello stato, come una modifica dei dati in un database o un file aggiunto a un sistema di archiviazione. Nell'orchestrazione basata su eventi, un'azione su un sito web potrebbe attivare un'attività di dati o un oggetto che arriva in un determinato bucket potrebbe dover essere elaborato immediatamente al suo arrivo. Nell'orchestrazione basata sul tempo, i nuovi dati potrebbero dover essere caricati una volta al giorno o con una frequenza sufficiente per produrre report orari. Puoi utilizzare l'orchestrazione basata su eventi e su tempo negli scenari in cui devi caricare oggetti in un data lake in tempo reale, ma i report sulle attività sul data lake vengono generati solo su base giornaliera.

Scegli uno strumento di orchestrazione

Gli strumenti di orchestrazione aiutano a svolgere le attività necessarie per gestire carichi di lavoro di dati complessi, ad esempio combinare più servizi Google Cloud o di terze parti con job BigQuery o eseguire più job BigQuery in parallelo. Ogni carico di lavoro ha requisiti unici per la gestione delle dipendenze e dei parametri per garantire che le attività vengano eseguite nell'ordine corretto utilizzando i dati corretti. Google Cloud offre diverse opzioni di orchestrazione basate sul metodo di orchestrazione e sui requisiti del carico di lavoro.

Per la maggior parte dei casi d'uso, consigliamo di utilizzare Dataform, Workflows, Cloud Composer o Vertex AI Pipelines. Consulta il seguente grafico per un confronto fianco a fianco:

Dataform Workflows Cloud Composer Vertex AI Pipelines
Evidenzia Trasformazione dei dati Microservizi ETL o ELT Machine learning
complessità * ** *** **
Profilo utente Data analyst o amministratore Architetto dei dati Data engineer Analista di dati
Tipo di codice JavaScript e SQL YAML o JSON Python Python
Serverless? Completamente gestito
Non adatto per Catene di servizi esterni Trasformazione ed elaborazione dei dati Pipeline a bassa latenza o basate su eventi Attività di infrastruttura

Le sezioni seguenti descrivono in dettaglio questi strumenti di orchestrazione e molti altri.

Query programmate

La forma più semplice di orchestrazione dei carichi di lavoro è la pianificazione delle query ricorrenti direttamente in BigQuery. Sebbene questo sia l'approccio meno complesso all'orchestrazione, lo consigliamo solo per catene di query semplici senza dipendenze esterne. Le query pianificate in questo modo devono essere scritte in GoogleSQL e possono includere istruzioni DDL (Data Definition Language) e istruzioni DML (Data Manipulation Language).

Metodo di orchestrazione: basato sul tempo

Dataform

Dataform è un framework di trasformazione basato su SQL, gratuito e con opinioni, che orchestra attività di trasformazione dei dati complesse in BigQuery. Quando i dati non elaborati vengono caricati in BigQuery, Dataform ti aiuta a creare una raccolta organizzata, testata e controllata della versione di set di dati e tabelle. Per scoprire di più sull'utilizzo di Dataform con BigQuery, consulta Creare ed eseguire un flusso di lavoro SQL.

Metodo di orchestrazione: basato su eventi

Workflows

Workflows è uno strumento serverless che orchestra i servizi basati su HTTP con latenza molto bassa. È ideale per mettere in serie i microservice, automatizzare le attività di infrastruttura, integrare sistemi esterni o creare una sequenza di operazioni in Google Cloud. Per scoprire di più sull'utilizzo di Workflows con BigQuery, consulta Eseguire più job BigQuery in parallelo.

Metodo di orchestrazione: basato su eventi e basato sul tempo

Cloud Composer

Cloud Composer è uno strumento completamente gestito basato su Apache Airflow. È ideale per i carichi di lavoro ETL (estrazione, trasformazione, caricamento) o ELT (estrazione, caricamento, trasformazione) in quanto supporta diversi tipi e pattern di operatori, nonché l'esecuzione di attività su altri prodotti Google Cloud e target esterni. Per scoprire di più sull'utilizzo di Cloud Composer con BigQuery, consulta Eseguire un DAG di analisi dei dati in Google Cloud.

Metodo di orchestrazione: basato sul tempo

Vertex AI Pipelines

Vertex AI Pipelines è uno strumento serverless basato su Kubeflow Pipelines appositamente progettato per orchestrare i carichi di lavoro di machine learning. Automatizza e collega tutte le attività di sviluppo e deployment del modello, dai dati di addestramento al codice, offrendoti una visione completa del funzionamento dei modelli. Per scoprire di più sull'utilizzo di Vertex AI Pipelines con BigQuery, consulta Esportare ed eseguire il deployment di un modello di machine learning di BigQuery per la previsione.

Metodo di orchestrazione: basato su eventi

Apigee Integration

Apigee Integration è un'estensione della piattaforma Apigee che include connettori e strumenti di trasformazione dei dati. È ideale per l'integrazione con applicazioni aziendali esterne, come Salesforce. Per scoprire di più sull'utilizzo di Apigee Integration con BigQuery, consulta Introduzione ad Apigee Integration e a un attivatore Salesforce.

Metodo di orchestrazione: basato su eventi e basato sul tempo

Cloud Data Fusion

Cloud Data Fusion è uno strumento di integrazione dei dati che offre pipeline ELT/ETL senza codice e oltre 150 trasformazioni e connettori preconfigurati. Per scoprire di più sull'utilizzo di Cloud Data Fusion con BigQuery, consulta Replicare i dati da MySQL a BigQuery.

Metodo di orchestrazione: basato su eventi e basato sul tempo

Cloud Scheduler

Cloud Scheduler è un programma di pianificazione completamente gestito per job come lo streaming batch o le operazioni di infrastruttura che devono avvenire a intervalli di tempo definiti. Per scoprire di più sull'utilizzo di Cloud Scheduler con BigQuery, consulta Pianificazione dei flussi di lavoro con Cloud Scheduler.

Metodo di orchestrazione: basato sul tempo

Cloud Tasks

Cloud Tasks è un servizio completamente gestito per la distribuzione asincrona di attività dei job che possono essere eseguiti in modo indipendente, al di fuori del carico di lavoro principale. È ideale per delegare operazioni in background lente o per gestire le frequenze di chiamata dell'API. Per scoprire di più sull'utilizzo di Cloud Tasks con BigQuery, consulta Aggiungi un'attività a una coda di Cloud Tasks.

Metodo di orchestrazione: basato su eventi

Strumenti di terze parti

Puoi anche connetterti a BigQuery utilizzando una serie di strumenti di terze parti molto diffusi, come CData e SnapLogic. Il programma BigQuery Ready offre un elenco completo di soluzioni partner convalidate.

Strumenti di messaggistica

Molti carichi di lavoro di dati richiedono connessioni di messaggistica aggiuntive tra microservizi disaccoppiati che devono essere attivati solo quando si verificano determinati eventi. Google Cloud offre due strumenti progettati per l'integrazione con BigQuery.

Pub/Sub

Pub/Sub è uno strumento di messaggistica asincrona per le pipeline di integrazione dei dati. È progettato per importare e distribuire dati come eventi del server e interazioni utente. Può essere utilizzato anche per l'elaborazione parallela e lo streaming di dati da dispositivi IoT. Per scoprire di più sull'utilizzo di Pub/Sub con BigQuery, consulta Eseguire lo streaming da Pub/Sub a BigQuery.

Eventarc

Eventarc è uno strumento basato su eventi che consente di gestire il flusso delle modifiche dello stato nella pipeline di dati. Questo strumento ha una vasta gamma di casi d'uso, tra cui la correzione automatica degli errori, la classificazione delle risorse, il ritocco delle immagini e altro ancora. Per scoprire di più sull'utilizzo di Eventarc con BigQuery, consulta Creare una pipeline di elaborazione di BigQuery con Eventarc.

Passaggi successivi