Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta guía, aprenderá a acceder a los datos replicados de Azure Cosmos DB en Lakehouse y en los cuadernos de Microsoft Fabric.
Prerrequisitos
- Una cuenta existente de Azure Cosmos DB para NoSQL.
- Si no tiene una suscripción de Azure, pruebe Azure Cosmos DB para NoSQL gratis.
- Si tiene una suscripción de Azure existente, cree una nueva cuenta de Azure Cosmos DB para NoSQL.
- Una capacidad de Fabric existente. Si no tiene una capacidad existente, inicie una versión de prueba de Fabric.
- La cuenta de Azure Cosmos DB para NoSQL debe configurarse para la creación de reflejo de Fabric. Para obtener más información, consulte Requisitos de la cuenta.
Sugerencia
Se recomienda usar una copia de prueba o desarrollo de los datos existentes de Azure Cosmos DB que se pueden recuperar rápidamente de una copia de seguridad.
Configuración del mirroring y requisitos previos
Configurar el reflejo para la base de datos Azure Cosmos DB de NoSQL. Si no está seguro de cómo configurar el reflejo, consulte el tutorial para configurar la base de datos reflejada.
Vaya al portal de Fabric.
Cree una nueva conexión así como una base de datos duplicada utilizando las credenciales de su cuenta de Azure Cosmos DB.
Espere a que la replicación finalice la instantánea inicial de los datos.
Acceso a datos reflejados en Lakehouse y cuadernos
Utilice Lakehouse para ampliar aún más el número de herramientas que puede usar para analizar los datos reflejados de Azure Cosmos DB para NoSQL. Aquí, usará Lakehouse para crear un cuaderno de Spark para consultar los datos.
Vuelva a ir a la página principal del portal de Fabric.
En el menú de navegación, seleccione Crear.
Seleccione Crear, busque la sección Ingeniería de datos y, a continuación, seleccione Lakehouse.
Proporcione un nombre para Lakehouse y, a continuación, seleccione Crear.
Ahora seleccione Obtener datos y, después, Nuevo acceso directo. En la lista de opciones de acceso directo, seleccione Microsoft OneLake.
Seleccione la base de datos replicada de Azure Cosmos DB para NoSQL de la lista de bases de datos replicadas en su área de trabajo de Fabric. Seleccione las tablas que se van a usar con Lakehouse, seleccione Siguiente y, a continuación, seleccione Crear.
Abra el menú contextual de la tabla en Lakehouse y seleccione Nuevo o existente.
Un nuevo cuaderno se abre automáticamente y carga un dataframe mediante
SELECT LIMIT 1000.Ejecute consultas como
SELECT *mediante Spark.df = spark.sql("SELECT * FROM Lakehouse.OrdersDB_customers LIMIT 1000") display(df)Nota:
En este ejemplo se asume el nombre de su tabla. Use su propia tabla al escribir la consulta de Spark.
Reescritura mediante Spark
Por último, puede usar código de Spark y Python para volver a escribir datos en la cuenta de Azure Cosmos DB de origen desde cuadernos de Fabric. Es posible que quiera hacerlo para escribir los resultados analíticos en Cosmos DB, que luego se pueden usar como plano de servicio para las aplicaciones OLTP.
Cree cuatro celdas de código en el cuaderno.
En primer lugar, realice una consulta de los datos replicados.
fMirror = spark.sql("SELECT * FROM Lakehouse1.OrdersDB_ordercatalog")Sugerencia
Los nombres de tabla de estos bloques de código de ejemplo asumen un esquema de datos determinado. No dude en reemplazarlo por sus propios nombres de tabla y columna.
Ahora, transforme y agregue los datos.
dfCDB = dfMirror.filter(dfMirror.categoryId.isNotNull()).groupBy("categoryId").agg(max("price").alias("max_price"), max("id").alias("id"))A continuación, configure Spark para volver a escribir en la cuenta de Azure Cosmos DB para NoSQL mediante las credenciales, el nombre de la base de datos y el nombre del contenedor.
writeConfig = { "spark.cosmos.accountEndpoint" : "https://xxxx.documents.azure.com:443/", "spark.cosmos.accountKey" : "xxxx", "spark.cosmos.database" : "xxxx", "spark.cosmos.container" : "xxxx" }Por último, use Spark para volver a escribir en la base de datos de origen.
dfCDB.write.mode("APPEND").format("cosmos.oltp").options(**writeConfig).save()Ejecute todas las celdas de código.
Importante
Las operaciones de escritura en Azure Cosmos DB consumirán unidades de solicitud (RU).