¿Qué es Cloud Data Fusion?

Cloud Data Fusion es un servicio de integración de datos empresariales nativo de la nube y completamente administrado para compilar y administrar canalizaciones de datos con rapidez.

La IU web de Cloud Data Fusion te permite compilar soluciones de integración de datos escalables para limpiar, preparar, combinar, transferir y transformar datos sin tener que administrar la infraestructura.

Cloud Data Fusion se basa en el proyecto de código abierto CDAP. En esta página, hay vínculos al sitio de documentación de CDAP, en el que puedes encontrar información más detallada.

Interfaces

Para usar Cloud Data Fusion, puedes usar la IU web visual o las herramientas de línea de comandos.

Usa la IU web sin código

Cuando usa Cloud Data Fusion, se usa la consola y la IU web independiente de Cloud Data Fusion.

  • En Google Cloud Console, crea un proyecto de Google Cloud, crea y borra instancias de Cloud Data Fusion (implementaciones únicas de Cloud Data Fusion) y visualiza los detalles de instancias de Cloud Data Fusion.

  • En la IU de Cloud Data Fusion, se usan las diferentes páginas, como Pipeline Studio o Wrangler, para diseñar visualmente canalizaciones de datos y usar Cloud Data Fusion.

En un alto nivel, puedes seguir los siguientes pasos:

  1. Crea una instancia de Cloud Data Fusion en Google Cloud Console.

  2. Busca tu instancia de Cloud Data Fusion en la página Instancias de la consola y haz clic en el vínculo Ver instancia, en la columna Acción. Se abrirá la IU de Cloud Data Fusion en una pestaña nueva del navegador.

  3. Usa las distintas páginas de la IU web de Cloud Data Fusion para diseñar tus canalizaciones y administrar los metadatos de forma visual.

Usa herramientas de línea de comandos

Como alternativa a la IU web, puedes usar herramientas de línea de comandos para crear y administrar tus instancias y canalizaciones de Cloud Data Fusion.

  • En la referencia de REST, se describe la API para crear y administrar tus instancias de Cloud Data Fusion en Google Cloud.

  • La referencia de CDAP describe la API de REST para crear y administrar canalizaciones y conjuntos de datos.

Conceptos básicos

En esta sección, se proporciona una introducción a algunos de los conceptos principales de Cloud Data Fusion. Algunas secciones proporcionan vínculos a la documentación de CDAP, en los que puedes obtener más información sobre cada concepto y más detalles.

Instancia de Cloud Data Fusion

Una instancia de Cloud Data Fusion es una implementación única de Cloud Data Fusion. Para comenzar a usar Cloud Data Fusion, debes crear una instancia de Cloud Data Fusion a través de la consola.

Puedes crear varias instancias en un solo proyecto de consola y especificar la región de Google Cloud en la que deseas crear tus instancias de Cloud Data Fusion.

Según tus requisitos y restricciones de costos, puedes crear una instancia de Desarrollador, básica o empresarial.

Cada instancia de Cloud Data Fusion contiene una implementación independiente y única Cloud Data Fusion que contiene un conjunto de servicios que controlan la administración del ciclo de vida de las canalizaciones, la organización, la coordinación y la administración de metadatos. Estos servicios se ejecutan mediante recursos de larga duración en un proyecto de usuario.

Entorno de ejecución

Cloud Data Fusion crea entornos de ejecución efímeros para ejecutar canalizaciones cuando ejecutas de forma manual tus canalizaciones o cuando las canalizaciones se ejecutan a través de un programa de tiempo o un activador de estado de la canalización. Cloud Data Fusion es compatible con Dataproc como un entorno de ejecución, en el que puedes elegir ejecutar canalizaciones, como programas MapReduce, Spark o Spark. Cloud Data Fusion aprovisiona un clúster efímero de Dataproc en tu proyecto de cliente al comienzo de la ejecución de una canalización, ejecuta la canalización mediante MapReduce o Spark en el clúster y, luego, borra el clúster después de que se completó la ejecución de la canalización.

De manera alternativa, si administras tus clústeres de Dataproc en entornos controlados, a través de tecnologías como Terraform, también puedes configurar Cloud Data Fusion para no aprovisionar clústeres. En esos entornos, puedes ejecutar canalizaciones con los clústeres de Dataproc existentes.

Ajuste de escala automático

Puedes usar la política predefinida de ajuste de escala automático de Cloud Data Fusion o tu propia política para automatizar la administración de los recursos del clúster.

Si quieres obtener información sobre cómo crear tu propia política para aumentar los trabajadores de clúster a fin de cumplir con las demandas de carga de trabajo, consulta Ajuste de escala automático de clústeres.

Si deseas obtener información sobre el uso de la política de ajuste de escala automático predefinido para las canalizaciones que se ejecutan en Cloud Data Fusion 6.6 y versiones posteriores, consulta Cuándo usar el ajuste de escala automático.

Canalización

Una canalización es una forma de diseñar datos y flujos de control de forma visual para extraer, transformar, combinar, agregar y cargar datos de varias fuentes de datos locales y en la nube. La compilación de canalizaciones te permite crear flujos de trabajo complejos de procesamiento de datos que pueden ayudarte a resolver problemas de transferencia, integración y migración de datos. Puedes usar Cloud Data Fusion para compilar canalizaciones por lotes y en tiempo real, según tus necesidades.

Las canalizaciones te permiten expresar tus flujos de trabajo de procesamiento de datos mediante el flujo lógico de datos, mientras que Cloud Data Fusion controla toda la funcionalidad necesaria para ejecutarse de forma física en un entorno de ejecución. El planificador de Cloud Data Fusion transforma el flujo lógico en cálculos paralelos, y usa Apache Spark y Apache Hadoop MapReduce en Dataproc.

Nodo de canalización

En la página Studio de la IU de Cloud Data Fusion, las canalizaciones se representan como una serie de nodos organizados en un grafo acíclico dirigido (DAG), que forman un flujo unidireccional. Los nodos representan las diversas acciones que puedes realizar con tus canalizaciones, como leer desde fuentes, realizar transformaciones de datos y escribir resultados en receptores. Puedes desarrollar canalizaciones de datos en la IU de Cloud Data Fusion mediante la conexión de fuentes, transformaciones, receptores y otros nodos.

Cuando proporcionas acceso a registros y métricas, las canalizaciones ofrecen a los administradores una forma sencilla de poner en funcionamiento sus flujos de trabajo de procesamiento de datos sin necesidad de herramientas personalizadas.

Obtén más información sobre las canalizaciones en el sitio de documentación de CDAP.

Trabajo de replicación

La replicación te permite replicar tus datos de manera continua y en tiempo real desde Datastores operativos, como SQL Server y MySQL hasta BigQuery.

Para obtener más información, consulta la página Trabajo de replicación.

Activación

Puedes crear un activador en una canalización de datos (llamada canalización ascendente), para que se ejecute cuando se complete una o más canalizaciones diferentes (llamadas canalizaciones descendentes). Eliges cuándo se ejecuta la canalización descendente: cuando la canalización ascendente se ejecuta de forma correcta, falla, se detiene o cualquier combinación de estas.

Los activadores son útiles para las siguientes tareas:

  • Limpiar tus datos una vez y hacer que estén disponibles para varias canalizaciones descendentes a fin de consumirlos.
  • Compartir información, como argumentos de entorno de ejecución y configuraciones de complementos, entre canalizaciones. Esto se llama configuración de carga útil.
  • Tener un conjunto de canalizaciones dinámicas que se pueda ejecutar mediante los datos de la hora, el día, la semana o el mes, a diferencia de una canalización estática que debe actualizarse para cada ejecución.

Complemento

Un complemento es un módulo personalizable que se puede usar para extender las capacidades de Cloud Data Fusion. Cloud Data Fusion proporciona complementos para fuentes, transformaciones, agregados, receptores, recopiladores de errores, publicadores de alertas, acciones y acciones posteriores a la ejecución.

En ocasiones, se hace referencia a un complemento como un nodo, en general en el contexto de la IU web de Cloud Data Fusion.

En la siguiente tabla, se describen las diversas categorías de complementos disponibles en Cloud Data Fusion.

Categoría Descripción
Origen Las fuentes son conectores para las bases de datos, transmisiones en tiempo real o archivos desde los cuales se obtienen los datos. Te permiten transferir datos mediante una IU simple, para que no tengas que preocuparte por la codificación de conexiones de nivel bajo.
Transformaciones Las transformaciones te permiten manipular los datos después de transferirlos. Por ejemplo, puedes clonar un registro, formatear JSON y hasta crear transformaciones personalizadas con el complemento de JavaScript.
Estadísticas Los complementos de Analytics se usan para realizar agregaciones como la agrupación y la unión de datos de distintas fuentes, además de ejecutar operaciones de estadísticas y de aprendizaje automático. Cloud Data Fusion proporciona complementos integrados para varios de estos casos prácticos.
Acciones Los complementos de acciones definen acciones personalizadas que se programan para que se realicen durante un flujo de trabajo, pero no manipulan directamente los datos en este. Por ejemplo, con la acción personalizada de la base de datos, puedes ejecutar un comando de base de datos arbitrario al final de la canalización. Como alternativa, puedes activar una acción para mover de archivos dentro de Cloud Storage.
Receptores Los datos deben escribirse en un receptor. Cloud Data Fusion contiene varios receptores, como Cloud Storage, BigQuery, Spanner, bases de datos relacionales, sistemas de archivos y unidades centrales.
Recopiladores de errores Cuando los nodos se topan con valores nulos, errores lógicos o con otras fuentes de errores, puedes usar un complemento de recopilador de errores para detectarlos. Puedes conectar este complemento al resultado de cualquier complemento de transformación o estadísticas para detectar errores que coincidan con una condición que definas. Luego, puedes procesar estos errores en un flujo de procesamiento de errores distinto en tu canalización.
Publicadores de alertas Los complementos del Publicador de alertas te permiten publicar notificaciones cuando ocurren eventos poco comunes. Luego, los procesos posteriores pueden suscribirse a estas notificaciones para activar el procesamiento personalizado de estas alertas.
Condicionales Las canalizaciones ofrecen complementos de flujo de control en formato condicionales. Los complementos condicionales te permiten ramificar la canalización en dos rutas distintas, según si el predicado de condición especificado se evalúa como verdadero o falso.

Si necesitas un complemento que no se proporciona, puedes desarrollar un complemento personalizado.

ADVERTENCIA: No se recomienda instalar un complemento que no sea de confianza, ya que podría representar un riesgo de seguridad.

Perfil de Compute

Un perfil de procesamiento especifica cómo y dónde se ejecuta una canalización. Un perfil encapsula toda la información necesaria para configurar y borrar el entorno de ejecución físico de una canalización. Por ejemplo, un perfil incluye el tipo de proveedor de servicios en la nube (como Google Cloud), el servicio para usar en el proveedor de servicios en la nube (como Dataproc), credenciales, recursos (memoria y CPU) imagen, conteo de nodos mínimo y máximo y otros valores.

Un perfil se identifica por nombre y se le debe asignar un aprovisionador y su configuración relacionada. Un perfil puede existir a nivel de la instancia de Cloud Data Fusion o a nivel del espacio de nombres.

Obtén más información sobre los perfiles en el sitio de documentación de CDAP.

Funciones

Categoría Funciones
Desarrollo
  • Diseñador gráfico de canalizaciones
  • Más de 100 complementos: conectores, transformaciones y acciones
  • Transformaciones visuales sin código
  • Más de 1,000 transformaciones integradas
  • Bibliotecas de calidad de los datos
  • SDK de desarrollador
Prueba
  • Depuración visual de la canalización
  • Marco de trabajo de prueba
Ejecución
  • Dataproc: lote (Apache Spark, Apache Hadoop MapReduce) y tiempo real (Spark Streaming)
  • Flujo de control y flujo de datos en canalizaciones
Operaciones
  • API de REST
  • Programación y activadores
  • Paneles de supervisión
Metadatos de integración
  • Captura de metadatos operativos y técnicas automáticas
  • Anotaciones de metadatos empresariales
  • Buscar conjuntos de datos por palabra clave y esquema
  • Conjunto de datos y linaje nivel de campo para la trazabilidad
Extensibilidad
  • Complementos personalizados
  • Widgets configurables de la IU del complemento
  • Aprovisionadores personalizados
  • Perfiles de procesamiento personalizados
Capacidad de reutilización.
  • Plantillas de canalización y complemento
  • Argumentos y preferencias del entorno de ejecución
  • Centro para distribuir complementos, canalizaciones y soluciones reutilizables
Integraciones de Google Cloud
  • GKE: Implementación de instancia
  • Dataproc: Ejecución de la canalización (por lotes y en tiempo real)
  • Cloud KMS: Almacenamiento seguro de datos
  • Cloud SQL y Cloud Storage: Almacenamiento de metadatos de entidades y artefactos
  • Persistent Disk: Registros y almacenamiento de métricas
  • Console - administración del ciclo de vida de las instancias
  • Google Cloud's operations suite(solo registros de auditoría)
Conectores (Google Cloud)
  • Cloud Storage
  • BigQuery
  • Cloud SQL
  • Pub/Sub
  • Spanner
  • Bigtable
  • Datastore
Conectores (distintos de Google Cloud)
  • Servicios de nube pública
  • Sistemas de archivos
  • Bases de datos relacionales
  • Almacenes de NoSQL
  • Unidades centrales y otros sistemas heredados
Transformaciones
  • Transformaciones sin código para la limpieza, combinación, armonización y asignación
  • Transformaciones interactivas con comentarios
  • Transformaciones basadas en código (en el navegador): Scala (Apache Spark), Python y JavaScript
  • Trabajos de Spark y MapReduce existentes
Estadísticas
  • Datos recopilados
  • Uniones
  • Agrupar por

¿Qué sigue?