Organiza cargas de trabajo

Las tareas de BigQuery suelen ser parte de cargas de trabajo más grandes, con tareas externas que se activan y, luego, se activan mediante operaciones de BigQuery. La organización de cargas de trabajo ayuda a los administradores, analistas y desarrolladores de datos a organizar y optimizar esta cadena de acciones, lo que crea una conexión sin interrupciones entre los procesos y los recursos de datos. Los métodos y las herramientas de organización ayudan a diseñar, compilar, implementar y supervisar estas cargas de trabajo de datos complejas.

Elige un método de organización

Para seleccionar un método de organización, debes identificar si tus cargas de trabajo son controladas por eventos, basadas en el tiempo o ambas. Un evento se define como un cambio de estado, como un cambio en los datos de una base de datos o un archivo agregado a un sistema de almacenamiento. En la organización controlada por eventos, una acción en un sitio web puede activar una actividad de datos, o es posible que un objeto que llegue a un bucket determinado deba procesarse de inmediato en el momento de su llegada. En la organización basada en el tiempo, es posible que los datos nuevos deban cargarse una vez al día o con suficiente frecuencia para producir informes por hora. Puedes usar la organización controlada por eventos y basada en el tiempo en situaciones en las que necesitas cargar objetos en un data lake en tiempo real, pero los informes de actividad en el data lake solo se generan a diario.

Elige una herramienta de organización

Las herramientas de organización ayudan con las tareas que participan en la administración de cargas de trabajo de datos complejas, como combinar varios servicios de Google Cloud o de terceros con trabajos de BigQuery o ejecutar varios trabajos de BigQuery en paralelo. Cada carga de trabajo tiene requisitos únicos para la administración de dependencias y parámetros a fin de garantizar que las tareas se ejecuten en el orden correcto con los datos correctos. Google Cloud proporciona varias opciones de organización que se basan en el método de organización y los requisitos de las cargas de trabajo.

Recomendamos usar Dataform, Workflows, Cloud Composer o Vertex AI Pipelines para la mayoría de los casos de uso. Consulta el siguiente gráfico para obtener una comparación en paralelo:

Dataform Workflows Cloud Composer Vertex AI Pipelines
Enfoque Transformación de datos Microservicios ETL o ELT Aprendizaje automático
Complejidad * ** *** **
Perfil del usuario Administrador o analista de datos Arquitecto de datos Ingeniero de datos Analista de datos
Tipo de código JavaScript y SQL YAML o JSON Python Python
¿Sin servidores? Completamente administrado
No apto para Cadenas de servicios externos Transformación y procesamiento de datos Canalizaciones de baja latencia o basadas en eventos Tareas de infraestructura

En las siguientes secciones, se detallan estas herramientas de organización y muchas otras.

Consultas programadas

La forma más simple de organizar la carga de trabajo es programar consultas recurrentes directamente en BigQuery. Si bien este es el enfoque menos complejo para la organización, lo recomendamos solo para las cadenas de consultas directas sin dependencias externas. Las consultas programadas de esta manera deben escribirse en GoogleSQL y pueden incluir declaraciones de lenguaje de definición de datos (DDL) y lenguaje de manipulación de datos (DML).

Método de organización: basado en el tiempo

Dataform

Dataform es un framework de transformación gratuito, bien definido y basado en SQL que orquesta tareas complejas de transformación de datos en BigQuery. Cuando se cargan datos sin procesar en BigQuery, Dataform te ayuda a crear una colección organizada, probada y controlada por versiones de conjuntos de datos y tablas. Si deseas obtener más información para usar Dataform con BigQuery, consulta Crea y ejecuta un flujo de trabajo de SQL.

Método de organización: controlado por eventos

Workflows

Workflows es una herramienta sin servidores que organiza servicios basados en HTTP con una latencia muy baja. Es mejor encadenar microservicios, automatizar tareas de infraestructura, integrarlos con sistemas externos o crear una secuencia de operaciones en Google Cloud. Para obtener más información sobre cómo usar Workflows con BigQuery, consulta Ejecuta varios trabajos de BigQuery en paralelo.

Método de organización: controlado por eventos y controlado por el tiempo

Cloud Composer

Cloud Composer es una herramienta completamente administrada compilada en Apache Airflow. Es mejor para cargas de trabajo de extracción, transformación, carga (ETL) o extracción, carga y transformación (ELT), ya que admite varios tipos y patrones de operador, y la ejecución de tareas en otros productos de Google Cloud y destinos externos. Para obtener más información sobre el uso de Cloud Composer con BigQuery, consulta Ejecuta un DAG de análisis de datos en Google Cloud.

Método de organización: basado en el tiempo

Vertex AI Pipelines

Vertex AI Pipelines es una herramienta sin servidores basada en Kubeflow Pipelines especialmente diseñada para organizar cargas de trabajo de aprendizaje automático. Automatiza y conecta todas las tareas del desarrollo y la implementación de tu modelo, desde los datos de entrenamiento hasta el código, lo que te brinda una vista completa de cómo funcionan tus modelos. Si deseas obtener más información sobre el uso de Vertex AI Pipelines con BigQuery, consulta Exporta e implementa un modelo de aprendizaje automático de BigQuery para la predicción.

Método de organización: controlado por eventos

Apigee Integration

Apigee Integration es una extensión de la plataforma de Apigee que incluye conectores y herramientas de transformación de datos. Es mejor integrarse a aplicaciones empresariales externas, como Salesforce. Para obtener más información sobre el uso de Apigee Integration con BigQuery, consulta Comienza a usar la integración de Apigee y un activador de Salesforce.

Método de organización: controlado por eventos y controlado por el tiempo

Cloud Data Fusion

Cloud Data Fusion es una herramienta de integración de datos que ofrece canalizaciones de ELT/ETL sin código y más de 150 conectores y transformaciones preconfigurados. Para obtener más información sobre el uso de Cloud Data Fusion con BigQuery, consulta Replica datos de MySQL en BigQuery.

Método de organización: controlado por eventos y controlado por el tiempo

Cloud Scheduler

Cloud Scheduler es un programador completamente administrado para trabajos como la transmisión por lotes o las operaciones de infraestructura que deben realizarse en intervalos de tiempo definidos. Para obtener más información sobre el uso de Cloud Scheduler con BigQuery, consulta Programa flujos de trabajo con Cloud Scheduler.

Método de organización: basado en el tiempo

Cloud Tasks

Cloud Tasks es un servicio completamente administrado para la distribución asíncrona de tareas de trabajos que se pueden ejecutar de forma independiente, fuera de tu carga de trabajo principal. Es mejor delegar las operaciones en segundo plano lentas o administrar las tarifas de llamadas a la API. Para obtener más información sobre el uso de Cloud Tasks con BigQuery, consulta Agrega una tarea a una cola de Cloud Tasks.

Método de organización: controlado por eventos

Herramientas de terceros

También puedes conectarte a BigQuery a través de varias herramientas de terceros populares, como CData y SnapLogic. El programa BigQuery Ready ofrece una lista completa de las soluciones de socios validadas.

Herramientas de mensajería

Muchas cargas de trabajo de datos requieren conexiones de mensajería adicionales entre microservicios separados que solo deben activarse cuando ocurren ciertos eventos. Google Cloud proporciona dos herramientas diseñadas para integrarse en BigQuery.

Pub/Sub

Pub/Sub es una herramienta de mensajería asíncrona para canalizaciones de integración de datos. Está diseñada para transferir y distribuir datos como interacciones del usuario y eventos del servidor. También se puede usar para el procesamiento paralelo y la transmisión de datos desde dispositivos de IoT. Para obtener más información sobre el uso de Pub/Sub con BigQuery, consulta Transmite de Pub/Sub a BigQuery.

Eventarc

Eventarc es una herramienta controlada por eventos que te permite administrar el flujo de cambios de estado en toda la canalización de datos. Esta herramienta tiene una amplia gama de casos prácticos, como la solución automatizada de errores, el etiquetado de recursos, el retoque de imágenes y mucho más. Para obtener más información sobre el uso de Eventarc con BigQuery, consulta Compila una canalización de procesamiento de BigQuery con Eventarc.

¿Qué sigue?