Udostępnij za pośrednictwem


Instrukcje: uzyskiwanie dostępu do dublowanych danych usługi Azure Cosmos DB w usłudze Lakehouse i notesów z usługi Microsoft Fabric (wersja zapoznawcza)

Z tego przewodnika dowiesz się, jak uzyskać dostęp do dublowanych danych usługi Azure Cosmos DB w usłudze Lakehouse i notesach z usługi Microsoft Fabric (wersja zapoznawcza).

Ważne

Dublowanie dla usługi Azure Cosmos DB jest obecnie dostępne w wersji zapoznawczej. Obciążenia produkcyjne nie są obsługiwane w wersji zapoznawczej. Obecnie obsługiwane są tylko konta usługi Azure Cosmos DB for NoSQL.

Wymagania wstępne

  • Istniejące konto usługi Azure Cosmos DB for NoSQL.
    • Jeśli nie masz subskrypcji platformy Azure, wypróbuj bezpłatnie usługę Azure Cosmos DB dla noSQL.
    • Jeśli masz istniejącą subskrypcję platformy Azure, utwórz nowe konto usługi Azure Cosmos DB for NoSQL.
  • Istniejąca pojemność sieci szkieletowej. Jeśli nie masz istniejącej pojemności, uruchom wersję próbną usługi Fabric.
  • Konto usługi Azure Cosmos DB for NoSQL musi być skonfigurowane pod kątem dublowania sieci szkieletowej. Aby uzyskać więcej informacji, zobacz wymagania dotyczące konta.

Napiwek

W publicznej wersji zapoznawczej zaleca się użycie kopii testowej lub deweloperskiej istniejących danych usługi Azure Cosmos DB, które można szybko odzyskać z kopii zapasowej.

Konfigurowanie dublowania i wymagań wstępnych

Konfigurowanie dublowania dla bazy danych Azure Cosmos DB for NoSQL. Jeśli nie masz pewności, jak skonfigurować dublowanie, zapoznaj się z samouczkiem dotyczącym konfigurowania dublowanej bazy danych.

  1. Przejdź do portalu sieci szkieletowej.

  2. Utwórz nowe połączenie i dublowaną bazę danych przy użyciu poświadczeń konta usługi Azure Cosmos DB.

  3. Poczekaj, aż replikacja zakończy początkową migawkę danych.

Dostęp do danych dublowanych w usłudze Lakehouse i notesach

Użyj usługi Lakehouse, aby jeszcze bardziej rozszerzyć liczbę narzędzi, których można użyć do analizowania danych dublowanych w usłudze Azure Cosmos DB for NoSQL. W tym miejscu użyjesz usługi Lakehouse do utworzenia notesu platformy Spark w celu wykonywania zapytań dotyczących danych.

  1. Przejdź ponownie do strony głównej portalu sieci szkieletowej.

  2. W menu nawigacji wybierz Utwórz.

  3. Wybierz pozycję Utwórz, znajdź sekcję inżynierowie danych ing, a następnie wybierz pozycję Lakehouse.

  4. Podaj nazwę usługi Lakehouse, a następnie wybierz pozycję Utwórz.

  5. Teraz wybierz pozycję Pobierz dane, a następnie pozycję Nowy skrót. Z listy opcji skrótów wybierz pozycję Microsoft OneLake.

  6. Wybierz dublowaną bazę danych Azure Cosmos DB for NoSQL z listy dublowanych baz danych w obszarze roboczym Sieć szkieletowa. Wybierz tabele do użycia z usługą Lakehouse, wybierz pozycję Dalej, a następnie wybierz pozycję Utwórz.

  7. Otwórz menu kontekstowe tabeli w usłudze Lakehouse i wybierz pozycję Nowy lub istniejący notes.

  8. Zostanie automatycznie otwarty nowy notes i ładuje ramkę danych przy użyciu polecenia SELECT LIMIT 1000.

  9. Uruchamianie zapytań, takich jak SELECT * przy użyciu platformy Spark.

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

    Zrzut ekranu przedstawiający notes usługi Lakehouse ze wstępnie załadowanymi danymi z dublowanej bazy danych.

    Uwaga

    W tym przykładzie przyjęto założenie, że nazwa tabeli. Użyj własnej tabeli podczas pisania zapytania platformy Spark.

Zapisywanie zwrotne przy użyciu platformy Spark

Na koniec możesz użyć kodu Spark i Python, aby zapisywać dane z powrotem na źródłowym koncie usługi Azure Cosmos DB z notesów w sieci szkieletowej. Możesz to zrobić, aby zapisać wyniki analityczne w usłudze Cosmos DB, które następnie mogą być używane jako płaszczyzna obsługi dla aplikacji OLTP.

  1. Utwórz cztery komórki kodu w notesie.

  2. Najpierw wykonaj zapytanie dotyczące danych dublowanych.

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

    Napiwek

    Nazwy tabel w tych przykładowych blokach kodu zakładają określony schemat danych. Możesz zastąpić to własnymi nazwami tabel i kolumn.

  3. Teraz przekształcaj i agreguj dane.

    dfCDB = dfMirror.filter(dfMirror.categoryId.isNotNull()).groupBy("categoryId").agg(max("price").alias("max_price"), max("id").alias("id"))
    
  4. Następnie skonfiguruj platformę Spark do zapisywania zwrotnego na koncie usługi Azure Cosmos DB for NoSQL przy użyciu poświadczeń, nazwy bazy danych i nazwy kontenera.

    writeConfig = {
      "spark.cosmos.accountEndpoint" : "https://xxxx.documents.azure.com:443/",
      "spark.cosmos.accountKey" : "xxxx",
      "spark.cosmos.database" : "xxxx",
      "spark.cosmos.container" : "xxxx"
    }
    
  5. Na koniec użyj platformy Spark, aby zapisać z powrotem do źródłowej bazy danych.

    dfCDB.write.mode("APPEND").format("cosmos.oltp").options(**writeConfig).save()
    
  6. Uruchom wszystkie komórki kodu.

    Ważne

    Operacje zapisu w usłudze Azure Cosmos DB będą zużywać jednostki żądań (RU).