Data Lakes vs Data Warehouses: ¿Qué alternativa elijo para mi proyecto de Ciencia de Datos?

El común denominador en la mayoría de las empresas de todos los tamaños, desde startups a grandes corporaciones, es la adopción de tecnología como medio para acercar nuevos productos y servicios a sus usuarios.

Este proceso de adopción tecnológica, que a su vez es alimentado por una tendencia contundente a integrar cada vez más dispositivos electrónicos en nuestra vida cotidiana, genera enormes volúmenes de datos que son recolectados cada vez con mayor eficiencia y rapidez

Las empresas ya entendieron que los datos contienen un valor intrínseco para la personalización de sus productos y servicios

En épocas donde el volumen de datos no tenía la escala que tiene ahora, éstos se almacenaban en data warehouses (o almacén de datos). 

Allí, los datos almacenados eran, en su mayoría, de carácter estructurado y provenían de sistemas transaccionales, cuya organización en esquemas de información facilitaba su consumo y utilización.

Cuando las características y volúmenes de datos se fueron complejizando, surgió la necesidad de almacenarlos para extraer su valor y transformarlos en información.

Ahí es cuando nace el concepto de data lake.

Hoy, ambos modelos coexisten, con sus particularidades y ventajas.

El data warehouse es ideal para proyectos que ya llevan un tiempo de desarrollo, donde ya estamos familiarizados con los datos y sabemos exactamente qué queremos de ellos. Los data lakes permiten mayor flexibilidad a menor costo, por lo que son ideales para implementar nuevos proyectos, que luego se pueden integrar al data warehouse. 

A la hora de decidir qué modelo de almacenamiento de datos es conveniente adoptar para algún proyecto, es importante conocer qué ventajas y desventajas ofrece cada uno.

En esta nota, te compartimos nuestro expertise en data lakes y data warehouses, tras de más de 10 años trabajando con ciencia de datos y estos repositorios de datos.

Diferencias entre Data Lakes y Data Warehouse

Ventajas y desventajas de Data Lake 

Beneficios:

  • No hay necesidad de descartar datos
  • Puede nutrir a diversos usuarios de una empresa
  • Se adapta fácilmente a los cambios
  • Al poder integrarse tipos de datos muy distintos, se puede realizar todo tipo de análisis
  • Permite fácilmente agregar nueva data

Desventajas:

  • No está pensado para acceder a los datos de manera performante
  • Cada vez que se requieren datos, hay que transformarlos y curarlos para el uso que se les quiera dar
  • Demanda invertir en generar estándares de buenas prácticas a nivel organizacional

Data Warehouse: Ventajas y desventajas

Beneficios:

  • La data está lista para ser usada
  • Buena performance en el acceso a los datos
  • La mayoría de los usuarios de una empresa son operacionales, data warehouse es ideal para ellos
  • Es muy adecuado para generar reportes y métricas

Desventajas:

  • Mayores costos de almacenamiento, lo que implica pensar bien qué data es realmente necesaria
  • No es flexible a cambios
  • Demanda inversión de tiempo antes del almacenamiento para decidir esquemas, formatos y casos de uso

¿Cómo se implementa el Data Warehouse?

1. Determinar los objetivos del negocio

Es importante conocer el fin que se le busca dar, ya que no es lo mismo si queremos, por ejemplo, generar reportes o sacar métricas claves para la toma de decisiones en la startup. 

¿Para qué queremos usar la data almacenada? 

Resolviendo este interrogante, podremos decidir el nivel de detalle y granularidad de los datos a almacenar, provenientes de cada fuente.

2. Recopilar y analizar información

Una vez que conocemos el para qué, es importante identificar con los colaboradores de nuestra empresa qué uso se hará de la información:

¿Qué fuentes de información consultan? ¿En base a qué información arman sus reportes?

Muchas veces podemos encontrar fuentes de datos importantes en papeles, agendas, emails y memos. El gran desafío será dilucidar cómo recopilar toda esa información.

Para lograr un total conocimiento de cómo acumular y procesar la información, es fundamental una estrecha interacción con los usuarios que vayan a usar el Data Warehouse dentro de la empresa.

3. Identificar procesos clave del negocio y modelado

En esta instancia, en la que ya sabemos qué uso se le darán a los datos y qué información es relevante, debemos identificar las otras empresas que se relacionan con nuestra startup y cómo son esos procesos de interrelación.

De esta manera, determinaremos cómo tienen que relacionarse las distintas estructuras de datos y podremos armar un modelo conceptual.

4. Determinar fuentes y planificar transformaciones de los datos

Ahora que ya sabemos qué información necesitamos y qué estructura le daremos, sólo resta obtener toda esa información

Una vez identificadas las fuentes de información necesarias, comienza el proceso de carga y transformación de esos datos, para que se adapte al modelo y estructuras previamente definidos.

5. Determinar tiempo de vida de los datos

Finalmente queda decidir por cuánto tiempo los distintos datos estarán disponibles

Como ya sabemos, guardar información en un data warehouse es costoso. Por lo tanto, al ir agregando nueva información constantemente, debemos decidir la “fecha de caducidad” de la información almacenada.

¿Cómo se implementan los Data Lakes?

1. “Zona de aterrizaje” para datos en crudo

En esta primera etapa, el data lake se construye separadamente de los sistemas centrales de IT y sirve como un entorno escalable de bajo costo para hacer pura captura de los datos. 

La idea es usarlo como una capa fina en el stack tecnológico de la compañía para tener datos almacenados indefinidamente.

Si bien esta instancia es de muy bajo impacto para la arquitectura existente, la clasificación y el taggeo de la data tienen una gran relevancia en las primeras fases para no terminar con un repositorio de datos desorganizados (data swamp).

2. Entorno de data science

Ahora, la startup ya puede utilizar los datos de manera activa y contar con el data lake como plataforma de experimentación. 
Los científicos de datos tendrán un acceso rápido y fácil a toda la información que necesitan, pudiéndose enfocar en el análisis y la exploración, más que en la adquisición y recopilación de los datos.

3. Integración con data warehouses

Aquí ya se integran los data lakes con los data warehouses existentes. Aprovechando los menores costos asociados al data lake, muchas empresas optan por guardar los datos “fríos en él, mientras que aquellos a los que se le dan un uso más frecuente se migran a un data warehouse.

Los data lakes tienen la fortaleza de poder integrarse progresivamente a los data warehouses existentes en la organización para almacenamiento de datos, conviviendo en forma eficiente. 

Como vemos, el data lake no reemplaza al data warehouse, sino que trabajando juntos potencian la capacidad de almacenamiento de una organización. 

Agregando un data lake a áreas de la infraestructura ya existente de una organización, logramos sumar su flexibilidad y agilidad al almacenamiento ya existente.

4. El componente crítico

A esta altura el data lake ya está completamente integrado a la infraestructura de la organización y prácticamente toda la información fluye a través de él. 

Habiendo alcanzado estabilidad, se pueden construir interfaces, ya sea para tener un mejor acceso a la información en el data lake, como para tener una mejor integración de esta información a procesos informáticos que la utilizan, como los de machine learning, por ejemplo.

Cómo suma valor cada estrategia

Como pudimos ver, estas dos alternativas de almacenamiento de datos son muy distintas entre sí y sirven a diferentes propósitos

Como conclusión general podemos afirmar que el data warehouse responde a necesidades más maduras, cuando ya sabemos qué data es la más importante y qué tipo de trabajo vamos a hacer con ella

Por el otro lado, los data lakes son alternativas más ágiles, baratas y flexibles: atributos muy deseables para empresas jóvenes, como puede ser tu startup.

Los data lakes pueden ser especialmente efectivos cuando no sabemos bien qué queremos hacer con toda nuestra data, pero sabemos que la información es potencialmente valiosa

En estos casos, podemos hacer uso de la ciencia de datos. Un científico de datos podrá reunir toda esa información no estructurada, y a simple vista dispar, y hacerle las preguntas correctas para identificar cuál es su potencial.

Se pueden llegar a obtener resultados concretos e inesperados, como productos y servicios que ni siquiera habían sido previstos al momento de la recopilación de los datos.

Por otro lado, también es perfectamente posible encarar proyectos de ciencia de datos partiendo de un data warehouse

En este caso, el beneficio con el que contaremos es el de no tener que utilizar tiempo y recursos para estructurar y normalizar los datos, además de tener un acceso más eficiente a ellos.

¿Cómo podemos ayudarte?

7Puentes se especializa en el procesamiento inteligente de los datos y ayuda a organizaciones de todos los tamaños y especialidades a transformar esos datos en su ventaja competitiva.

Sin importar qué fuentes de datos tengamos disponibles, podremos minar o explotar la información de tu negocio o startup para ayudarte a descubrir mejoras, puntos débiles y potenciales nuevos productos y servicios.

Como vimos a lo largo de este artículo, no es necesario contar con un gran depósito de datos altamente estructurados (data warehouse) como punto de partida para un proyecto de ciencia de datos. De hecho, en ocasiones es mejor contar con información diversa para hacerle todo tipo de preguntas a los datos a medida que se los explora.

En 7Puentes trabajamos tanto con clientes con enormes data warehouses de costosas arquitecturas, como con clientes con negocios más nuevos y ágiles, cuyas estructuras y flujo de información cambian constantemente. 

En todos los casos, siempre estamos dispuestos a emprender el desafío que nos presenten los distintos tipos de datos y a dar el apoyo y las recomendaciones necesarias para darle el mejor uso posible a los datos. 

Somos el partner que necesitás. Contactanos.