Orchestra carichi di lavoro
Le attività BigQuery in genere fanno parte di carichi di lavoro più grandi e vengono attivate da attività esterne e poi generate da operazioni BigQuery. L'orchestrazione dei carichi di lavoro aiuta gli amministratori dei dati, gli analisti e gli sviluppatori a organizzare e ottimizzare questa catena di azioni, creando una connessione senza interruzioni tra risorse e processi di dati. Gli strumenti e i metodi di orchestrazione assistono nella progettazione, nella creazione, nell'implementazione e nel monitoraggio di questi complessi carichi di lavoro di dati.
Scegli un metodo di orchestrazione
Per selezionare un metodo di orchestrazione, devi identificare se i carichi di lavoro sono basati su eventi, basati sul tempo o entrambi. Un evento è definito come un cambiamento di stato, ad esempio una modifica ai 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à sui dati oppure potrebbe essere necessario elaborare un oggetto che arriva in un determinato bucket immediatamente all'arrivo. Nell'orchestrazione basata sul tempo, potrebbe essere necessario caricare nuovi dati una volta al giorno o con una frequenza sufficiente per generare report orari. Puoi utilizzare l'orchestrazione basata sugli eventi e basata sul tempo in scenari in cui devi caricare oggetti in un data lake in tempo reale, ma i report sulle attività sul data lake vengono generati solo una volta al giorno.
Scegli uno strumento di orchestrazione
Gli strumenti di orchestrazione assistono nelle attività coinvolte nella gestione di carichi di lavoro complessi sui dati, come la combinazione di più servizi Google Cloud o di terze parti con job BigQuery o l'esecuzione di più job BigQuery in parallelo. Ogni carico di lavoro ha requisiti unici per la gestione delle dipendenze e dei parametri, al fine di 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 dei carichi di lavoro.
Consigliamo di utilizzare Dataform, Workflows, Cloud Composer o Vertex AI Pipelines per la maggior parte dei casi d'uso. Consulta il grafico seguente per un confronto affiancato:
Dataform | Workflows | Cloud Composer | Vertex AI Pipelines | |
---|---|---|---|---|
Evidenzia | Trasformazione dei dati | Microservizi | ETL o ELT | Machine learning |
complessità | * | ** | *** | ** |
Profilo utente | Analista o amministratore di dati | Data Architect | Data engineer | Analista di dati |
Tipo di codice | JavaScript e SQL | YAML o JSON | Python | Python |
Serverless? | Sì | Sì | Completamente gestito | Sì |
Non adatto per | Catene di servizi esterni | Trasformazione ed elaborazione dei dati | Pipeline a bassa latenza o basate su eventi | Attività relative all'infrastruttura |
Le sezioni seguenti descrivono nel dettaglio questi strumenti di orchestrazione e molti altri.
Query programmate
La forma più semplice di orchestrazione dei carichi di lavoro è pianificare le 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 Data Definition Language (DDL) e Data Manipulation Language (DML).
Metodo di orchestrazione: basato sul tempo
Dataform
Dataform (preview) è un framework di trasformazione "guidato" basato su SQL e gratuito che orchestra attività complesse di trasformazione dei dati in BigQuery. Quando i dati non elaborati vengono caricati in BigQuery, Dataform consente di creare una raccolta organizzata, testata e controllata dalla 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
Flussi di lavoro
Workflows è uno strumento serverless che orchestra i servizi basati su HTTP con una latenza molto bassa. È la scelta migliore per concatenare i microservizi, automatizzare le attività di infrastruttura, integrare i sistemi esterni o creare una sequenza di operazioni in Google Cloud. Per saperne di più sull'utilizzo di Workflows con BigQuery, consulta Eseguire più job BigQuery in parallelo.
Metodo di orchestrazione: basato sugli eventi e sul tempo
Cloud Composer
Cloud Composer è uno strumento completamente gestito basato su Apache Airflow. È la scelta migliore per i carichi di lavoro di estrazione, trasformazione, caricamento (ETL) o estrazione, caricamento e trasformazione (ELT), in quanto supporta diversi tipi e pattern di operatori, nonché l'esecuzione di attività su altri prodotti Google Cloud e destinazioni esterne. 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 l'orchestrazione dei carichi di lavoro di machine learning. Automatizza e connette tutte le attività di sviluppo e deployment dei tuoi modelli, dai dati di addestramento al codice, offrendo una visione completa del funzionamento dei modelli. Per scoprire di più sull'utilizzo di Vertex AI Pipelines con BigQuery, vedi Esportare un modello di machine learning BigQuery per la previsione ed eseguirne il deployment.
Metodo di orchestrazione: basato su eventi
Apigee Integration
L'integrazione Apigee è 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 ulteriori informazioni sull'utilizzo dell'Apigee Integration con BigQuery, consulta Iniziare a utilizzare l'Apigee Integration e un trigger di Salesforce.
Metodo di orchestrazione: basato sugli eventi e sul tempo
Cloud Data Fusion
Cloud Data Fusion è uno strumento di integrazione dei dati che offre pipeline ELT/ETL senza codice e oltre 150 connettori e trasformazioni preconfigurati. Per scoprire di più sull'utilizzo di Cloud Data Fusion con BigQuery, consulta Replica dei dati da MySQL a BigQuery.
Metodo di orchestrazione: basato sugli eventi e sul tempo
Cloud Scheduler
Cloud Scheduler è uno scheduler completamente gestito per job come flussi di dati in batch o operazioni dell'infrastruttura che devono avvenire a intervalli di tempo definiti. Per ulteriori informazioni 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 di attività asincrone di job che possono essere eseguiti in modo indipendente, al di fuori del carico di lavoro principale. È l'ideale per delegare operazioni in background lento o per gestire le tariffe delle chiamate API. Per scoprire di più sull'utilizzo di Cloud Tasks con BigQuery, consulta Aggiungere 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 popolari di terze parti 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 asincrono per le pipeline di integrazione dei dati. È progettato per importare e distribuire dati come gli eventi del server e le interazioni degli utenti. Può essere usato anche per l'elaborazione Parallela e il flusso di dati da dispositivi IoT. Per scoprire di più sull'utilizzo di Pub/Sub con BigQuery, consulta Trasmettere il flusso da Pub/Sub a BigQuery.
Eventarc
Eventarc è uno strumento basato su eventi che consente di gestire il flusso delle modifiche di stato in tutta la pipeline di dati. Questo strumento ha una vasta gamma di casi d'uso, tra cui correzione automatica degli errori, etichettatura delle risorse, ritocco delle immagini e altro ancora. Per scoprire di più sull'utilizzo di Eventarc con BigQuery, consulta Creare una pipeline di elaborazione BigQuery con Eventarc.
Passaggi successivi
- Scopri come pianificare le query ricorrenti direttamente in BigQuery.
- Inizia a utilizzare Dataform.
- Inizia a utilizzare Workflows.
- Inizia a utilizzare Cloud Composer.
- Inizia a utilizzare Vertex AI Pipelines.
- Inizia a utilizzare Apigee Integration.
- Inizia a utilizzare Cloud Data Fusion.
- Inizia a utilizzare Cloud Scheduler.
- Inizia a utilizzare Pub/Sub.
- Inizia a utilizzare Eventarc.