Datawarehouse – Datalake – Datamesh

Atenderemos a una pregunta muy frecuente entre nuestros estudiantes y suscriptores. ¿Qué es DATAWAREHOUSE vs DATALAKE vs DATAMESH? Nos proponemos a compartir una reflexión sobre lo que esta ocurriendo con los DataWarehouse, los DataLake y una propuesta nueva que es el DataMesh. Vamos a ver bien que son, que tienen en común y que valor tratan agregar unos sobre otros.

Datawarehouse - Datalake - Datamesh

¿Qué es Datawarehouse – Datalake – Datamesh?

DATAWAREHOUSE – Almacenes de Datos

En un principio las aplicaciones vivían aisladas entre si, conjuntos de datos que no se hablaban. Si uno quería combinar datos que venían de distintos lados era un esfuerzo brutal. La otra dificultad estaba en realizar cambios en la estructura de los datos. Entonces era muy difícil que la información resultara disponible para usuario finales. Requería un procesamiento importante por parte de los equipos de sistemas. El gran desafío en ese momento era normalizar las cosas, la idea era que si yo normalizaba los datos, entonces sumado a eso, interfaces de consultas iba a poder dejar que los usuarios finales se sirvieran los datos.

Para normalizarla la idea era hacer un almacén de datos, el lugar donde están los datos ya limpios. Pueden ser consultados sin cargar las aplicaciones transaccionales con lo cual tengo más libertad para dárselas a los usuarios finales pero había un problemita. Necesitábamos que la estructura estuviera bien de una vez y para siempre. Si algo cambiaba en el proceso, porque cambiaba el negocio o las necesidades, era muy rígido el proceso y generaba muchos problemas.

Lo bueno del caso, con lo que si se cumplió fue hacer disponible la información mediante interfaces graficas que permitían hacer consultas sin entender demasiado bases de datos relacionales, SQL y compañía. Algo realmente útil para usuario finales. El desafío era avanzar con que esto fuera más libre. Que se pudieran aceptar los cambios más rápidos.

DATALAKE – Lago de Datos

Nos fuimos entonces al Lago de datos, el lago de datos lo construimos con una mentalidad de big data, que pueda crecer todo lo que queramos, para liberalizar la idea fue que el formateo de la información se hace en la extracción, no en la carga. Entonces adentro uno puede guardar cualquier cosa. Al postergar el momento en el cual le damos estructura a lo que estamos buscando, entonces no nos atamos a un formato dado. Podemos tener más alta velocidad de respuesta.

La gran tentación entonces ahora es una gran ingestión de datos, guardamos por si nos va a hacer falta en el seguro. Dato que pasa, se pierde y no lo guarde, se ve como una desgracia. Tampoco nos preocupamos demasiado, dado lo barato que esta siendo el espacio de almacenamiento, en ver como es el retorno de la inversión de cada dato que entra. Los guardamos por las dudas.

Pero claro, si tengo que formatear los datos en la extracción ya eso si se le escapa a los usuario finales. Entonces nos encontramos con un equipo de ingeniero de datos centralizado que tiene su lista de prioridades para cumplir con las necesidades de datos de los usuarios finales. Estamos nuevamente en un problema.

DATAMESH

La solución pasa por productizar. Tenemos que para empezar partir este lago de datos en un montón de dominios de negocio cada uno con su lagunita. Que va a tener su equipo mixto de profesionales que se van a encargar de crear productos de datos que van a poder ser consumidos por varias arreas de la organización. Esta es la visión del Datamesh.

El Datamesh separa ese lago de datos por dominios de negocios, por grupo de usuarios que están atrás de un proyecto punta a punta. Sus necesidades de datos y de ingesta. El equipo esta alrededor de ese problema de negocios. Por lo tanto va a asumir un montón de cosas para ese contexto, que no va a ser el contexto general de la organización. Con lo cual ya ahí tenemos una ganancia interpretativa importante.

Hay que mantener maestros de datos generales que sean de aplicación mandatorio para todos los dominios para no perder consistencia en los datos. Además los equipos van a generar estos productos, estos productos van a tener las siguientes caracteristicas:

  • Descubribles
  • Direccionables
  • Confiables
  • Auto descripto
  • Interoperable
  • Centralmente Securitizado

Los equipos por dominios de negocio deberían contener:

  • Dueño de producto
  • Ingeniero de datos
  • Ingeniero de software
  • Expertos en confiabilidad

Ver Video explicativo sobre Datawarehouse – Datalake – Datamesh

Deja un comentario