ETL: Extracción, transformación, y carga de datos

En Classora disponemos de un software propio para realizar ETL desde distintas fuentes, de forma rápida y sin errores. Los procesos ETL son unos de los componentes más importantes de una infraestructura de Big Data y/o Business Intelligence. Aunque suelen resultar transparentes a los usuarios de las plataformas, los procesos ETL recuperan datos de todos los orígenes necesarios y los preparan para ser presentados mediante las herramientas de análisis y de reporting. Por tanto, la exactitud de cualquier plataforma que implique la integración de datos depende enteramente de los procesos ETL. En el caso de Classora, los robots de ETL son los encargados de complementar y enriquecer cada dato con los metadatos correspondientes (fecha de carga, fuente, fiabilidad del dato, frecuencia de refresco, significado, relaciones. etc.) que permiten su posterior procesado.

Existen numerosos desafíos para implementar unos procesos ETL eficaces y fiables:

  • Los volúmenes de datos crecen de forma exponencial, y los procesos ETL tienen que procesar grandes cantidades de datos. Algunos sistemas se actualizan simplemente de manera incremental, mientras que otros requieren una recarga completa en cada iteración.
  • A medida que los sistemas de información crecen en complejidad, también aumenta la disparidad de las fuentes y, por tanto, su dificultad de integración. Los procesos ETL necesitan una extensa conectividad y una mayor flexibilidad.
  • Las transformaciones implicadas en los procesos ETL pueden llegar a ser muy complejas. Los datos necesitan agregarse, analizarse, computarse, procesarse estadísticamente, etc. En ocasiones también se necesitan transformaciones específicas y costosas desde el punto de vista computacional.

Actualmente, existen herramientas comerciales, e incluso de software libre, con una gran potencia para la extracción de datos. El software de Classora, unido al expertise de nuestro equipo, conforman un tándem muy potente para sacar adelante cualquier proyecto de este tipo en tiempo récord. De hecho, los problemas de rapidez y rendimiento no suelen suponer hoy en día un gran problema técnico para la extracción y la carga. Donde realmente se sitúa el cuello de botella es en la transformación de datos: en este punto la información desestructurada se debe convertir en información estructurada para poder ser integrada con el resto de los datos que ya existen en el sistema destino.

Almacenes de datos corporativos

Como puedes ver, en la jerga de las empresas Data Driven hay muchos vocablos que empiezan con el prefijo "Data". No son conceptos complejos, al contrario, son piezas que encajan perfectamente en el puzzle que debe conseguir montar cada empresa para culminar su proyecto basado en datos.

Data Warehouse

Un data warehouse es una base de datos corporativa que se caracteriza por integrar y depurar información de una o más fuentes distintas, para luego procesarla permitiendo su análisis desde infinidad de pespectivas y con grandes velocidades de respuesta. La creación de un datawarehouse representa en la mayoría de las ocasiones el primer paso, desde el punto de vista técnico, para implantar una solución completa y fiable de Business Intelligence. La ventaja principal de este tipo de bases de datos radica en las estructuras en las que se almacena la información (modelos de tablas en estrella, en copo de nieve, cubos relacionales... etc). Este tipo de persistencia de la información es homogénea y fiable, y permite la consulta y el tratamiento jerarquizado de la misma (siempre en un entorno diferente a los sistemas operacionales). Los data warehouses son estructuras muy maduras cuyas ventajas son de sobra conocidas por grandes empresas.

Data Mart

Un data mart es una base de datos departamental, especializada en el almacenamiento de los datos de un área de negocio específica. Se caracteriza por disponer la estructura óptima de datos para analizar la información al detalle desde todas las perspectivas que afecten a los procesos de dicho departamento. Un datamart puede ser alimentado desde los datos de un datawarehouse, o integrar por si mismo un compendio de distintas fuentes de información. Por tanto, para crear el datamart de un área funcional de la empresa es preciso encontrar la estructura óptima para el análisis de su información, estructura que puede estar montada sobre una base de datos OLTP, como el propio datawarehouse, o sobre una base de datos OLAP. La designación de una u otra dependerá de los datos, los requisitos y las características específicas de cada departamento.

Data Lake

Un data lake es un repositorio de almacenamiento centralizado que contiene big data de varias fuentes en un formato granular y sin procesar. Puede guardar datos estructurados o desestructurados, lo que significa que los datos pueden conservarse en un formato flexible para ser usados en un futuro. Al guardar los datos, un data lake los asocia con identificadores y etiquetas de metadatos para poder extraerlos más rápidamente. El término "data lake" fue acuñado por James Dixon, director tecnológico de Pentaho, y hace referencia a la naturaleza particular de los datos ahí almacenados, a diferencia de los datos "limpios" y "conectados" que se guardan en bases de datos tradicionales. Los data lakes suelen estar configurados sobre un clúster de hardware escalable. Esto permite volcar los datos al data lake por si se necesitan más adelante sin tener que preocuparse por la capacidad de almacenamiento.

Por último, y como definición extra, un ODS (Operational Data Store) es un almacén operacional de datos, es decir, una base de datos intermedia entre los orígenes de la información y el destino. A menudo se utiliza para limpiar datos, resolver redundancias y comprobar la integridad de los mismos según las reglas del negocio. Su propósito, por tanto, consiste en facilitar el tránsito de los datos, aplicando tecnologías de integración como la virtualización de datos, la federación de datos, o los procesos de extracción, transformación y carga (ETL). Un ODS no sustituye a un almacén de datos, ni a un data mart, ni a un data lake... sino que puede convertirse en una de sus fuentes.

Herramientas de visualización y análisis de datos

Estas herramientas de análisis suelen ser piedras angulares en cualquier empresa Data Driven, así como en los proyectos de Big Data y Business Intelligence:

Cuadro de Mando Integral

Un Cuadro de Mando Integral (CMI) o "Balanced Scorecard" es una herramienta de control empresarial que permite monitorizar los objetivos de una compañía y de sus diferentes departamentos. Se basa en un conjunto de indicadores numéricos (KPIs) que muestran de forma continuada si la empresa y sus empleados están cumpliendo los resultados definidos en su plan estratégico. Según la metodología de Kaplan & Norton, los objetivos estratégicos y sus correspondientes indicadores se deben organizar en cuatro perspectivas: financiera, cliente, interna y aprendizaje/crecimiento.

Sistema de Soporte a la Decisión

Un Sistema de Soporte a la Decisión (DSS) es, como su propio nombre indica, una herramienta enfocada a facilitar la toma de decisiones gracias a los datos disponibles de una organización. No es un típico generador de informes estáticos, sino una aplicación que permite bucear en los datos hasta llegar al origen de los problemas. De hecho, es imprescindible que presente informes dinámicos, flexibles e interactivos, rapidez en el tiempo de respuesta, integración entre todos los sistemas de la compañía (evitar islas de datos) y disponibilidad de información histórica (no sólo los dos últimos ejercicios).

Sistema de Información Ejecutiva

Un Sistema de Información Ejecutiva (EIS) es un dashboard que muestra informes y listados (query & reporting) de las diferentes áreas de negocio, de forma consolidada, para facilitar la monitorización de la empresa o de una unidad de la misma. El EIS se caracteriza por ofrecer al ejecutivo un acceso rápido y efectivo a la información compartida, utilizando interfaces gráficas visuales e intutivas. Suele incluir alertas e informes basados en excepción, así como históricos y análisis de tendencias. También es frecuente que permita la domiciliación por correo de los informes más relevantes.

Además de estos conceptos, cabe destacar los Dashboards Departamentales, que son paneles de monitorización de distintas áreas de la empresa. Por ejemplo, dashboard de recursos humanos, dashboard de redes sociales, dashboard de contabilidad, dashboard de atención al cliente... etc. Cada responsable de departamento es el encargado de definir los KPIs a monitorizar en cada caso, así como los informes iniciales que se presentan en cada caso y el nivel de profundidad de los mismos. Al contrario que las herramientas anteriores, la visión de un dashboard departamental suele estar limitada a los datos del propio departamento, con lo cual no presenta una panorámica global de la compañía y de las causas-efectos de las políticas de unos departamentos sobre otros.

Referencias de Classora en proyectos avanzados de datos

Hemos desarrollado con éxito decenas de proyectos de integración y análisis de datos, tanto para empresas pequeñas (incluyendo comercios locales) como para grandes multinacionales (incluyendo empresas del IBEX-35). Por cuestiones de confidencialidad no podemos presentarlos todos, pero aquí dejamos una pequeña muestra con diez proyectos singulares. Puedes consultar nuestros clientes y referencias aquí.

  • Proyecto para una cadena de supermercados, que consistió en diseñar un data warehouse y cargarlo automáticamente con procesos ETL a partir de las diferentes bases de datos departamentales. El DWH se utiliza para distintos objetivos, entre ellos, alimentar a un Sistema de Soporte a la Decisión (DSS) y monitorizar indicadores clave para la empresa (KPIs).
  • Proyecto para una empresa del sector textil, que consistió en crear un portal de APIs, es decir, una plataforma web en la cual se puedan registrar, probar y mantener todos los microservicios que se utilizan en los entornos de desarrollo y producción de la empresa, incluyendo APIs REST, gRPC, GraphQL, AsyncAPI, SOAP, Kafka... etc. Todo ello correctamente integrado con Swagger, un servidor de mocks y todos los demás flujos de la empresa.
  • Proyecto para una empresa del sector auditivo, que consistió en implementar una plataforma online para realizar audiometrías (gráficas de frecuencias vs decibelios) y pruebas auditivas complejas a distancia. Los datos de los pacientes se agregan y se cruzan con un glosario de dolencias y un vademecum para proponer tratamientos predefinidos, que después son modificados manualmente por el profesional de salud que trata a cada paciente.
  • Proyecto para una empresa del sector bancario, que consistió en desarrollar un servicio de monitorización de dos boletines oficiales (BOE y BORME). En el marco del análisis de riesgos, el servicio sirve para detectar empresas en situación concursal.
  • Proyecto para una empresa de telecomunicaciones, que consistió en generar un servicio para enriquecer los contenidos audiovisuales (películas o series) que se emiten en TV, con datos adicionales en tiempo real. Estos datos se muestran en una app, incluyendo personajes, lugares y empresas que se mencionan durante los diálogos.
  • Proyecto para una empresa de industria gráfica, que consistió en implantar una solución que integrase definiciones de la RAE en libros electrónicos (ebooks) en formato epub. El objetivo es que el lector pueda consultar ipso facto dudas sobre términos que figuran en la lectura. El proyecto tiene versión online y offline, y ya ha trascendido las fronteras españolas.
  • Proyecto para una editorial de contenidos online: servicio que muestra las farmacias de guardia a nivel municipal, comarcal, provincial y autonómico, para una determinada fecha. La dificultad del proyecto radicó en que las farmacias de guardia son publicadas por los Colegios Oficiales de Farmacéuticos de cada provincia, por lo que fue necesario coordinar 52 crawlers.
  • Proyecto para una agencia de noticias, desarrollado bajo el marco del "Digital News Innovation Fund (DNI Fund)" de Google, el trabajo consistió en implementar un portal que integrase datos de distintas fuentes, con el objetivo de enriquecer noticias con gráficas y tablas de todo tipo. Puedes consultar el resultado en www.epdata.es
  • Proyecto para una empresa de prensa digital: consistió en implantar un servicio para monitorizar, en tiempo real, las portadas de los principales medios de comunicación españoles. El objetivo es presentar una lista de "temas del momento" (trending topics) y cotejar dichos temas con los que está generando internamente su redacción. El cálculo de los pesos de cada tema incluye factores como el tamaño de letra, la posición en portada, la existencia de foto y sus dimensiones, el nº de comentarios y el nº de shares.
  • Proyecto para una empresa del sector videojuegos, en el contexto de un portal de comercio electrónico: el proyecto se basa en robots (crawlers) que visitan constantemente las tiendas de e-commerce de la competencia para detectar descuentos, promociones, rebajas y cualquier variación en el precio de los productos publicados. También se historiza, con fines de análisis estadístico, el nº de comentarios y la valoración numérica de cada artículo.

Estos son sólo algunos ejemplos de proyectos singulares... quizás de los más representativos de cada tipo, para ilustrar la diversidad de proyectos que podemos acometer con datos. No es una lista exhaustiva, de hecho no se incluyen los servicios de clasificación de textos para medios digitales.

¿Preparado para iniciar un proyecto de integración y análisis de datos? Contacta con nosotros para que te guiemos en todo el proceso.

Formulario de contacto


«No se puede mejorar lo que no se controla, no se puede controlar lo que no se mide...»

(William Edwards Deming)