No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Data Warehouse, Data Lake y Data Lakehouse: ¿Cuál utilizar?

6/26
Recursos

Aportes 9

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Un resumen de la clase:

- Data Warehouse

  1. Repositorio que alberga datos estructurados (es decir con una estructura clara y definida) a través de un proceso de ETL y los disponibiliza para hacer minería de datos, reportes y analítica.

  2. Está optimizado para analizar datos con estructuras predefinidas y que dicha estructura ayude que esos datos se vuelvan una “fuente única de la verdad”.

  3. Es comunmente usado por los Business Analysts.

- Data Lake

  1. Repositorio de datos estructurados (Se cargan desde el Data Warehouse con un proceso de ETL), semi-estructurados y no-estructurados que pueden ser facilmente consultados luego de algún tratamiento en los datos dependiendo de la necesidad de la consulta.

  2. Se pueden almacenar datos facilmente sin necesidad de una estructura previa y pueden ser usados por Data Scientists/Engineers y Data Analysts.

- Data Lakehouse

  1. Es lo mejor del Data Warehouse (Los datos estructurados no requieren un proceso de ETL previo) y del Data Lake.

  2. Permite consumir los datos almacenados allí rápidamente con diferente propósitos como BI, reportes, Data Science y ML.

Es buena idea repasar la clase de los conceptos base de ETL antes de iniciar este modulo.

ojo que cuando va a mencionar los schema del datawarehouse dice datalake y no datawarehouse. tener en cuenta que datawarehouse debe tener estructura para ser ejecutado y el datalake **no necesita** ninguna estructura para ser ejecutado.
La elección entre **Data Warehouse**, **Data Lake** y **Data Lakehouse** depende de los requisitos específicos del negocio y los tipos de datos que se manejan. A continuación te explico en qué se diferencian y cuándo podría ser más adecuado utilizar cada uno: ### 1. **Data Warehouse (DW)** * **Propósito**: Un Data Warehouse es un sistema de almacenamiento de datos estructurados que está optimizado para la **consulta y el análisis de grandes volúmenes de datos transaccionales**. Los datos en un DW suelen estar transformados y limpiados antes de ser cargados. * **Características**: * Almacena **datos estructurados** (tablas, registros). * Utiliza procesos ETL (Extracción, Transformación y Carga) para integrar datos de diversas fuentes. * Es ideal para realizar **análisis histórico y consultas complejas**. * **Cuándo usarlo**: * Si tienes datos bien definidos y estructurados. * Necesitas informes y análisis consistentes a lo largo del tiempo (como ventas, finanzas, KPIs). * El rendimiento en consultas analíticas rápidas y complejas es clave. ### 2. **Data Lake** * **Propósito**: Un Data Lake es un repositorio que puede almacenar **datos sin procesar** en su forma original. Puede contener datos estructurados, semi-estructurados (JSON, XML) y no estructurados (archivos de texto, imágenes, videos). * **Características**: * Almacena datos en su formato original (sin necesidad de transformación). * Es más **económico** en términos de almacenamiento masivo. * Ideal para **big data** y análisis exploratorios, ya que permite almacenar grandes volúmenes de datos sin preocuparse por su forma. * **Cuándo usarlo**: * Si necesitas almacenar datos de diferentes fuentes y tipos. * Tienes grandes volúmenes de datos, incluyendo datos no estructurados. * Quieres realizar análisis de datos sin un esquema predefinido, como análisis de logs, datos de IoT o datos de redes sociales. ### 3. **Data Lakehouse** * **Propósito**: El Data Lakehouse combina las ventajas de un **Data Lake** y un **Data Warehouse**. Es un enfoque híbrido que ofrece la **flexibilidad** de almacenar datos en su forma cruda, como un Data Lake, pero también proporciona la **estructura** necesaria para consultas analíticas, similar a un Data Warehouse. * **Características**: * Almacena tanto **datos estructurados** como **no estructurados**. * **Compatibilidad con SQL** y soporte para análisis en tiempo real, lo que lo hace adecuado para BI tradicional. * Combina **esquemas de datos** en el almacenamiento de datos no procesados, lo que permite realizar análisis complejos sin perder la flexibilidad de los datos crudos. * **Cuándo usarlo**: * Si deseas almacenar **tanto datos estructurados como no estructurados** en un solo lugar. * Necesitas las **capacidades de un Data Warehouse** (como rendimiento en consultas analíticas) pero sin perder la flexibilidad de un Data Lake. * Buscas una **solución unificada** para análisis, machine learning, e inteligencia empresarial. ### ¿Cuál utilizar? * **Si tus datos son principalmente estructurados**, y necesitas análisis consistentes y rápidos, un **Data Warehouse** es la mejor opción. * **Si trabajas con grandes volúmenes de datos sin procesar** o necesitas almacenar datos no estructurados, un **Data Lake** es la opción adecuada. * **Si deseas lo mejor de ambos mundos**, un **Data Lakehouse** puede ser la opción perfecta, ya que combina la flexibilidad de los Data Lakes con las capacidades analíticas de los Data Warehouses. ### Resumen: * **Data Warehouse**: Ideal para datos estructurados y análisis tradicional. * **Data Lake**: Mejor para grandes volúmenes de datos variados y no estructurados. * **Data Lakehouse**: Combina lo mejor de ambos, permitiendo almacenar datos crudos y estructurados con capacidades analíticas robustas. La elección depende de tus necesidades de almacenamiento y análisis de datos.
**DATA WAREHOUSE** El DWH se utiliza ya cuando se va a estructurar la información para hacer una única fuente de verdad. ![](https://static.platzi.com/media/user_upload/image%20%281%29-26cd7d5b-1e7d-48b9-afbb-5ba831d7c994.jpg) **DATA LAKE** El data Lake funciona como un almacén para todo tipo de información que se recibe en crudo, después se puede hacer un proceso de limpieza para mejorar la calidad de los datos, sin embargo, los datos para que tengan sentido se tienen que pasar a una Data WareHouse. ![](https://static.platzi.com/media/user_upload/image-88fb127a-db36-437e-95d9-8b1e3ab77390.jpg)
A veces creo que el profe es hecho con IA

Qué tal, una duda para el siguiente caso de uso:
Si mi origen de datos es únicamente de bases de datos transaccionales y dado que el mayor problema es realizar consultas (reportes) a dichas bases de datos debido a su exponencial tamaño (se reciben hasta 50 millones de transacciones diarias) …¿Lo conveniente en este caso sería implementar un data lake?
NOTA: Entiendo que sería obvio pensar sólo en un data warehouse dado que en este sólo se cargaría información ya “procesada” para facilitar los reportes. Sin embargo, el requisito adicional es poder obtener reportes con todo el detalle de dichas transacciones por lo que no creo conveniente cargar a un data warehouse toda la información tal cual como se encuentran en las bases de datos transaccionales sino tener la información cruda en s3 para dichos reportes detallados y de aquí ir generando el modelo en el data warehouse para reportes más globales…¿qué opinan?

Ahora se me aclaró el tema de Data Lake, súper. Vi en una entrevista para Data Engineering que hicieron está pregunta y veo que es esencial saberlo