Base de Datos vs Data Lake vs Data Warehouse

Paloma Recuero de los Santos    25 julio, 2019
Imagen de un lago

¿Conoces la diferencia entre una base de datos, un data lake y un data warehouse? Si quieres aprender a distinguirlos, sigue leyendo.

Algunas personas piensan que el data lake no es más que “la última versión” del datawarehouse, pero en realidad, se trata de herramientas diferentes, que se usan para distintas cosas.

¿Qué es una base de datos?

Para entenderlo mejor, vayamos a los orígenes: las bases de datos. Una base de datos es un conjunto de datos organizados de una determinada manera. Comenzaron a usarse en los años 50, y consistían en simples filas y columnas.

Años después se hicieron populares las bases de datos relacionales, que almacenan los datos en forma de tablas, y las bases de datos orientadas a objetos. Estas últimas, almacenan datos complejos y relaciones entre datos directamente, sin asignar filas o columnas.

Las bases de datos sirven para monitorizar y actualizar datos estructurados en tiempo real. Normalmente, solo tienen disponibles. los datos más recientes

Tipos de Bases de datos

Como hemos adelantado hace un momento, hay distintos modelos de bases de datos.

Las más sencillas tenían formato de Fichero plano, donde   todos los campos de una columna dada tienen valores del mismo tipo, cadena de caracteres, fecha u hora, entero o número de coma flotante. En el ejemplo de la imagen, las columnas son “Ruta”, “millas”, “Actividad”. Además, todos los miembros de la misma fila están relacionados entre ellos. “Registro 1, 2 …”. Fueron las precursoras de las bases de datos relacionales.

Éstas últimas surgieron en los años 70 . En este modelo ´la estructura básica es la “relación” o tabla. La información sobre determinada entidad, (por ejemplo, cliente) se almacena en tuplas (filas), cada una de las cuales tiene unos atributos (columnas). Las columnas de cada tabla enumeran los distintos atributos de la entidad (el nombre del “cliente”, dirección y número de teléfono, p. ej.), de modo que cada tupla de la relación “clientes” representa un cliente específico y guardan todos sus datos. Todas las relaciones (es decir, tablas) en una base de datos relacional han de seguir unas mínimas reglas.

Como último ejemplo, hablaremos también de las tablas orientada a objetos, que surgieron en la década de 1990.

Las bases de datos relacionales trabajan con datos, representándolos en forma de tablas. En las bases de datos orientadas a objetos los datos ya no se almacenan como datos, sino como objetos, de distintos tipos, sobre los que se definen una serie de operaciones. Éstas a su vez se integran con las operaciones de un lenguaje de programación orientado a objetos (POO).

Aunque están diseñadas para trabajar con lenguajes orientados a objetos, como Java, Visual Basic o C++ , también manejan información binaria y trabajan con datos complejos de manera rápida y segura

¿Qué es un datawarehouse?

Por su parte, un datawarehouse es sistema de almacenamiento de datos diseñado para dar soporte al flujo de datos desde sistemas operativos a sistemas de decisión. Recoge los datos de diversas fuentes, internas o externas y los organiza de forma muy concreta para optimizar su recuperación con fines comerciales (extraer Insights de negocio). Sólo contiene los datos para a los que se quiere dar cierto uso. Éstos suelen ser estructurados (a veces, proceden de bases de datos relacionales), o no.

En resumen, es un repositorio unificado para todos los datos recogidos por los diversos sistemas de una empresa.

¿Qué es un datalake?

En los años 2000, surgieron los datalakes, como alternativa más rentable para el almacenamiento de datos no estructurados. Aunque ya se podían almacenar este tipo de datos en los formatos anteriores, los procesos de depuración y preparación eran largos y costosos. Los datalakes almacen datos los en bruto, sin ninguna estructura, jerarquía ni organización. Datos de cualquier fuente, en cualquier formato. Texto, datos de redes sociales,todo tipo de logs o registro de datos de sensores de dispositivos IoT. Al no tener estructura, son mucho más flexibles que los datawarehouses. Sin embargo, estos últimos, como tecnología más madura, también tienen mejores sistemas de seguridad.

La idea es poder ir volcando todo tipo de datos al datalake, por si se necesitan más adelante, de la forma más económica y escalable.

Para explicar qué es un datalake tomamos prestada una imagen de una infografía muy buena de EMC.

Figura 1: ¿Cómo funcionan los datalakes? Fuente EMC
Figura 1: ¿Cómo funcionan los datalakes? Fuente EMC

Conclusión:

¿Y cuál es la mejor solución?. Dependerá de nuestro problema. Conforme aumenta el volumen de datos no estructurados, los datalakes en la nube se hacen más populares, ya que son más rentables y fáciles de mover cuando es necesario. Sin embargo, siempre habrá un lugar para las bases de datos y datawarehouse.

Para saber más sobre arquitecturas de datos, no te pierdas esta serie en nuestro blog:

Para mantenerte al día con LUCA visita nuestra página web,  suscríbete a LUCA Data Speaks o síguenos en TwitterLinkedIn YouTube.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *