Megosztás a következőn keresztül:


Útmutató: Tükrözött Azure Cosmos DB-adatok elérése a Lakehouse-ban és a Microsoft Fabric notebookjaiban (előzetes verzió)

Ebben az útmutatóban megtudhatja, hogyan férhet hozzá a tükrözött Azure Cosmos DB-adatokhoz a Lakehouse-ban és a Microsoft Fabric (előzetes verzió) jegyzetfüzeteiben.

Fontos

Az Azure Cosmos DB tükrözése jelenleg előzetes verzióban érhető el. Az éles számítási feladatok nem támogatottak az előzetes verzióban. Jelenleg csak a NoSQL-fiókokhoz készült Azure Cosmos DB támogatott.

Előfeltételek

Tipp.

A nyilvános előzetes verzióban ajánlott a meglévő Azure Cosmos DB-adatok tesztelési vagy fejlesztési másolatának használata, amely biztonsági másolatból gyorsan helyreállítható.

A tükrözés beállítása és előfeltételei

Konfigurálja a tükrözést az Azure Cosmos DB for NoSQL-adatbázishoz. Ha nem tudja, hogyan konfigurálhatja a tükrözést, tekintse meg a tükrözött adatbázis konfigurálását ismertető oktatóanyagot.

  1. Lépjen a Háló portálra.

  2. Hozzon létre egy új kapcsolatot és tükrözött adatbázist az Azure Cosmos DB-fiók hitelesítő adataival.

  3. Várja meg, amíg a replikáció befejezi az adatok kezdeti pillanatképét.

Tükrözött adatok elérése a Lakehouse-ban és a jegyzetfüzetekben

A Lakehouse használatával tovább bővítheti az Azure Cosmos DB for NoSQL-tükrözött adatok elemzéséhez használható eszközök számát. Itt a Lakehouse használatával hozhat létre Egy Spark-jegyzetfüzetet az adatok lekérdezéséhez.

  1. Lépjen ismét a Háló portál kezdőlapjához.

  2. A navigációs menüben válassza a Létrehozás lehetőséget.

  3. Válassza a Létrehozás lehetőséget, keresse meg a adatmérnök szakaszt, majd válassza a Lakehouse lehetőséget.

  4. Adja meg a Lakehouse nevét, majd válassza a Létrehozás lehetőséget.

  5. Most válassza az Adatok lekérése, majd az Új parancsikon lehetőséget. A billentyűparancsok listájában válassza a Microsoft OneLake lehetőséget.

  6. Válassza ki a tükrözött Azure Cosmos DB for NoSQL-adatbázist a Fabric-munkaterület tükrözött adatbázisainak listájából. Jelölje ki a Lakehouse-hoz használni kívánt táblákat, válassza a Tovább, majd a Létrehozás lehetőséget.

  7. Nyissa meg a táblázat helyi menüjét a Lakehouse-ban, és válassza az Új vagy a meglévő jegyzetfüzet lehetőséget.

  8. Egy új jegyzetfüzet automatikusan megnyílik, és betölt egy adatkeretet a használatával SELECT LIMIT 1000.

  9. Lekérdezések futtatása, például a SELECT * Spark használata.

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

    Képernyőkép egy Lakehouse-jegyzetfüzetről a tükrözött adatbázisból előre betöltött adatokkal.

    Feljegyzés

    Ez a példa a tábla nevét feltételezi. A Spark-lekérdezés írásakor használja a saját tábláját.

Visszaírás a Spark használatával

Végül Spark- és Python-kóddal visszaírhatja az adatokat a forrás Azure Cosmos DB-fiókba a Fabric jegyzetfüzeteiből. Érdemes lehet az elemzési eredményeket visszaírni a Cosmos DB-be, amely aztán kiszolgálósíkként használható az OLTP-alkalmazásokhoz.

  1. Hozzon létre négy kódcellát a jegyzetfüzetben.

  2. Először kérdezd le a tükrözött adatokat.

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

    Tipp.

    A mintakódblokkokban szereplő táblanevek feltételeznek egy bizonyos adatsémát. Ezt nyugodtan lecserélheti a saját táblázat- és oszlopneveire.

  3. Most alakítsa át és összesíti az adatokat.

    dfCDB = dfMirror.filter(dfMirror.categoryId.isNotNull()).groupBy("categoryId").agg(max("price").alias("max_price"), max("id").alias("id"))
    
  4. Ezután konfigurálja a Sparkot, hogy a hitelesítő adatok, az adatbázisnév és a tárolónév használatával írjon vissza az Azure Cosmos DB for NoSQL-fiókjába.

    writeConfig = {
      "spark.cosmos.accountEndpoint" : "https://xxxx.documents.azure.com:443/",
      "spark.cosmos.accountKey" : "xxxx",
      "spark.cosmos.database" : "xxxx",
      "spark.cosmos.container" : "xxxx"
    }
    
  5. Végül a Spark használatával írjon vissza a forrásadatbázisba.

    dfCDB.write.mode("APPEND").format("cosmos.oltp").options(**writeConfig).save()
    
  6. Futtassa az összes kódcellát.

    Fontos

    Az Azure Cosmos DB-be történő írási műveletek kérelemegységeket (RU-kat) használnak fel.