spinner

De la falta de datos a los problemas de gestión y escalabilidad

Los datos de una compañía son el centro del paradigma Data Mesh, sin embargo, para que eso sea así, es necesario cubrir determinadas implicaciones en cuanto al descubrimiento, gestión y responsabilidad sobre los datos, necesarias para habilitar la autonomía de los equipos, sin perder el control sobre el gobierno de los datos.

Como veíamos en nuestro artículo “Data Mesh, una nueva aproximación para una arquitectura de datos transformacional”, Data Mesh es una aproximación socio-técnica de la gestión y acceso de datos analíticos de una compañía u organización. Y se centra en cuatro retos fundamentales:

  • Pensar en los datos como el producto central.
  • Un gobierno de los recursos y datos federado.
  • Distribuir la responsabilidad de los datos en los dominios de negocio.
  • Herramienta autoservicio.

Estos retos se producen en un contexto en el que las compañías han crecido, y con ellas la diversidad y cantidad de fuentes de datos, aumentando en gran medida su capacidad de generación de datos.

Obstáculos para la autonomía

Sin embargo, la capacidad de estas organizaciones para escalar su capacidad de tratar y aprovechar los datos que generan no es suficiente, y es debido en gran medida a dos problemas:

  • El aislamiento del conocimiento y los datos en las unidades de negocio.
  • Los cuellos de botella producidos por unidades especializadas y centralizadas de las compañías (Ej.: Equipo de ciencia de datos).

Estos problemas provocan que las distintas partes de una organización generen relaciones de dependencia con otras, reduciendo la agilidad de todas ellas. Tradicionalmente, esto se resolvía con burocracia, llamadas e hilos de correo o reuniones, lo cual termina resolviendo el problema pero no de forma rápida.

La propuesta de Data Mesh, como veíamos en nuestro artículo, “Pasos hacia el Data Mesh mínimo”, se basa en involucrar a cada parte de la organización en este proceso, distribuyendo funciones y responsabilidades.

Rompiendo los silos

Si las unidades de negocio, punto más cercano a las fuentes de datos, son las personas que tienen el conocimiento más profundo sobre el contexto y valor de los datos, parece que lo más útil sería que esas mismas personas traten de generar iniciativas para explotar ese valor con el mayor retorno posible. Sin embargo, explotar datos en una gran compañía no solo implica utilizarlos, requiere responsabilidad.

Para que los datos sean útiles para toda la compañía y, más concretamente para otras unidades de negocio, las fuentes de datos deben asumir la responsabilidad de mantener la calidad, el metadatado o la disponibilidad de esos datos, asegurando y facilitando que otras unidades puedan aprovechar también estos datos de forma segura, coherente y autosuficiente.

Minimizando dependencias

En muchas grandes compañías, sus unidades de negocio necesitan del conocimiento y la experiencia de especialistas de la empresa para poder llevar a cabo iniciativas y servicios sobre los datos. No es suficiente con tener el conocimiento sobre su origen y valor, si no tienes la capacidad de explotarlo.

Sin embargo, estos especialistas suelen conformar un departamento único, que da servicio a toda o gran parte de la organización, lo que produce cuellos de botella. Para ello, Data Mesh no solo pretende distribuir la responsabilidad sobre los datos, sino también la capacidad de explotación de los mismos, proponiendo distribuir a esos especialistas entre las propias unidades de negocio.

De esta forma se podrían alcanzar tres objetivos:

  • Aumentar la capacidad y autosuficiencia de las unidades de negocio.
  • Reducir silos de conocimiento y dependencias entre departamentos.
  • Propiciar la mentalidad del dato como producto, distribuyendo la explotación y el ownership de los datos.

Posibles soluciones e implicaciones

Para intentar abordar estos retos, Data Mesh incluye, entre sus principios y aspiraciones, una plataforma que habilite el autoservicio de los datos (self-serve platform). Para nosotros, la mejor forma de comenzar a cumplir esa aspiración es habilitar, mediante la tecnología de forma inicial, soluciones en dos retos más adyacentes que hemos podido identificar:

  • Descubrimiento y calidad: Habilitar la disponibilización de los datos por parte de las unidades de negocio, asegurando su calidad y confiabilidad, y facilitando el descubrimiento autónomo de datos de otras unidades.
  • Responsabilidad descentralizada y gobierno: Facilitar que las unidades de negocio puedan ejercer esa responsabilidad descentralizada en cuanto a sus datos, manteniendo su gobierno centralizado.

Para poder explorar estas cuestiones, hemos realizado dos pruebas de concepto con el objetivo de revisar el soporte que dan herramientas ya disponibles con respecto a estos retos. En concreto se han podido realizar sobre Google Cloud Platform, revisando las funcionalidades ofrecidas por dos de sus servicios, en concreto Data Catalog, IAM y Storage.

Descubrimiento y calidad

Uno de los problemas que encuentran actualmente las unidades de negocio es la falta de herramientas para que los especialistas puedan encontrar datos útiles para generar productos o servicios que aporten valor. No porque la organización no genere dichos datos, sino porque o bien no son encontrables, o bien no son practicables.

Las unidades de negocio donde se generan no disponen de herramientas para incorporar información sobre el contexto de los datos o las reglas de negocio bajo las que operan. Hasta ahora la aproximación mas cercana eran los catálogos de datos tradicionales, donde especialistas y técnicos aportan información de valor para manejar los datos, pero quizá no tan operativos para productivizarlos.

Por otro lado, los especialistas tampoco disponen de herramientas para descubrir esos datos en base a esas reglas de negocio o contexto. Actualmente se suele “solucionar” mediante interacciones directas entre personas que ya tienen una relación previa con interés en el caso de uso, lo cual deja poco margen para la automatización, y aporta poco en aspectos técnicos también fundamentales para el negocio o aspectos legales, como la trazabilidad o el linaje.

Ante estas necesidades, como equipo hemos realizado un exploratorio de que funcionalidades cubre la herramienta Data Catalog de GCP, llegando a las siguientes conclusiones:

  1. Solución inicial al descubrimiento: Permite encontrar y explorar datasets en base a la información contextual almacenada en sus metadatos.
  2. El nivel de etiquetado es muy profundo: Permite etiquetar de forma libre los recursos de datos a distintos niveles (dataset, tabla, columna, …), aportando información sobre calidad o naturaleza de la información. Sin embargo no permite gobernar ni permisionar ese etiquetado al mismo nivel, ni generar relaciones entre los recursos o especialistas.
  3. Poca interoperabilidad con otros servicios: A pesar de que dispone de una API con la que se podría alcanzar determinada automatización mediante el uso de servicios como Audit Logs o Dataflow, la herramienta no tiene integración nativa con estos servicios, con otros de GCP o con servicios de terceros.
  4. No soporta documentación: No provee la posibilidad de relacionar ni mantener la documentación asociada al dataset o su utilización, aunque sí permite compartir consultas relevantes asociadas al mismo.
  5. Interfaz poco humana: Para facilitar la autosuficiencia de las unidades de negocio es necesario que se ponga foco en evolucionar las interfaces adaptándolas a usuarios más cercanos a otros ámbitos como el negocio.

Aunque los catálogos de datos ya se conocían como solución para el gobierno y descubrimiento de datos, la aparición de los nuevos retos mencionados requieren de soluciones más globales. Como hemos visto, existen alternativas comerciales en los principales proveedores de servicios cloud (AWS, GCP, …).

Sin embargo, grandes compañías que alojan sus procesos y datos en estos proveedores, prefieren sus propias soluciones. Ejemplos como los de Spotify, Uber o Airbnb indican que cada caso de uso posee unos requisitos y necesidades específicas y dependientes del negocio (como el tiempo real o el carácter social de los datos), lo que provoca que estas compañías opten por desarrollar sus propias soluciones.

Algunos retos a los que se enfrenta el descubrimiento son dependientes del modelo y procesos de gobierno de los mismos, en especial el Escalado y la Distribución. Por lo que las aproximaciones a ambos retos deben evolucionar de forma síncrona, dando soporte la una a la otra.

Responsabilidad descentralizada y gobierno

El segundo reto que creemos destacable es el gobierno de los datos y como este convive y habilita la responsabilidad descentralizada que las distintas unidades de negocio o departamentos deben ejercer para alcanzar mayor autosuficiencia.

Ya no solo se trata de la gestión de los recursos de datos y su información asociada, sino de asegurar la calidad, seguridad y confianza los mismos (visión global), mientras se facilita la autosuficiencia de distintos departamentos para hacer mantener, gestionar o hacer uso de los datos (visión local). Los nuevos retos requieren que ese gobierno y gobernanza evolucionen.

La gestión de datos se refiere a la gestión de las necesidades de todo el ciclo vital de los datos de una organización. La gobernanza de datos asegura que las funciones referentes a los datos queden bien definidas y que la responsabilidad y transparencia gocen de consenso en toda la empresa.

Hasta ahora la información se almacena junto con los procesos que operan sobre ella o la gobiernan, las empresas tienen sus datos en la misma plataforma donde controla el uso que sus departamentos hacen de ellos. Generalmente, el gobierno de esos datos y procesos se ejerce de forma integral por una unidad de trabajo centralizada dentro de la propia organización, produciendo nuevos cuellos de botella y pérdida de contexto.

Por ello, si otorgamos independencia a los departamentos para hacer uso de los datos, debemos federar la responsabilidad de los mismos, aunque podamos mantener centralizado el gobierno de estos procesos. De esta forma, el mismo departamento que antes se ocupaba tanto de la visión global, como de la local, podrá ahora centrarse más en la primera, pasando simplemente a dar soporte a la segunda, ahora distribuida.

Con el objetivo de validar si los servicios que ofrece GCP en la actualidad son capaces de cubrir estos requisitos, se ha realizado una revisión de los servicios de IAM y Cloud Storage. Sin embargo, debido a las actuales políticas de gobierno de nuestra compañía, algunas funcionalidades no han podido ser probadas de forma práctica al completo. De este trabajo destacamos los siguientes aprendizajes:

  1. Control de accesos: El servicio de IAM de GCP permite gestionar y configurar los roles que se necesitan para la gestión de unidades de negocio o dominios en un Data Mesh mínimo.
  2. Cifrado: Se protege la información en tránsito y en almacenamiento, la gestión de claves se puede realizar a nivel de dominio.
  3. Seguridad: Permite crear redes aisladas por dominio o unidad de negocio mediante VPC y configurar los accesos o detectar anomalías con Cloud Armor.
  4. Monitorización: GCP proporciona un panel que muestra toda la actividad realizada dentro de la cuenta, registrando cada acción que un usuario hace sobre cualquier servicio o recurso de GCP.

Aunque nosotros nos hemos centrado en revisar lo que GCP puede aportar, existen retos en cuanto al gobierno del dato y gobernanza que quedan fuera de su alcance. Por ejemplo, cada vez más empresas tienen sus plataformas en entornos híbridos, en los que conviven servicios de proveedores Cloud (a veces varios) con servicios on-premise.

Este tipo de entornos presentan situaciones a los que las plataformas cloud actuales no están preparadas. ¿Qué pasa cuando los usuarios están en varias plataformas a la vez? ¿Cómo se mantiene la coherencia entre los distintos servicios? ¿Cómo se gobierna el acceso y permisos en este tipo de entornos cuando ni siquiera sus esquemas o capacidades son homogéneas?

Conclusiones

El descubrimiento de datos supone un problema de la industria en sí mismo, y no solo un reto dentro de Data Mesh. Sin embargo, el enfoque de producto no consigue cubrir los requisitos de los actuales casos de uso, por lo que parece que tiene más sentido abordarlo como servicio. Además, los catálogos de datos como solución habilitan nuevas iniciativas que mejoran ese descubrimiento.

Y aunque el escenario ideal requiere influir en el modelo de responsabilidad y gobernanza de la organización, es posible aproximar el problema en el corto-medio plazo intentando aportar a los usuarios más técnicos, y posteriormente ampliar el alcance a otros perfiles que requieran de esos cambios culturales.

Por ello, una de las posibles vías para atacar estos retos puede ser explorar servicios de terceros, centradas en aproximar soluciones a estos problemas de forma conjunta. Entre las que hemos podido identificar están Colibra, Informática o MeshCloud. Todas ellas pretenden solucionar algunos puntos de ambos retos (descubrimiento y gobernanza) de forma orquestada.

Fuente de la imagen: Unsplash

Las opiniones vertidas por el autor son enteramente suyas y no siempre representan la opinión de BBVA Next Technologies.

¿Quieres saber que más cosas hacemos en BBVA Next Technologies?