Freigeben über


Erstellen eines Lakehouse für Direct Lake

In diesem Artikel wird beschrieben, wie Sie ein Lakehouse, eine Delta-Tabelle im Lakehouse und dann ein einfaches Semantikmodell für das Lakehouse in einem Microsoft Fabric-Arbeitsbereich erstellen.

Bevor Sie mit dem Erstellen eines Lakehouse für Direct Lake beginnen, lesen Sie unbedingt die Übersicht über Direct Lake.

Erstellen eines Lakehouse

  1. Wählen Sie in Ihrem Microsoft Fabric-Arbeitsbereich Neu>Weitere Optionen und dann unter Datentechnik die Kachel Lakehouse aus.

    Screenshot: Lakehouse-Kachel in Datentechnik.

  2. Geben Sie im Dialogfeld Neues Lakehouse einen Namen ein, und wählen Sie dann Erstellen aus. Der Name darf nur alphanumerische Zeichen und Unterstriche enthalten.

    Screenshot: Dialogfeld „Neues Lakehouse“.

  3. Vergewissern Sie sich, dass das neue Lakehouse erstellt wurde und erfolgreich geöffnet wird.

    Screenshot: im Arbeitsbereich erstelltes Lakehouse.

Erstellen einer Delta-Tabelle im Lakehouse

Nachdem Sie ein neues Lakehouse erstellt haben, müssen Sie als Nächstes mindestens eine Delta-Tabelle erstellen, damit Direct Lake auf Daten zugreifen kann. Direct Lake kann Dateien im Parquet-Format lesen. Für eine optimale Leistung empfiehlt es sich aber, die Daten mithilfe der VORDER-Komprimierungsmethode zu komprimieren. VORDER komprimiert die Daten mithilfe des nativen Komprimierungsalgorithmus der Power BI-Engine. Auf diese Weise kann die Engine die Daten so schnell wie möglich in den Arbeitsspeicher laden.

Es gibt mehrere Optionen zum Laden von Daten in ein Lakehouse, einschließlich Datenpipelines und Skripts. Die folgenden Schritte verwenden PySpark, um einem Lakehouse basierend auf einem Azure Open Dataset eine Delta-Tabelle hinzuzufügen:

  1. Wählen Sie im neu erstellten Lakehouse Notebook öffnen und dann Neues Notebook aus.

    Screenshot: Befehl „Neues Notebook“.

  2. Kopieren Sie den folgenden Codeschnipsel, und fügen Sie ihn in die erste Codezelle ein, damit SPARK auf das offene Modell zugreifen kann. Drücken Sie dann UMSCHALT+EINGABETASTE, um den Code auszuführen.

    # 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)
    
    
  3. Überprüfen Sie, ob der Code erfolgreich einen Remote-Blobpfad ausgibt.

    Screenshot, der die Ausgabe eines Remote-Blobpfades zeigt.

  4. Kopieren Sie den folgenden Code, fügen Sie ihn in die nächste Zelle ein, und drücken Sie dannUMSCHALT+EINGABETASTE.

    # Read Parquet file into a DataFrame.
    df = spark.read.parquet(wasbs_path)
    print(df.printSchema())
    
    
  5. Überprüfen Sie, ob der Code das DataFrame-Schema erfolgreich ausgibt.

    Screenshot: Ausgabe des DataFrame-Schemas.

  6. Kopieren Sie die folgenden Zeilen, fügen Sie ihn in die nächste Zelle ein, und drücken Sie dannUMSCHALT+EINGABETASTE. Die erste Anweisung aktiviert die VORDER-Komprimierungsmethode. Die folgende Anweisung speichert den DataFrame als Delta-Tabelle im Lakehouse.

    # Save as delta table 
    spark.conf.set("spark.sql.parquet.vorder.enabled", "true")
    df.write.format("delta").saveAsTable("holidays")
    
    
  7. Überprüfen Sie, ob alle SPARK-Aufträge erfolgreich abgeschlossen wurden. Erweitern Sie die Liste der SPARK-Aufträge, um weitere Details anzuzeigen.

    Screenshot: erweiterte Liste der SPARK-Jobs.

  8. Um zu überprüfen, ob eine Tabelle erfolgreich erstellt wurde, wählen Sie im Bereich links oben neben Tabellen die Auslassungspunkte (...) und dann Aktualisieren aus. Erweitern Sie dann den Tabellen-Knoten.

    Screenshot: Befehl Aktualisieren in der Nähe des Tabellen-Knotens.

  9. Verwenden Sie entweder die gleiche Methode wie oben oder andere unterstützte Methoden, um den Daten, die Sie analysieren möchten, weitere Delta-Tabellen hinzuzufügen.

Erstellen eines einfachen Direct Lake-Modells für Ihr Lakehouse

  1. Wählen Sie in Ihrem Lakehouse Neues semantisches Modell und dann im Dialogfeld die Tabellen aus, die übernommen werden sollen.

    Screenshot: Dialogfeld zum Erstellen eines neuen Modells.

  2. Wählen Sie Bestätigen aus, um das Direct Lake-Modell zu generieren. Das Modell wird basierend auf dem Namen Ihres Lakehouse automatisch im Arbeitsbereich gespeichert und dann geöffnet.

    Screenshot des offenen Modells in Power BI

  3. Wählen Sie Datenmodell öffnen aus, um die Webmodellierungsoberfläche zu öffnen, in der Sie Tabellenbeziehungen und DAX-Measures hinzufügen können.

    Screenshot der die Webmodellierungsoberfläche in Power BI zeigt.

Wenn Sie mit dem Hinzufügen von Beziehungen und DAX-Measures fertig sind, können Sie Berichte erstellen, ein zusammengesetztes Modell erstellen und das Modell über XMLA-Endpunkte auf fast die gleiche Weise abfragen wie jedes andere Modell.