Orquestrar cargas de trabalho

As tarefas do BigQuery geralmente fazem parte de cargas de trabalho maiores, com tarefas acionadas externamente e acionadas por operações do BigQuery. A orquestração de cargas de trabalho ajuda administradores, analistas e desenvolvedores de dados a organizar e otimizar essa cadeia de ações, criando uma conexão integrada entre recursos e processos de dados. As ferramentas e métodos de orquestração ajudam a projetar, criar, implementar e monitorar essas cargas de trabalho de dados complexas.

Escolher um método de orquestração

Para selecionar um método de orquestração, identifique se suas cargas de trabalho são orientadas por eventos, por tempo ou ambos. Um evento é definido como uma alteração de estado, como uma alteração em dados em um banco de dados ou em um arquivo adicionado a um sistema de armazenamento. Na orquestração baseada em eventos, uma ação em um site pode acionar uma atividade de dados ou um objeto de destino em um determinado bucket precisa ser processado imediatamente na chegada. Na orquestração orientada por tempo, pode ser necessário carregar novos dados uma vez por dia ou com frequência suficiente para produzir relatórios por hora. É possível usar orquestração orientada por eventos e por tempo em cenários em que você precisa carregar objetos em um data lake em tempo real, mas os relatórios de atividade no data lake só são gerados diariamente.

Escolher uma ferramenta de orquestração

As ferramentas de orquestração ajudam em tarefas envolvidas no gerenciamento de cargas de trabalho de dados complexas, como a combinação de vários serviços do Google Cloud ou de terceiros com jobs do BigQuery ou a execução de vários jobs do BigQuery em paralelo. Cada carga de trabalho tem requisitos exclusivos de gerenciamento de dependências e parâmetros para garantir que as tarefas sejam executadas na ordem correta usando os dados corretos. O Google Cloud oferece várias opções de orquestração baseadas no método de orquestração e nos requisitos da carga de trabalho.

Recomendamos o uso de Dataform, Workflows, Cloud Composer ou Vertex AI Pipelines para a maioria dos casos de uso. Consulte o gráfico a seguir para ver uma comparação lado a lado:

Formulário de dados Workflows Cloud Composer Pipelines da Vertex AI
Foco Transformação de dados Microsserviços ETL ou ELT Machine learning
Complexidade * ** *** **
Perfil do usuário Analista ou administrador de dados Arquiteto de dados Engenheiro de dados Analista de dados
Tipo de código JavaScript e SQL YAML ou JSON Python Python
Usando o modelo sem servidor? Sim Sim Totalmente gerenciado Sim
Inadequado para Redes de serviços externos Transformação e processamento de dados Pipelines de baixa latência ou orientados por eventos Tarefas de infraestrutura

As seções a seguir detalham essas ferramentas de orquestração e várias outras.

Consultas programadas

A forma mais simples de orquestração de cargas de trabalho é programar consultas recorrentes diretamente no BigQuery. Embora essa seja a abordagem menos complexa para a orquestração, recomendamos isso apenas para cadeias de consultas simples sem dependências externas. As consultas programadas dessa maneira precisam ser escritas em GoogleSQL e podem incluir a linguagem de definição de dados (DDL) e a linguagem de manipulação de dados (DML, na sigla em inglês).

Método de orquestração: orientado por tempo

Dataform

O Dataform (visualização) é um framework de transformação gratuito e baseado em SQL que orquestra tarefas complexas de transformação de dados no BigQuery. Quando os dados brutos são carregados no BigQuery, o Dataform ajuda a criar uma coleção organizada, testada e controlada de versões de conjuntos de dados e tabelas. Para saber mais sobre o uso do Dataform com o BigQuery, consulte Criar e executar um fluxo de trabalho SQL.

Método de orquestração: orientado por eventos

Fluxos de trabalho

Fluxos de trabalho é uma ferramenta sem servidor que organiza serviços baseados em HTTP com latência muito baixa. É melhor para encadear microsserviços, automatizar tarefas de infraestrutura, integrar sistemas externos ou criar uma sequência de operações no Google Cloud. Para saber mais sobre o uso de fluxos de trabalho com o BigQuery, consulte Executar vários jobs do BigQuery em paralelo.

Método de orquestração: orientado por eventos e por tempo

Cloud Composer

O Cloud Composer é uma ferramenta totalmente gerenciada criada no Apache Airflow. Ela é melhor para cargas de trabalho de extração, transformação, carregamento (ETL) ou extração, carregamento, transformação (ELT), já que é compatível com vários tipos e padrões de operador, bem como execução de tarefas em outros produtos do Google Cloud e destinos externos. Para saber mais sobre como usar o Cloud Composer com o BigQuery, consulte Executar um DAG de análise de dados no Google Cloud.

Método de orquestração: orientado por tempo

Pipelines da Vertex AI

O Vertex AI Pipelines é uma ferramenta sem servidor baseada no Kubeflow Pipelines especialmente projetada para orquestrar cargas de trabalho de machine learning. Ele automatiza e conecta todas as tarefas de desenvolvimento e implantação do modelo, desde dados de treinamento até código, oferecendo uma visão completa de como os modelos funcionam. Para saber mais sobre como usar o Vertex AI Pipelines com o BigQuery, consulte Exportar e implantar um modelo de machine learning do BigQuery para previsão.

Método de orquestração: orientado por eventos

Integração com a Apigee

A integração da Apigee é uma extensão da plataforma Apigee que inclui conectores e ferramentas de transformação de dados. Ela é melhor para integração com aplicativos empresariais externos, como o Salesforce. Para saber mais sobre como usar a integração da Apigee com o BigQuery, consulte Primeiros passos com a integração da Apigee e um gatilho do Salesforce.

Método de orquestração: orientado por eventos e por tempo

Cloud Data Fusion

O Cloud Data Fusion é uma ferramenta de integração de dados que oferece pipelines ELT/ETL sem código e mais de 150 transformações e conectores pré-configurados. Para saber mais sobre como usar o Cloud Data Fusion com o BigQuery, consulte Como replicar dados do MySQL para o BigQuery.

Método de orquestração: orientado por eventos e por tempo

Cloud Scheduler

O Cloud Scheduler é um programador totalmente gerenciado para jobs como streaming em lote ou operações de infraestrutura que precisam ocorrer em intervalos de tempo definidos. Para saber mais sobre como usar o Cloud Scheduler com o BigQuery, consulte Como programar fluxos de trabalho com o Cloud Scheduler.

Método de orquestração: orientado por tempo

Cloud Tasks

O Cloud Tasks é um serviço totalmente gerenciado para distribuição assíncrona de tarefas que podem ser executadas de forma independente, fora da carga de trabalho principal. É melhor para delegar operações em segundo plano lentas ou gerenciar taxas de chamadas de API. Para saber mais sobre o uso do Cloud Tasks com o BigQuery, consulte Adicionar uma tarefa a uma fila do Cloud Tasks.

Método de orquestração: orientado por eventos

Ferramentas de terceiros

Também é possível se conectar ao BigQuery usando várias ferramentas conhecidas de terceiros, como CData e SnapLogic. O programa pronto para o BigQuery oferece uma lista completa de soluções de parceiros validadas.

Ferramentas de mensagens

Muitas cargas de trabalho de dados exigem outras conexões de mensagens entre os microsserviços separados que só precisam ser ativados quando determinados eventos ocorrem. O Google Cloud oferece duas ferramentas projetadas para serem integradas ao BigQuery.

Pub/Sub

O Pub/Sub é uma ferramenta de mensagens assíncrona para pipelines de integração de dados. Ele foi projetado para ingerir e distribuir dados, como eventos do servidor e interações do usuário. Ele também pode ser usado para processamento paralelo e streaming de dados de dispositivos IoT. Para saber mais sobre como usar o Pub/Sub com o BigQuery, consulte Stream do Pub/Sub para BigQuery.

Eventarc

O Eventarc é uma ferramenta orientada a eventos que permite gerenciar o fluxo de alterações de estado em todo o pipeline de dados. Essa ferramenta tem uma ampla variedade de casos de uso, incluindo correção automática de erros, rotulagem de recursos, retoque de imagens e muito mais. Para saber mais sobre o uso do Eventarc com o BigQuery, consulte Criar um pipeline de processamento do BigQuery com o Eventarc.

A seguir