¿En qué consisten los denominados Data Lake?
Un Data Lake es un repositorio de datos en bruto, sin procesar y sin jerarquía alguna. En un Data Lake, los datos se mantienen en el tiempo, de manera indefinida, hasta que son necesarios para realizar un análisis o cualquier tipo de procesamiento. El hecho de que no existan jerarquías implica que se trata de una arquitectura plana, con sus ventajas y desventajas.
La idea central detrás de un Data Lake (un término asociado fuertemente al Big Data) es disponer de un lugar común para almacenar todos los datos que se generan en el negocio, en cualquier departamento, instancia o acción. Con esta estructura se escapa de la complejidad inicial del Data Warehouse jerárquico, otra arquitectura de almacenamiento de datos que organiza los datos en ficheros y carpetas. Más adelante volveremos sobre esto para explicar las diferencias esenciales entre ambos esquemas.
Principales beneficios del uso de Data Lakes
Podemos entender rápidamente en qué pueden beneficiar los lagos de datos a las compañías que operan con Big Data o con IoT:
- En primer lugar, permiten realizar búsquedas de datos con rapidez y sencillez. Básicamente, en un Data Lake tenemos una enorme cantidad de datos no organizados, pero bien etiquetados. Para recuperar los datos de la mejor manera posible es necesario contar con algoritmos de machine learning avanzados y específicos para ello.
- Podemos tener la capacidad de obtener valor de cualquier tipo de datos.
- El Data Lake puede almacenar todo tipo de datos, tanto estructurados como no estructurados de cualquier entrada que consideremos en nuestro negocio.
- Elevada flexibilidad.
- Es posible trabajar en tiempo real con los datos, por tanto, es sencillo preparar y compartir rápidamente los datos para extraer analíticas competitivas.
- Maneras ilimitadas de consultar los datos.
- Permite la eliminación de silos de datos.
- Acceso democratizado a los datos a través de una vista unificada en toda la organización. Además, se puede acceder a los datos desde cualquier lugar.
- La preparación de los datos para su análisis o uso se puede automatizar. De esta manera, se ahorran tiempo y recursos a los analistas de datos.
De entre los beneficios enumerados, hemos de destacar la posibilidad de eliminar los silos de datos de nuestra organización. Hablamos de los silos de información o datos en el artículo dedicado a Data as a Service, donde se definían como un repositorio de datos fijos que se encuentra bajo el control de una entidad y está aislado del resto de la organización.
Ese aislamiento lleva a ineficiencias y a una falta de coordinación y comunicación evidentes en el seno de cualquier organización, por lo cual, tener la posibilidad de eliminarlos siempre va a tener implicaciones positivas. Aumentará la productividad, se evitará hacer trabajo duplicado y otras muchas ventajas de las que ya hemos hablado en el artículo antes mencionado.
Y, como nos podemos imaginar, es posible hablar de un Servicio en la Nube que sea, literalmente, Data Lake as a Service y, de hecho, podríamos asumirlo como un subconjunto de Data as a Service específicamente diseñado para ofrecer el servicio exacto de un lago de datos.
¿En qué mejora un Data Lake al Data Warehouse?
Retomamos el tema mencionado al inicio del artículo. Decíamos que esta estructura se escapa de la complejidad inicial del Data Warehouse jerárquico. Una de las características principales de un Data Warehouse es que es un sistema integrado en una estructura consistente. Por tanto, cualquier inconsistencia debe ser previamente solventada de manera que la información pueda ser estructurada por niveles de jerarquía.
En un Data Lake, no es necesario solventar inconsistencias previas. Los datos se almacenan y, posteriormente, a la hora de recuperarlos, se realiza el procesamiento necesario.
- Un Data Lake conserva y almacena todos los datos. En el caso de un Data Warehouse, se gasta tiempo y recursos en analizar las fuentes de los datos, comprendiendo si son relevantes para los procesos de negocio y perfilando o adecuando los datos. Esto es beneficioso a la hora de producir informes rápidamente y, de hecho, si los datos no se utilizan para responder a preguntas específicas o para elaborar un informe concreto, pueden excluirse del almacén. Al contrario, el Data Lake almacena todos los datos, incluso los que se podrían utilizar algún día.
- Un Data Lake soporta todos los tipos de datos. Los almacenes de datos se componen de datos extraídos de sistemas transaccionales, junto con métricas cuantitativas y los atributos que las describen. Otros tipos de datos no estructurados, como los datos de sensores, la actividad de las redes sociales, las imágenes… se ignoran. En el Data Lake, los datos se conservan en bruto y solo se transforman en el momento de su uso.
- Un Data Lake da servicio a todos los usuarios. Aquí nos referimos a que se da servicio a los usuarios «operacionales», aquellos que solo necesitan informes, o comprobar KPIs, pero también a aquellos que realizan análisis de los datos (Data Analysts, o Analistas de Datos), o análisis profundos (Data Scientists, o Científicos de Datos). De hecho, el Data Lake tiene más sentido para los científicos de datos, mientras que el Data Warehouse lo tiene para los usuarios más operacionales.
- Los Data Lakes son flexibles ante cambios y fácilmente escalables. El Data Warehouse es complejo y necesita tiempo para establecer la estructura final. Cualquier cambio en ellos implicará un nuevo gasto de tiempo y recursos. En cambio, el Data Lake es mucho más ágil porque los datos se almacenan sin estructura.