Explicación de la arquitectura de canalización de datos
Una canalización de datos es una serie de pasos utilizados para procesar datos. Los datos se ingieren al comienzo de la canalización si no están cargados actualmente en la plataforma de datos. Cada paso entrega una salida que sirve como entrada para el siguiente paso en una serie de pasos. Este proceso continúa hasta que se completa la canalización. Los pasos independientes se pueden ejecutar en paralelo en algunos casos.
La tubería de datos transporta datos sin procesar desde plataformas y bases de datos de software como servicio a almacenes de datos para análisis e inteligencia comercial (BI). El desarrollador puede crear canalizaciones escribiendo código e interactuando manualmente con las bases de datos de origen, o puede reinventar la rueda evitando el uso de una canalización de datos SaaS.
Las canalizaciones de datos como servicio son un concepto revolucionario, pero ¿cuánto trabajo se necesita para armar una canalización de datos de la vieja escuela? Revisemos las partes y etapas principales de las canalizaciones de datos, así como las tecnologías de canalización más utilizadas.
¿Qué es un canal de datos?
Las canalizaciones de datos son una serie de pasos para procesar datos. Una tubería comienza a ingerir datos si aún no se ha cargado en la plataforma de datos. Luego, hay una serie de pasos, cada uno de los cuales produce una salida que es la entrada del siguiente paso. Este proceso continúa hasta que se completa la canalización. Los pasos independientes se pueden ejecutar en paralelo en algunos casos.
Una canalización de datos consta de tres partes principales: fuente, paso o pasos de procesamiento y destino. Las canalizaciones de datos pueden tener un sumidero como destino. Es fácil mover datos entre aplicaciones y almacenes de datos, conectando un lago de datos a una base de datos de análisis con una canalización de datos. Las canalizaciones de datos también pueden tener el mismo origen y receptor, de modo que la canalización participe completamente en el cambio de datos. Existe una tubería de datos donde los datos se procesan entre los puntos A y B.
Las canalizaciones de datos desempeñan un papel fundamental en la planificación y el desarrollo de las organizaciones, ya que desarrollan aplicaciones con bases de código pequeñas que cumplen un propósito específico. Un sistema o aplicación de origen puede generar datos que alimentan múltiples canalizaciones de datos, que pueden alimentar otras múltiples canalizaciones o aplicaciones.
Veamos una publicación en las redes sociales. Los datos de este evento podrían alimentar un informe en tiempo real en las redes sociales, una aplicación de análisis de sentimientos que muestre resultados positivos, negativos y neutrales, o una aplicación de mapa mundial que muestre todas las menciones. Todos los datos de estas aplicaciones provienen de la misma fuente; sin embargo, cada aplicación requiere su propio conjunto de canalizaciones de datos que deben completarse sin problemas antes de que el usuario final pueda ver los resultados.
Las ventajas de un canal de datos
Es probable que los datos sean una parte importante de las operaciones de su organización. Necesita una vista única de todos esos datos para analizarlos. Para realizar un análisis profundo, los datos de múltiples sistemas y servicios deben combinarse de manera significativa. El flujo de datos en sí mismo puede no ser confiable: la corrupción o los cuellos de botella pueden ocurrir en muchos puntos durante la transición de un sistema a otro. A medida que se expande la amplitud y el alcance de los datos, estos problemas solo aumentarán en tamaño e impacto.
Esta es la razón por la cual las canalizaciones de datos son tan importantes. Esto automatiza el proceso y elimina la mayoría de los pasos manuales. Puede tomar decisiones más rápidas basadas en datos con la ayuda de análisis en tiempo real. Tu organización los necesita:
- Analiza datos en tiempo real
- Almacenamiento de datos basado en la nube
- Contiene datos de múltiples fuentes.
Componentes de canalización de datos
A continuación, analizaremos algunos de los componentes básicos de una canalización de datos que debe tener en cuenta si planea trabajar con uno.
- Origen. Una tubería de datos comienza en el origen, donde se ingresan los datos. El ecosistema de datos analíticos y de informes de una empresa puede incluir fuentes de datos (aplicaciones de procesamiento de transacciones, dispositivos IoT, redes sociales o API) y plataformas de almacenamiento (almacén de datos, lago de datos o casa de lago de datos).
- Destino. Un destino es un punto en el que se transfieren datos. El destino dependerá del caso de uso: por ejemplo, los datos se pueden usar para potenciar las herramientas de análisis y visualización de datos, o se pueden almacenar en un lago de datos o almacén.
- Flujo de datos. Esto se refiere al movimiento de datos del punto A al punto B, incluidas las modificaciones que sufre a lo largo del proceso, así como los almacenes de datos por los que pasa.
- Almacenamiento. En los sistemas de almacenamiento, los datos se conservan en varias etapas a medida que pasan por la canalización. Hay muchos factores que afectan las decisiones de almacenamiento de datos, como la cantidad y la frecuencia de las consultas de datos a un sistema de almacenamiento, el uso de datos, etc.
- Procesando. El procesamiento de datos implica ingerir datos de la fuente, almacenarlos, transformarlos y entregarlos. El procesamiento de datos trata sobre el flujo de datos, pero se enfoca en cómo implementar este movimiento. Los datos se pueden ingerir recuperándolos de los sistemas existentes, copiándolos de una base de datos a otra (replicación de bases de datos) o transmitiéndolos. Hay más opciones que las tres que mencionamos.
- flujo de trabajo En una canalización de datos, un flujo de trabajo define la secuencia de procesos (tareas) y sus dependencias entre sí. Aquí, sería beneficioso tener una buena comprensión de algunos conceptos: trabajos, upstream y downstream. Un trabajo es una parte del trabajo que realiza una tarea específica, en este caso, el procesamiento de datos. Los datos ingresan a una canalización desde una fuente ascendente y salen por un destino descendente. La canalización de datos es como un río que fluye cuesta abajo. Además, los trabajos ascendentes deben completarse correctamente antes de que puedan comenzar los trabajos descendentes.
- Supervisión. Los monitores verifican que la canalización de datos y sus pasos funcionen de manera efectiva: si mantienen la eficiencia a medida que crecen los volúmenes de datos, si los datos se mantienen precisos y consistentes a lo largo de los pasos de procesamiento y si la información se pierde en el camino.
Arquitectura de canalización de datos
canalización de datos ETL
La arquitectura de canalización de datos basada en ETL ha sido un estándar durante muchos años. Por lo general, extrae datos de varias fuentes, los formatea y los carga en un data warehouse o data mart empresarial.
Las canalizaciones ETL se utilizan generalmente para
- Migración de datos de sistemas heredados a un almacén de datos,
- Usar múltiples puntos de contacto para recopilar toda la información del cliente en un solo lugar (generalmente el sistema CRM),
- Proporcione una visión holística de las operaciones comerciales mediante la consolidación de grandes cantidades de datos de varias fuentes internas y externas.
- Se admiten varios conjuntos de datos para permitir un análisis más profundo.
La desventaja crítica de una arquitectura ETL es que debe volver a crearla cada vez que cambien las reglas comerciales (y los formatos de datos).
canalización de datos ELT
ELT difiere de ETL en el flujo de pasos: la carga ocurre antes de la transformación. La arquitectura ELT es útil cuando
- No se sabe qué harás con los datos y a quién se los cambiarás exactamente;
- La velocidad de ingesta juega un papel importante; y
- Grandes cantidades de datos están involucradas.
Sin embargo, ELT es una tecnología más madura que ETL, lo que crea problemas en términos de herramientas y grupos de talentos. Las canalizaciones de datos se pueden construir utilizando una arquitectura ETL o ELT o una combinación.
Canalización por lotes
Las canalizaciones de datos que utilizan el procesamiento por lotes recopilan datos a lo largo del tiempo y los procesan periódicamente. Un flujo de trabajo de análisis de datos tradicional implica hacer preguntas sobre datos recopilados previamente; probablemente piense en un análisis por lotes cuando imagina un flujo de trabajo de análisis de datos tradicional. Durante décadas, el procesamiento por lotes ha sido una parte vital de la analítica y la inteligencia comercial.
El procesamiento de datos por lotes es un método bien establecido para trabajar con grandes conjuntos de datos en proyectos sensibles al tiempo. Sin embargo, si necesita información en tiempo real, debe elegir arquitecturas que admitan análisis de transmisión.
Transmisión de datos de tuberías
Los análisis en tiempo real o de transmisión se basan en el procesamiento de datos en tiempo real, también conocido como transmisión de eventos. Básicamente, es una forma de procesar datos continuamente, ya que se recopilan en segundos o milisegundos. Un sistema en tiempo real responde rápidamente a la nueva información cuando se basa en una arquitectura basada en eventos. Aunque las canalizaciones de datos en tiempo real se pueden utilizar para el análisis, dichas canalizaciones son fundamentales para los sistemas que requieren un procesamiento de datos rápido.
El uso de análisis en tiempo real permite a las empresas obtener información actualizada sobre las operaciones y responder en consecuencia sin demora, además de brindar soluciones para monitorear el desempeño de la infraestructura de una manera inteligente y eficiente. Las empresas que no pueden permitirse retrasos en el procesamiento de datos, como las empresas de gestión de flotas que operan sistemas telemáticos, deberían optar por una arquitectura de transmisión en lugar del procesamiento por lotes.
Canalización de grandes datos
Las canalizaciones de Big Data realizan las mismas tareas que las canalizaciones más pequeñas. Su capacidad para respaldar el análisis de Big Data los distingue.
Como canalización de Big Data, ELT parece la solución perfecta para cargar cantidades ilimitadas de datos sin procesar y analizarlos en vivo, extrayendo información sobre la marcha. Sin embargo, el procesamiento por lotes y ETL también son capaces de manejar grandes cantidades de datos, gracias a las herramientas modernas. Por lo general, las organizaciones usan una combinación de ETL y ELT, así como múltiples tiendas para analizar Big Data tanto por lotes como en tiempo real.
Conclusión
No hay duda de que una canalización de datos es esencial para la gestión de datos y la planificación estratégica modernas. Mediante el uso de canalizaciones de datos, puede conectar datos entre diferentes organizaciones y partes interesadas. Los ingenieros de datos pueden obtener información valiosa para una mejor toma de decisiones al respaldar el análisis de datos detallado con movimientos de datos eficientes.
Hay muchas arquitecturas y herramientas de diseño disponibles para desarrollar la canalización, lo que facilita lograr un mejor análisis. Sin embargo, antes de implementar canalizaciones de datos, es esencial comprender qué pueden hacer los datos por su organización y cómo puede recopilar datos de la web.
Imagen destacada de Mudassar Iqbal de Pixabay
Si quieres más artículos de este tipopincha aquí.
#Explicación #arquitectura #canalización #datos