Tworzenie jeziora dla usługi Direct Lake
W tym artykule opisano sposób tworzenia magazynu typu lakehouse, tworzenia tabeli delty w usłudze Lakehouse, a następnie tworzenia podstawowego modelu semantycznego dla magazynu lakehouse w obszarze roboczym usługi Microsoft Fabric.
Przed rozpoczęciem tworzenia magazynu lakehouse dla usługi Direct Lake zapoznaj się z omówieniem usługi Direct Lake.
Tworzenie jeziora
W obszarze roboczym usługi Microsoft Fabric wybierz pozycję Nowe>więcej opcji, a następnie w obszarze inżynierowie danych wybierz kafelek Lakehouse.
W oknie dialogowym New lakehouse wprowadź nazwę, a następnie wybierz pozycję Utwórz. Nazwa może zawierać tylko znaki alfanumeryczne i podkreślenia.
Sprawdź, czy nowa usługa lakehouse została utworzona i zostanie otwarta pomyślnie.
Tworzenie tabeli delty w lakehouse
Po utworzeniu nowego magazynu lakehouse należy utworzyć co najmniej jedną tabelę delty, aby usługa Direct Lake mogła uzyskiwać dostęp do niektórych danych. Usługa Direct Lake może odczytywać pliki w formacie parquet, ale w celu uzyskania najlepszej wydajności najlepiej skompresować dane przy użyciu metody kompresji VORDER. VorDER kompresuje dane przy użyciu natywnego algorytmu kompresji aparatu usługi Power BI. Dzięki temu aparat może ładować dane do pamięci tak szybko, jak to możliwe.
Istnieje wiele opcji ładowania danych do magazynu lakehouse, w tym potoków danych i skryptów. W poniższych krokach użyj narzędzia PySpark, aby dodać tabelę delty do usługi Lakehouse na podstawie zestawu danych Azure Open:
W nowo utworzonym lakehouse wybierz pozycję Otwórz notes, a następnie wybierz pozycję Nowy notes.
Skopiuj i wklej następujący fragment kodu do pierwszej komórki kodu, aby umożliwić platformie SPARK dostęp do otwartego modelu, a następnie naciśnij klawisze Shift + Enter , aby uruchomić kod.
# Azure storage access info blob_account_name = "azureopendatastorage" blob_container_name = "holidaydatacontainer" blob_relative_path = "Processed" blob_sas_token = r"" # Allow SPARK to read from Blob remotely wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path) spark.conf.set( 'fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name), blob_sas_token) print('Remote blob path: ' + wasbs_path)
Sprawdź, czy kod pomyślnie wyświetli ścieżkę zdalnego obiektu blob.
Skopiuj i wklej następujący kod do następnej komórki, a następnie naciśnij klawisze Shift + Enter.
# Read Parquet file into a DataFrame. df = spark.read.parquet(wasbs_path) print(df.printSchema())
Sprawdź, czy kod pomyślnie wyprowadza schemat ramki danych.
Skopiuj i wklej następujące wiersze do następnej komórki, a następnie naciśnij klawisze Shift + Enter. Pierwsza instrukcja umożliwia metodę kompresji VORDER, a następna instrukcja zapisuje ramkę danych jako tabelę delta w lakehouse.
# Save as delta table spark.conf.set("spark.sql.parquet.vorder.enabled", "true") df.write.format("delta").saveAsTable("holidays")
Sprawdź, czy wszystkie zadania PLATFORMy SPARK zostały ukończone pomyślnie. Rozwiń listę zadań PLATFORMy SPARK, aby wyświetlić więcej szczegółów.
Aby sprawdzić, czy tabela została pomyślnie utworzona, w lewym górnym obszarze obok pozycji Tabele wybierz wielokropek (...), a następnie wybierz pozycję Odśwież, a następnie rozwiń węzeł Tabele .
Używając tej samej metody, co powyższe lub inne obsługiwane metody, dodaj więcej tabel różnicowych dla danych, które chcesz przeanalizować.
Tworzenie podstawowego modelu usługi Direct Lake dla usługi LakeHouse
W usłudze Lakehouse wybierz pozycję Nowy model semantyczny, a następnie w oknie dialogowym wybierz tabele, które mają zostać uwzględnione.
Wybierz pozycję Potwierdź , aby wygenerować model usługi Direct Lake. Model jest automatycznie zapisywany w obszarze roboczym na podstawie nazwy usługi Lakehouse, a następnie otwiera model.
Wybierz pozycję Otwórz model danych, aby otworzyć środowisko modelowania sieci Web, w którym można dodawać relacje tabel i miary języka DAX.
Po zakończeniu dodawania relacji i miar języka DAX możesz tworzyć raporty, tworzyć model złożony i wykonywać zapytania dotyczące modelu za pomocą punktów końcowych XMLA w taki sam sposób, jak w przypadku każdego innego modelu.