🎃 Grandes descuentos en libros en línea, eformaciones y vídeos*. Código CALABAZA30. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. El dato
  3. Integración de datos
Extrait - El dato Guía de supervivencia en el mundo de los datos
Extractos del libro
El dato Guía de supervivencia en el mundo de los datos Volver a la página de compra del libro

Integración de datos

Introducción

Transportar o intercambiar datos requiere la implantación de servicios y, muy a menudo, de una infraestructura específica. Pero esta última también debe responder a necesidades específicas que, a menudo, van más allá de las interconexiones. Por tanto, la fase de puesta en marcha de un proyecto de integración de datos debe ser objeto de un estudio previo en profundidad, con el fin de conocer a fondo todos los métodos de conexión y transformación que serán necesarios. En función de las necesidades de consumo y distribución de datos, así como de las limitaciones impuestas por los sistemas anteriores y posteriores, será necesario elegir el modelo de integración adecuado, o incluso varios. También será necesario manipular y transformar esta información para cambiar su forma o estado. Esta elección de solución es, por supuesto, un elemento fundamental en cualquier proyecto de datos, de ahí el propósito de este capítulo.

Características

Cuando se habla de integración de datos, es fácil imaginar los datos pasando por un canal que va de los emisores a los receptores. En cierto modo, este canal es la tubería que permite que los datos viajen desde sus orígenes hasta sus destinos. Y, por supuesto, como cualquier tubería, tendrá sus propias propiedades que habrá que elegir en función de la necesidad a la que se dirija. Es obvio que una necesidad de adquisición de datos en tiempo real no tendrá las mismas propiedades que un batch para nutrir un Data Warehouse.

Estas son las propiedades clave que hay que tener en cuenta:

  • Sus propias características (velocidad de transmisión de datos, número de emisores, receptores, etc.)

  • Arquitectura/Estructura

  • Su(s) dirección(es) de uso (enlace)

  • El tipo de conexión requerida (síncrona o asíncrona)

  • Cómo se utiliza (lote o flujo)

Images/cap3_pag2.png

Características del canal de transmisión

También hay que tener en cuenta las limitaciones específicas del entorno. Los emisores y receptores de datos también tienen sus propias características y, por tanto, sus propias limitaciones, que se deben tener en cuenta desde el principio del proyecto de integración de datos.

También podríamos añadir nociones de nivel de servicio como el tiempo de respuesta, los requisitos de escalabilidad, la tolerancia a fallos y la gestión de la recuperación, etc. Pero centrémonos en las características clave que desempeñan un papel fundamental en la elección de la solución a implantar.

Hoy en día también oímos hablar mucho del pipeline de datos (o Data Pipeline). La imagen de un pipeline es bastante acertada y, a primera vista, se asemeja a la noción de canal que hemos visto anteriormente. Sin embargo, aunque la noción de Data Pipeline engloba efectivamente la descripción del canal de transmisión de datos, también puede incluir un cierto número de transformaciones necesarias para que los datos sean utilizables. Por tanto, el Data Pipeline se debe considerar como un medio de interconexión de datos enriquecido, que permite ingerirlos, procesarlos, prepararlos, transformarlos y gestionarlos de forma controlada y administrada.

Empecemos por examinar los fundamentos de una solución...

Principios de funcionamiento

Una vez vistas las distintas características que hay que tener en cuenta a la hora de elegir y aplicar una solución de integración, veamos más de cerca cómo funcionan las soluciones de intercambio y/o transporte de datos. Antes de examinar las principales familias de soluciones que se ofrecen, es interesante ver que todas siguen más o menos los mismos principios fundamentales.

1. Pasos para una buena integración de datos

Las soluciones de integración de datos siempre funcionan en varias fases distintas:

1. Conexión con los sistemas fuente a través de interfaces, también conocidas como conectores. Estos conectores son específicos de las fuentes de datos y permiten al sistema convertir los datos a un formato propietario de la solución. Esto se puede comparar con un traductor multi-idioma, en el que cada idioma es un conector.

2. Agregación de datos de estas fuentes dispares.

3. Análisis y correlación de los datos (posible fusión de flujos, o lo contrario, separación de flujos). Es normal que durante esta fase, los datos se transformen, se alteren y, por qué no, se enriquezcan. Cuando se recuperan datos geográficos, por ejemplo, se pueden fusionar países con códigos o nombres similares (recuérdese que los datos pueden proceder de distinas fuentes) y, por qué no, añadir información...

Soluciones de integración de datos

Ahora que hemos presentado las características y los métodos de funcionamiento de las herramientas de integración de datos, podemos pasar a las principales soluciones que se encuentran habitualmente en la industria.

1. ETL

Las ETL son potentes herramientas para extraer, transformar y cargar datos de uno o varios sistemas de origen, en uno o varios sistemas de destino. Al principio, estas soluciones se utilizaban principalmente para grandes cargas por lotes y almacenes de datos. Con el tiempo, sin embargo, también se han convertido en auténticas plataformas de intercambio de datos para gestionar accesos o flujos en tiempo real. Su gama de opciones de transformación también se ha ampliado considerablemente. Ahora, además de las transformaciones tradicionales (formato, uniones, agregados, etc.), estas soluciones pueden realizar tareas específicas de la calidad de los datos, gestionar formatos complejos, etc.

La sigla ETL significan en inglés Extract, Transform and Load. El orden es importante porque indica el orden en que se procesan los datos:

1. Extracción de todos los datos

2. Transformación centralizada de los datos recogidos

3. Carga (Load) de datos en los sistemas de destino

Las etapas E y L se gestionan mediante los conectores que vamos a ver, pero toda la potencia de estas soluciones reside en la T (etapa 2), donde se opera toda la lógica centralizada de tratamiento de los datos. Esta T es el corazón del motor ETL:

images/cap3_pag22.png

Cómo funciona un ETL

El elemento central (que realiza las transformaciones) también se denomina motor de transformación, porque es a través de él por donde pasarán todos los datos para ser transformados. Esta elección de arquitectura no es nada trivial, ya que significa que este servidor se convierte en una especie de cuello de botella (o punto débil) y, por lo tanto, debe estar suficientemente bien dimensionado y diseñado para soportar la carga (y gestionar la recuperación en caso de error).

a. Conectores

Los conectores proporcionados por las soluciones ETL pueden ofrecer estas funciones:

  • Simplicidad y transparencia: independientemente de la conectividad y su complejidad, cualquier desarrollador ETL puede crear muy rápidamente un flujo de interconexión, sin conocer necesariamente los sistemas subyacentes. Esto se debe...

Soluciones orientadas a los buses

La mayoría de las soluciones o plataformas de intercambio de datos con fines operativos (y no de inteligencia empresarial), se basan en dos principios fundamentales:

  • El primero es un bus de mensajes o datos (Message Broker).

  • La segunda le permite gestionar la distribución y persistencia de los mensajes a través de (según su elección):

  • Una cola de mensajes

  • Un mecanismo Publicación-Suscripción (Publish - Subscribe)

La mayoría de las soluciones (como ActiveMQ, RabbitMQ, Kafka, etc.) combinan estos dos conceptos, pero es posible separarlos.

1. El bus de mensajes

El bus de mensajes proporciona uno o varios canales para la difusión de mensajes.

Un mensaje es un dato que se puede intercambiar en distintos formatos. Por tanto, se puede tratar de simples datos de texto, datos semiestructurados (XML, JSON, etc.) o incluso datos no estructurados (imagen, sonido, etc.).

2. Modo punto a punto

Así, cada mensaje se puede enviar al canal que elija (denominado cola). Se trata de una comunicación punto a punto porque solo hay un emisor y un receptor, y cada mensaje enviado (entrada del bus), se puede recuperar en la salida del bus. El bus solo desempeña el papel de una cola en la que en primer lugar se almacenan todos los mensajes enviados (se ponen en una pila) y luego son recuperados por el receptor o receptores.

Images/cap3_pag34.png

Principio de intercambios en una cola de mensajes

3. Modo publicación-suscripción...