OneLake, ¿un lago de dudas?

Desde que llegó Microsoft Fabric estamos continuamente escuchando nuevos servicios, nuevos nombres que nos llenan de dudas como OneLake. Podemos definir este servicio como un lago de datos único para toda la organización que viene por defecto con todos los inquilinos de Microsoft Fabric y del cual no se pueden crear más. Además, no es posible no tener OneLake si tenemos Fabric, es obligatorio. Cada inquilino de Fabric aprovisiona automáticamente OneLake.

Un lago para todos

Dentro de un inquilino, puedes crear varias áreas de trabajo. Las áreas de trabajo permiten que diferentes partes de la organización distribuyan las directivas de propiedad y acceso. Cada área de trabajo forma parte de una capacidad asociada a una región específica y se factura por separado. En el siguiente diagrama puedes ver como existe un único lago, OneLake, y dentro varias áreas de trabajo.

Dentro de cada área de trabajo es posible crear varios sublagos y es aquí cuando entra en juego el terminó LakeHouse. Los LakeHouses combinan las funcionalidades analíticas basadas en SQL de un almacenamiento de datos relacional y la flexibilidad y escalabilidad de un Data Lake. La herramienta permite almacenar todos los formatos de archivos de datos conocidos y provee herramientas analíticas para leerlos.

En el siguiente diagrama puedes ver un ejemplo de carga de datos mediante Spark con los componentes Data Factory y Synapse Data Engineering. También podemos observar una consulta T-SQL desde el componente de Fabric, Synapse Data Warehouse y la visualización de un informe de Power BI. Todo ello bajo un único lago en diferentes áreas de trabajo.

Accesos directos

Todos estamos acostumbrados al término acceso directo y aquí tiene el mismo significado pero aplicándolo a las áreas de trabajo y sus datos. Mediante los accesos directos se pueden compartir datos entre los usuarios y aplicaciones sin tener que duplicar o copiar información ya sean en diferentes áreas de trabajo o la misma área. Además puede estar tanto en OneLake como en S3, Dataverse, etc…

OneLake es abierto

OneLake se basa en Azure Data Lake Storage (ADLS) Gen2 y admite cualquier tipo de archivo ya sea estructurado o no. Cuando guardamos un elemento de datos de Fabric (data warehouse o lakehouse) automáticamente los datos se guardan en OneLake en formato Delta Parquet. En un mismo OneLake un desarrollador podría cargar datos utilizando Spark mientras que otro desarrollador usa T-SQL estando ambos resultados en formato Delta Parquet.

Explorador de OneLake

Dentro de las áreas de trabajo puedes crear elementos de datos y acceder a ellos. Se puede decir que es como Office donde guardas ficheros de Word, Excel, etc en OneDrive, por eso, OneLake es popularmente conocido como el OneDrive de Fabric. Además, existe un explorador de OneLake para Windows (descargar aquí) donde puedes ver los ficheros al más puro estilo OneDrive ¿no te lo crees?

¿Abrir fichero .parquet en Windows?

Si utilizas el explorador de ficheros de OneLake para Windows puedes ver los ficheros .parquet de varias formas aunque la más común es utilizar python. En el siguiente ejemplo utilizo la librería pyarrow para abrir el fichero .parquet de una tabla llamada dimAnio:

import pyarrow.parquet as MiguelTroyano_pq
dimAnio = MiguelTroyano_pq.read_table("C:/Users/mtroyano/OneLake - Microsoft/MiguelTroyano.com/Centro_de_llamadas.Lakehouse/Tables/dimAnio/be8b6f10662049dc8f03055639a0ec1f.parquet")
dimAnio.to_pandas()

¿OneLake y Power BI?

Gracias a la llegada de OneLake existe un nuevo método de conexión para Power BI llamado Direct Lake. Puedes revisar este otro artículo para conocer más sobre el funcionamiento de Direct Lake.

Escribir un comentario