¿Qué es un lago de datos en el contexto de big data?

Usuarios de Data Warehousing, Data Lakes, BI y Analytics:

¡Durante mucho tiempo, el grito de rally ha sido BI y análisis para todos! Sin embargo, un lago de datos es mucho más ágil, lo que lo hace maduro para los sistemas de BI modernos. Los datos estructurados se ordenan y procesan fácilmente dentro del lago de datos, lo que da como resultado una salida de datos analizados que los usuarios pueden examinar rápidamente para obtener información. Los lagos de datos también fomentan el descubrimiento de datos de autoservicio. El ecosistema de BI, compuesto por un almacén de datos empresariales, un lago de datos y, potencialmente, una plataforma de descubrimiento para facilitar el análisis en toda la arquitectura, determinará qué datos y qué análisis se utilizan, y dónde se ejecutan, en resumen, los datos el lago tiene un potencial casi ilimitado, pero requiere transformaciones antes de lograr ideas; un almacén de datos requiere una inversión importante por adelantado, pero a cambio ofrece la capacidad de analizar todo fácilmente y las habilidades necesarias para consultarlo. Un lago de datos es una alternativa de bajo costo para el almacenamiento de datos para empresas que desean utilizar datos externos y pueden extraer directamente de cientos, si no miles, de fuentes de datos externas.

Almacenamiento y Hadoop

Las nuevas tecnologías de procesamiento como Hadoop de código abierto permiten gestionar cantidades de datos mucho mayores. Una de las características principales de las tecnologías de big data como Hadoop es que el costo de almacenar datos es relativamente bajo en comparación con el almacén de datos. Hay dos razones clave para esto: Primero, Hadoop es un software de código abierto, por lo que las licencias y el soporte de la comunidad son gratuitos. Y segundo, Hadoop está diseñado para instalarse en hardware de bajo costo. Hadoop utiliza un paradigma computacional llamado MapReduce (por Google) para dividir una aplicación en muchos fragmentos pequeños, cada uno de los cuales puede ejecutarse en cualquier nodo de la computadora en un clúster. Por ejemplo, Visa pudo reducir el tiempo de procesamiento de datos de dos años (73 mil millones de transacciones) de 1 mes a 13 minutos usando Hadoop.

La tecnología y las habilidades se vuelven obsoletas o redundantes muy rápidamente. Las tecnologías digitales han evolucionado a partir de las tecnologías web, pero en la actualidad han tomado la forma de aplicaciones empresariales. El rol es necesario para la integración, ERP, SCM, CRM, comercio electrónico, nube, ETL, LOB, IaaS, redes sociales, dispositivos móviles e Internet de las cosas (IoT), por nombrar algunos. Lo que está trayendo interrupción al espacio es la automatización. El uso de herramientas de Oracle, IBM, Teradata y Microsoft, la configuración, el mantenimiento y la evolución de los almacenes de datos siempre ha requerido una gran cantidad de recursos e infraestructura costosos. Nadie realmente quiere crear uno nuevo. Se puede usar un lago de datos para sandboxing, lo que permite a los usuarios experimentar con diferentes modelos de datos y transformaciones, antes de configurar un nuevo esquema en un almacén de datos. También puede servir como un área de preparación, desde la cual suministrar datos a un almacén de datos para luego producir datos limpios con valor conocido. Además, el lago de datos puede contener cualquier tipo de datos: flujo de clics, generado por máquina, redes sociales y datos externos, e incluso audio, video y texto. Los almacenes de datos tradicionales se limitan a datos estructurados.

Hoy en día existe una necesidad urgente del mundo empresarial de un acceso rápido a nuevos datos. Estamos hablando de datos que provienen de fuera de la organización y datos no estructurados que constituyen algo así como el 75% de la información en una empresa. Esto se combina esencialmente con la disminución de los costos del almacenamiento de datos en los últimos años y la aparición de conjuntos de herramientas Big Data y NoSQL, en los que las empresas comenzaron a recurrir a los lagos de datos como una alternativa a los desafíos de crear otro almacén de datos.

Debe recordarse que un lago de datos no es un almacén de datos. Ambos están optimizados para diversos propósitos, y el objetivo es utilizar cada uno para lo que fueron diseñados para hacer. Al utilizar cada posibilidad adecuadamente, las empresas y organizaciones pueden obtener lo mejor de ambas soluciones.

Un lago de datos es un repositorio de datos sin procesar, sin esquemas ni estructurados.

Tenía algunas ventajas en 2008 cuando se inventó. En aquel entonces, los almacenes de datos eran rígidos y pesados. El proceso de carga fue complicado y cualquier cambio de esquema requirió horas de ingeniería.

Aquí hay una buena visualización (lago de datos = proceso ELT):

Hoy ya no es así: los almacenes de datos como Amazon Redshift, Google BigQuery y otros son flexibles y robustos.

Las ventajas de no tener que molestarse con la estructura de recopilación de datos y formar enanos en comparación con el dolor de cabeza masivo que tendrá cuando intente analizar sus datos. Te entristecerá descubrir que tu glorioso lago de datos es en realidad un pantano de datos.

Elegiría el almacén de datos sobre el lago de datos cualquier día de la semana.

La razón por la que soy tan inflexible es porque me encuentro con docenas de equipos de datos que luchan con este problema exacto. Para ser sincero, la migración de MongoDB a BigQuery es uno de los principales casos de uso que veo aquí en Alooma.

Buena suerte, elige bien: O)

Nuestro enfoque es un poco diferente. Construimos lagos de datos estructurados. Un lago de datos estructurados es como cualquier otro, toma todo tipo de datos en cualquier formato. Pero alimentamos al lago con programas especiales llamados ‘productores’. Estos productores trabajan de forma independiente, almacenan metadatos y están optimizados para agrupar los datos en el lago de datos con una comprensión básica de cómo se consumirá en el futuro. Siempre usamos fechas y convenciones de nomenclatura, pero podemos agregar arbitrariamente más metadatos.

El propósito de esto es hacer que el lago de datos sea más utilizable para los consumidores directos y los procesos posteriores.

El gran problema de un lago de datos estructurados es que amplía las capacidades de los almacenes de datos y BI. Puedo construir un DW con 6 meses de historia que esté optimizado para esa ventana de tiempo. Mientras tanto, mi lago de datos tiene un almacén de datos operativos de 36 meses a velocidades cercanas a la línea y 60 meses adicionales sin conexión. Por lo tanto, mi DW tiene capacidad para 102 meses de datos debido a la forma en que lo diseñé para consumir desde el lago de datos estructurados. Pero también puedo permitir que los consumidores directos consulten ese historial utilizando el lago de datos lento y barato.

MÁS

La recuperación ante desastres se vuelve obvia. Casi siempre es más rápido borrar una base de datos y simplemente recargar seis meses de historial que usar herramientas de recuperación de bases de datos de copias de seguridad incrementales. Ciertamente, siempre es más barato hacerlo. Tener un lago de datos te permite probarlo. Un lago de datos adecuado siempre será más rápido para este propósito que NFS y, ciertamente, Amazon S3 será más barato que un SAN de dimensiones similares, sin mencionar que es más confiable con un menor mantenimiento.

MÁS

Puedo usar mi lago de datos para alimentar varias instancias del almacén de datos para el intercambio en caliente o para la implementación global en diferentes regiones. También podría tener todo mi lago de datos replicado automáticamente. Aunque nunca hemos tenido un requisito tan paranoico, hace tres años los detractores gritaban cada vez que oían hablar de un corte de AWS.

Para obtener más información sobre el marco elástico ‘Pitbull’ para almacenamiento de datos y BI de ElasticBI, consulte este blog [1].

Para responder su pregunta directamente, nuestros lagos de datos estructurados realizarán transformaciones de limpieza en los productores. Esto se debe a que para la mayoría de los esquemas de ingesta basados ​​en archivos no tenemos problemas de latencia. Es decir, cuando extraemos datos de una fuente genérica que escupe archivos, los usuarios finales generalmente pueden esperar una hora antes de consultar esos datos. Para esquemas de ingesta basados ​​en API como colas de mensajes o consultas directas contra bases de datos ascendentes, los hacemos disponibles instantáneamente con una transformación mínima Y desechamos una copia para el lago de datos. Los productores bifurcados harán el resto de la limpieza y transformación necesarias.

Hay casos en que dejamos los datos en su estado bruto y los enviamos al lago sin transformación. Estos tienden a ser para consumidores de ciencia de datos y cuando la empresa realmente no tiene idea de lo que significan los datos, y no están necesariamente listos para presentarlos de una manera estructurada para el análisis. Este suele ser el caso con datos HDFS directos que se dejan nativos y ‘anexados’ al lago.

Notas al pie

[1] El marco de Pitbull: almacenamiento de datos de próxima generación en la nube

El lago de datos es el reino de los datos sin procesar , antes de la transformación y el modelado: se trata de un esquema de lectura .

James Dixon, el CTO de Pentaho, acuñó el término lago de datos y dijo esto: [1]

Si piensa en un datamart como una tienda de agua embotellada, limpia y empaquetada y estructurada para un consumo fácil, el lago de datos es un gran cuerpo de agua en un estado más natural. El contenido del lago de datos fluye desde una fuente para llenar el lago, y varios usuarios del lago pueden venir a examinar, sumergirse o tomar muestras.

Notas al pie

[1] Data Lake vs Data Warehouse: diferencias clave

Algunos puntos rápidos sobre el lago de datos en el contexto de big data.

  1. Data Lake es probablemente la mejor manera de terminar con los silos de datos en el universo de Big Data no estructurado y en rápido crecimiento.
  2. Data Lake, en esencia, es un repositorio de almacenamiento que contiene cargas de datos o Big Data en su formato nativo sin procesar.
  3. El término lago de datos se ha convertido en sinónimo de las tecnologías de big data como Hadoop, mientras que los almacenes de datos continúan alineados con las plataformas de bases de datos relacionales.
  4. Ahora que el almacenamiento de datos y la tecnología son baratos, la información es vasta y las nuevas tecnologías de bases de datos no requieren un esquema acordado por adelantado, finalmente es posible el análisis de big data en lagos de datos organizados.

Si desea saber cómo se pueden fusionar Big Data y Data Lakes para llegar a soluciones escalables a los complejos desafíos empresariales en diversas industrias, visite: Soluciones de Big Data para Advanced Business Analytics – Zaloni

Si lo digo brevemente, un ‘lago de datos’ es un almacenamiento de todos sus ‘datos’ tanto en su forma natural como potencialmente en un estado transformado frente a un ‘almacén de datos’ o ‘data mart’ que típicamente solo tendrá un subconjunto de datos transformados para análisis.
Un lago de datos puede contener o no ‘Big Bata’.
Sin embargo, los términos se pueden usar en conjunto, ya que Big Data se puede alimentar a lagos de datos o raspar para alimentar a un data mart / data warehouse. Pero un lago de datos no depende de Big Data y viceversa.