Qué es un Catálogo de datos o Data Catalog parece algo muy intuitivo y que cualquiera mínimamente iniciado en este mundo comprendería, pero llevarlo a la práctica e implementarlo, es algo más complicado. Para aquellos que no conocen este concepto, me gusta explicarlo con una analogía que leí hace un tiempo.
Imaginemos que estamos en un supermercado gigante, donde hay miles y miles de productos, y tenemos que encontrar algo sumamente específico. Por ejemplo, necesitamos localizar un dulce de chocolate, que sea integral y que no tenga trazas de huevo ni lactosa. Si el supermercado está medianamente organizado, lo más lógico sería dirigirnos al pasillo o los estantes donde están colocados los dulces, pero, probablemente, tengamos que revisar muchas etiquetas y productos hasta encontrar el que realmente estamos buscando.
El concepto de Data Catalog nos ayuda hacer este proceso mucho más rápido. Si tuviéramos un sistema al que le pudiéramos preguntar por una serie de palabras clave (como podrían ser chocolate, integral, sin trazas de huevo y sin lactosa), seguramente nos diría el sitio exacto donde encontrar nuestro producto.
Esto es justamente lo que hace un Data Catalog por nosotros, con el añadido de que, además, nos facilita una descripción detallada del producto con información sobre su procedencia, formato, trazabilidad, métricas de calidad e incluso la forma de usarse.
Ahora bien, cuando hablamos de la implementación de un Data Catalog en una organización, tenemos que tener muy claro que no es simplemente un inventario de datos, sino que también nos debe aportar una serie de características que pueden sernos útiles en el día a día.
En este post, vamos a hablar de qué condiciones debe cumplir un sistema de Data Catalog y ver algunas de las alternativas que existen en el mercado.
Características imprescindibles de un Data Catalog
Metadatos
Hablar de Data Catalog es hablar de metadatos. De hecho, básicamente, un Data Catalog es un almacén de metadatos. Existen multitud de frameworks que nos sirven de guía e incluso nos permiten restringir la variedad de metadatos que se pueden introducir. Los podemos dividir en las siguientes categorías:
- Metadatos técnicos: Son aquellos aspectos meramente técnicos que nos ayudan en la gestión de la información, como por ejemplo extensiones de los datos, datos de compresión, datos de estructura, o dónde se encuentran los datos a nivel físico.
- Metadatos de negocio: Se emplean para la categorización de negocio. Por ejemplo, departamentos, sedes, definiciones, relación con procesos de negocio o propietarios conceptuales de los datos.
- Metadatos operativos: Ayudan a definir la trazabilidad y herencia de los datos.
- Metadatos de seguridad: Definen quién debería tener acceso a la información, tanto por departamento a nivel de negocio, como por seguridad a nivel de ISO o legal. Ayuda a establecer diferentes niveles de acceso dependiendo de la criticidad del dato.
Métricas de datos
Algunos sistemas de Data Catalog integran la capacidad de definir métricas acerca de los datos. La mayoría de estas métricas están orientadas a características puramente cuantitativas referentes a un conjunto de datos. Es decir, podemos encontrar medias de frecuencias, estadísticas de repetición, volumen de datos, etc.
Las métricas ayudan al usuario a conocer mejor los datos sin necesidad de realizar análisis y también a comprender si está ocurriendo algún proceso operativo que no esté contemplado dentro de las políticas de Data Quality y Data Observability que pueda estar corrompiendo los datos.
Control de versiones
De manera similar a los sistemas de versiones en el desarrollo software, en los entornos de gestión de la información, también se pueden versionar los datos y tener indicadores de validez de cada uno de ellos. Esta es una capacidad muy importante, sobre todo cuando tenemos que realizar análisis del dato en contextos pasados. Algunas herramientas de Data Warehouse permiten realizar este tipo de análisis con sus sistemas de time traveling.
Democratización y descubrimiento
Las principales ventajas de tener catalogados los datos son poder compartirlos con otros usuarios, hacerlos públicos para la empresa o tener la posibilidad de distribuirlos de manera selectiva. Esto es algo que los sistemas de Data Catalog proveen, pues para ello han sido ideados. Sin embargo, no todos ellos tienen la capacidad de integrar de manera automatizada nuevos datos a su catálogo.
Dentro del ecosistema de gestión del dato, muchas de las herramientas nuevas y ya existentes están incluyendo sistemas de descubrimiento y etiquetado automático de la información. Principalmente, esto se debe al uso de IA en el proceso de clasificación del dato, pero no es una función infalible. A menudo, hay que corregir el etiquetado y, por el momento, gran cantidad de sistemas han optado por hacer un etiquetado sugerido pero que ayuda al proceso de actualización y regeneración del dato.
¿Qué herramienta de Data Catalog elegir?
A la hora de decidir qué herramienta usaremos, tendremos que tener en cuenta las características funcionales mencionadas anteriormente. Más allá, hay muchas otras particularidades a tener en cuenta, como los tipos de licencias que tendrá la herramienta o cuánta gente tendrá acceso, ya que si es una herramienta privativa y necesitamos muchas licencias, podría encarecer el presupuesto de la solución.
Por otra parte, debemos asegurarnos de que sea capaz de integrar y soportar nuestras fuentes de datos. Por ejemplo, si estamos usando DBT y la herramienta tiene capacidades de Data Observability, no querremos usar un sistema que no nos permita integrar correctamente nuestra herramienta de ETL.
También hay que considerar si queremos extender la gestión del dato a un nivel superior de Data Governance (y, por tanto, el sistema de Data Catalog puede llegar a ser demasiado limitado para tener en cuenta la gestión global del dato), el estándar que hay detrás de la herramienta en cuanto a la especificación (que sí es único de la herramienta y podría dificultarnos en caso de migrar a otro método en el futuro), etc.
En Git existe un recurso interesante que puede ayudarnos a comparar las diferentes herramientas de Data Catalog que existen actualmente en el mercado.
Desde mi experiencia, recomiendo dar una oportunidad a DataHub. Es una plataforma muy completa que ha sido desarrollada por Linkedin y que ofrece una gran variedad de servicios no solamente orientados a Data Catalog, sino que a Data Governance también. Además, podéis echar un vistazo a una demo de DataHub si estáis interesados.
En futuros artículos, hablaré más en detalle sobre DataHub y cómo puede integrarse. En nuestro caso, marida muy bien con el ecosistema de herramientas que en Damavis solemos utilizar para desarrollar las soluciones tecnológicas de Big Data que ponemos en marcha para nuestros clientes como pueden ser DBT para la parte de ELT/ELT, Airflow para la orquestación y automatización y Snowflake o BigQuery como Data Warehouse.
Conclusión
En resumen, un Data Catalog eficaz es una inversión estratégica que puede transformar la manera en que las organizaciones gestionan, comparten y utilizan sus datos, mejorando la eficiencia operativa y promoviendo una cultura Data Driven donde la toma de decisiones está basada en la realidad inequívoca que muestran los datos.
Implementar un Catálogo de datos en una organización supone un paso muy importante y no es trivial. Debemos ser conscientes de que Data Catalog no solo nos permite encontrar datos específicos de manera rápida y eficiente, sino que también nos proporciona una serie de características esenciales como la gestión de metadatos, métricas de datos, control de versiones y la capacidad de democratizar y descubrir información.