Este es el último post de la serie dedicada a las mallas (mesh) en las arquitectura modernas, como la de microservicios.

Empezamos esta serie con un post donde se analizaba los conceptos de redes, la topología de red de malla y los diferentes tipos de arquitectura. A continuación, en el siguiente artículo analizamos más en profundidad el uso de mallas en la arquitectura de microservicios.

Luego, pasamos en detalle a ver service mesh y event mesh. Y ahora, para finalizar, nos adentraremos en un nuevo concepto: la malla de datos.

La importancia de los datos

En la era de la IA (Intelligence Artificial) no es una curiosa coincidencia que las empresas que se mantienen y lideran hayan gestionado la complejidad, hayan incorporado la experimentación/innovación basada en datos en todos los aspectos de su negocio y hayan mantenido el cambio continuo en respuesta al aprendizaje rápido.

Además, se han asociado con la analítica y el aprendizaje automático para comprender la realidad más allá de la lógica y el razonamiento humano. Obviamente, todo esto es posible teniendo datos analíticos que tienen algunas características como:

  • Tienen dueño y se responsabilizan de ellos.
  • Tienen calidad: los dueños se preocupan que los datos estén correctos y disponibles cuando se necesitan
  • No existe un cuello de botella, como puede ser en el caso de un data warehouse, lago de datos o LakeHouse para hacer disponibles los datos
  • Escalado técnico, con paradigmas como divide y vencerás y computación paralela y distribuida.

Sin embargo, muchas empresas se encuentran que la recopilación de datos, la experimentación y la inteligencia se desarrolla por un equipo de datos independiente. Estos equipos suelen estar sometidos a una gran presión. Existen problemas para que las unidades del negocio confíen en los datos, o a menudo no pueden encontrar los datos que necesitan.

El equipo de datos siempre está intentando ponerse al día, ya sea persiguiendo los fallos de las ETLs causados por cada pequeño cambio en las aplicaciones ascendentes y sus bases de datos, o tratando de satisfacer las necesidades de otras unidades impacientes que necesitaban una solución de datos para ayer.

Las unidades de negocio y de los sistemas operativos transaccionales no asumen ninguna responsabilidad ni interés en hacer que los datos estén disponibles, sean fiables y utilizables, lo resolverá el equipo de datos de y la plataforma analítica.

El tiempo de espera y la fricción para llegar a los datos correctos hacen muy difícil que la empresa se atreva a realizar nuevos experimentos y casos de uso con los datos para mejorar o cambiar el negocio que les diferencie de la competencia.

Características

Los datos en empresa los podemos diferencias entre los datos operativos y analíticos.

  • Datos operativos: apoyan el funcionamiento de la empresa y mantienen el estado actual del negocio con integridad transaccional. Estos datos son capturados, almacenados y procesados por transacciones en tiempo real, por sistemas OLTP (procesamiento de transacciones en línea). Los datos operativos se encuentran en las bases de datos de los microservicios, las aplicaciones o los sistemas de registros que soportan las capacidades empresariales. Mantienen el estado actual del negocio. El modelado y el almacenamiento de los datos operativos están optimizados para la lógica y los patrones de acceso de las aplicaciones o los microservicios. Se actualizan constantemente, con acceso de lectura y escritura.
  • Datos analíticos: es la visión histórica, integrada y agregada de los datos creados como subproductos del funcionamiento de la empresa. Es mantenida y utilizada por los sistemas OLAP (procesamiento analítico en línea). Los datos analíticos son la visión temporal, histórica y a menudo agregada de los hechos de la empresa a lo largo del tiempo. Se modelan para proporcionar una visión retrospectiva o prospectiva. Los datos analíticos están optimizados para la lógica analítica —formación de modelos de aprendizaje automático y creación de informes y visualizaciones—. Los datos analíticos forman parte de la categoría de "datos externos", datos a los que acceden directamente los consumidores analíticos. El modo de acceso analítico tiende a incluir lecturas intensivas en una gran cantidad de datos, con menos escritores. La definición original de datos analíticos como una colección de datos no volátil, integrada y variable en el tiempo sigue siendo válida. En resumen, los datos analíticos se utilizan para optimizar el negocio y la experiencia del usuario. Estos son los datos que alimentan las aspiraciones de IA y analítica de la organización.

Una posible alternativa a la situación problemática que se tiene con los datos analíticos en forma de monolito (plataforma, tecnología, equipo) es que las empresas, que hayan iniciado o estén en el camino de tener de diseñar sus aplicaciones en dominios y basadas en microservicios (aunque no es necesariamente), puedan tener el enfoque de gestión de datos analíticos planteados por la malla de datos, donde cada dominio ofrece su producto de datos analíticos que son explotados por la analítica y los modelos de Machine Learning.

La malla de datos es un enfoque organizativo-técnico descentralizado para compartir, acceder y gestionar datos analíticos en entornos complejos y a gran escala, dentro o entre organizaciones. La malla de datos es un nuevo enfoque en la obtención, gestión y acceso a los datos para casos de uso analítico a escala.

La malla de datos exige un cambio fundamental en los supuestos, la arquitectura, las soluciones técnicas y la estructura organizativa de nuestras organizaciones, en la forma en que gestionamos, utilizamos y poseemos los datos analíticos:

  • Desde el punto de vista organizativo, se pasa de la propiedad centralizada de los datos por parte de los especialistas que gestionan las tecnologías de las plataformas de datos a un modelo de propiedad de los datos descentralizado que devuelve la propiedad y la responsabilidad de los datos a los ámbitos empresariales desde los que se producen o utilizan los datos.
  • Desde el punto de vista de la arquitectura, se pasa de la recogida de datos en almacenes y lagos monolíticos a la conexión de datos a través de una malla distribuida de productos de datos a los que se accede mediante protocolos estandarizados.
  • Desde el punto de vista tecnológico, se pasa de las soluciones tecnológicas que tratan los datos como un subproducto de la ejecución del código de la tubería a las soluciones que tratan los datos y el código que los mantiene como una unidad viva y autónoma.
  • Desde el punto de vista operativo, el gobierno de los datos pasa de un modelo operativo centralizado de arriba abajo con intervenciones humanas a un modelo federado con políticas integradas en los nodos de la malla.
  • Principalmente, cambia nuestro sistema de valores de los datos como un activo que hay que recopilar a los datos como un producto para servir y deleitar a los usuarios de los datos (internos y externos a la organización).
  • Desde el punto de vista de la infraestructura, se pasa de dos conjuntos de servicios de infraestructura fragmentados e integrados punto a punto —uno para datos y análisis y otro para aplicaciones y sistemas operativos transaccionales— a un conjunto bien integrado de infraestructura tanto para los sistemas operativos como para los de datos.

La malla de datos puede utilizarse como elemento de una estrategia de datos empresarial, articulando el estado objetivo tanto de la arquitectura empresarial como de un modelo operativo organizativo con un modelo de ejecución iterativo.

Los cuatro principios de la malla de datos

En su forma más sencilla, puede describirse mediante cuatro principios que interactúan entre sí.

  1. Principio de propiedad del dominio

Descentralizar la propiedad de los datos analíticos a los dominios empresariales más cercanos a los datos o la fuente de los datos o sus principales consumidores. Descomponer los datos (analíticos) de forma lógica y en función del dominio empresarial que representan, y gestionar el ciclo de vida de los datos orientados al dominio de forma independiente. Alinear arquitectónicamente y organizativamente los datos empresariales, tecnológicos y analíticos.

  1. Principio de los datos como producto.

Los datos orientados al dominio se comparten como un producto directamente con los usuarios de datos: analistas de datos, científicos de datos, etc. Los datos, como producto, se ajustan a un conjunto de características de usabilidad:

  • Descubiertos.
  • Dirigible.
  • Comprensible.
  • Confiabilidad y veracidad.
  • Accesible de forma nativa.
  • Interoperable y componible.
  • Valioso por sí mismo.
  • Seguro.

Un producto de datos proporciona un conjunto de contratos de intercambio de datos explícitamente definidos y fáciles de usar. Cada producto de datos es autónomo y su ciclo de vida y modelo se gestionan independientemente de los demás.

Los datos como producto introducen una nueva unidad de arquitectura lógica denominada quantum de datos, que controla y encapsula todos los componentes estructurales necesarios para compartir los datos como productos— datos, metadatos, código, política y declaración de dependencias de la infraestructuras— de forma autónoma.

  1. Principio de la plataforma de datos de autoservicio

Una nueva generación de servicios de plataforma de datos de autoservicio que permite a los equipos interfuncionales de los dominios compartir datos. Los servicios de la plataforma se centran en la eliminación de la fricción del viaje de extremo a extremo del intercambio de datos, desde la fuente hasta el consumo.

Los servicios de plataforma gestionan el ciclo de vida completo de los productos de datos individuales. Gestionan una malla fiable de productos de datos interconectados. Proporcionan experiencias a nivel de malla, como la visualización del gráfico de conocimiento emergente y el linaje a través de la malla. La plataforma agiliza la experiencia de los usuarios de datos para descubrir, acceder y utilizar los productos de datos. También agiliza la experiencia de los proveedores de datos a la hora de crear, desplegar y mantener los productos de datos. El objetivo de la plataforma es reducir la carga cognitiva de los equipos de dominio, reducir el esfuerzo innecesario, aumentar la productividad de los dominios y reducir el coste total de propiedad.

  1. Principio de gobierno federado

Un modelo operativo de gobernanza de datos basado en una estructura federada de toma de decisiones y responsabilidad, con un equipo compuesto por representantes de los dominios, la plataforma de datos y expertos en la materia (legales, de cumplimiento, de seguridad, etc.). El modelo operativo crea una estructura de incentivos y responsabilidad que equilibra la autonomía y agilidad de los dominios, con la interoperabilidad global de la malla. El modelo de ejecución de la gobernanza se basa en gran medida en la codificación y automatización de las políticas a un nivel de grano fino, para cada producto de datos, a través de los servicios de la plataforma.

Los cuatro principios interaccionan entre sí para conseguir los objetivos propuestos por la malla de datos.

Conclusiones

Implementar una malla de datos requiere un cambio organizativo multifacético. De forma iterativa y junto con la entrega de los servicios que constituyen la malla de datos hay que tener en cuenta todas las decisiones de diseño organizativo, es decir de estrategia, cultura, recompensa, estructura, personas y procesos.

Para realizar la implementación de la malla de datos lo más sensato sería realizar un cambio organizativo basado en el movimiento, comenzar con algo pequeño y moverse con fluidez para mostrar el valor, conseguir la aceptación y reunir el impulso hacia un cambio sostenible y a escala para desplegar una malla de datos completa en la organización que satisfaga todas las necesidades de la analítica de la compañía.

Los valores culturales que fomentan las acciones y el comportamiento que están detrás de la estrategia de la implementación de una malla de datos son la orientación hacia el dominio, la autonomía y los propósitos a cumplir.

Aunque la estructura organizativa exacta variará de una organización a otra es conveniente tener en cuenta las diferentes topologías de equipo que se muestran en el libro “Team Topologies”. El límite de los productos de datos tiene un impacto directo en los equipos principales que evolucionan los dominios y contextos delimitados, a través de los equipos de productos de datos.

Cuéntanos qué te parece.

Los comentarios serán moderados. Serán visibles si aportan un argumento constructivo. Si no estás de acuerdo con algún punto, por favor, muestra tus opiniones de manera educada.