Del via


Slik gjør du det: Få tilgang til speilvendte Azure Cosmos DB-data i Lakehouse og notatblokker fra Microsoft Fabric (forhåndsvisning)

I denne veiledningen lærer du hvordan du får tilgang til speilvendte Azure Cosmos DB-data i Lakehouse og notatblokker fra Microsoft Fabric (forhåndsvisning).

Viktig

Speiling for Azure Cosmos DB er for øyeblikket i forhåndsversjon. Produksjonsarbeidsbelastninger støttes ikke under forhåndsvisning. For øyeblikket støttes bare Azure Cosmos DB for NoSQL-kontoer.

Forutsetning

Tips

Under den offentlige forhåndsvisningen anbefales det å bruke en test- eller utviklingskopi av eksisterende Azure Cosmos DB-data som raskt kan gjenopprettes fra en sikkerhetskopi.

Oppsett av speiling og forutsetninger

Konfigurer speiling for Azure Cosmos DB for NoSQL-databasen. Hvis du er usikker på hvordan du konfigurerer speiling, kan du se den konfigurer speilvendte databaseopplæringen.

  1. Gå til Stoff-portalen.

  2. Opprett en ny tilkobling og speilvendt database ved hjelp av Legitimasjonen for Azure Cosmos DB-kontoen.

  3. Vent til replikering fullfører det første øyeblikksbildet av data.

Få tilgang til speilvendte data i Lakehouse og notatblokker

Bruk Lakehouse til ytterligere å utvide antall verktøy du kan bruke til å analysere Azure Cosmos DB for NoSQL speilede data. Her bruker du Lakehouse til å bygge en Spark-notatblokk for å spørre dataene dine.

  1. Gå til hjemsiden for Fabric-portalen på nytt.

  2. Velg Opprett i navigasjonsmenyen.

  3. Velg Opprett, finn inndelingen Dataingeniør ing, og velg deretter Lakehouse.

  4. Angi et navn for Lakehouse, og velg deretter Opprett.

  5. Velg Hent data, og deretter Ny snarvei. Velg Microsoft OneLake fra listen over snarveisalternativer.

  6. Velg den speilede Azure Cosmos DB for NoSQL-databasen fra listen over speilede databaser i Fabric-arbeidsområdet. Velg tabellene du vil bruke med Lakehouse, velg Neste, og velg deretter Opprett.

  7. Åpne hurtigmenyen for tabellen i Lakehouse, og velg Ny eller eksisterende notatblokk.

  8. En ny notatblokk åpnes automatisk og laster inn en dataramme ved hjelp av SELECT LIMIT 1000.

  9. Kjør spørringer som SELECT * å bruke Spark.

    df = spark.sql("SELECT * FROM Lakehouse.OrdersDB_customers LIMIT 1000")
    display(df)
    

    Skjermbilde av en Lakehouse-notatblokk med data forhåndslastet fra den speilede databasen.

    Merk

    Dette eksemplet forutsetter navnet på tabellen. Bruk din egen tabell når du skriver Spark-spørringen.

Skriv tilbake ved hjelp av Spark

Til slutt kan du bruke Spark- og Python-kode til å skrive data tilbake til azure Cosmos DB-kontoen fra notatblokker i Fabric. Det kan være lurt å gjøre dette for å skrive tilbake analytiske resultater til Cosmos DB, som deretter kan brukes som serveringsplan for OLTP-programmer.

  1. Opprett fire kodeceller i notatblokken.

  2. Først kan du spørre etter speilvendte data.

    fMirror = spark.sql("SELECT * FROM Lakehouse1.OrdersDB_ordercatalog")
    

    Tips

    Tabellnavnene i disse eksempelkodeblokkene forutsetter et bestemt dataskjema. Du kan gjerne erstatte dette med dine egne tabell- og kolonnenavn.

  3. Transformer og aggreger dataene.

    dfCDB = dfMirror.filter(dfMirror.categoryId.isNotNull()).groupBy("categoryId").agg(max("price").alias("max_price"), max("id").alias("id"))
    
  4. Deretter konfigurerer du Spark til å skrive tilbake til Azure Cosmos DB for NoSQL-kontoen ved hjelp av legitimasjon, databasenavn og beholdernavn.

    writeConfig = {
      "spark.cosmos.accountEndpoint" : "https://xxxx.documents.azure.com:443/",
      "spark.cosmos.accountKey" : "xxxx",
      "spark.cosmos.database" : "xxxx",
      "spark.cosmos.container" : "xxxx"
    }
    
  5. Til slutt kan du bruke Spark til å skrive tilbake til kildedatabasen.

    dfCDB.write.mode("APPEND").format("cosmos.oltp").options(**writeConfig).save()
    
  6. Kjør alle kodecellene.

    Viktig

    Skriveoperasjoner til Azure Cosmos DB bruker forespørselsenheter (RUer).