Partager via


Créer un lakehouse pour Direct Lake

Cet article explique comment créer un lakehouse, créer une table Delta dans le lakehouse, puis créer un modèle sémantique de base pour le lakehouse dans un espace de travail Microsoft Fabric.

Avant de commencer à créer une lakehouse pour Direct Lake, veillez à lire vue d’ensemble de Direct Lake.

Créer un lakehouse

  1. Dans votre espace de travail Microsoft Fabric, sélectionnez Nouvelle>Autres options, puis, dans ingénierie des données, sélectionnez la vignette Lakehouse.

    Capture d’écran montrant la vignette Lakehouse dans l’ingénierie des données.

  2. Dans la boîte de dialogue New lakehouse, entrez un nom, puis sélectionnez Créer. Le nom ne peut contenir que des caractères alphanumériques et des traits de soulignement.

    Capture d’écran montrant la boîte de dialogue New lakehouse.

  3. Vérifiez que le nouveau lakehouse est créé et s’ouvre correctement.

    Capture d’écran de lakehouse créée dans l’espace de travail.

Créer une table Delta dans le lakehouse

Après avoir créé un lakehouse, vous devez ensuite créer au moins une table Delta afin que Direct Lake puisse accéder à certaines données. Direct Lake peut lire des fichiers au format Parquet, mais pour des performances optimales, il est préférable de compresser les données à l’aide de la méthode de compression VORDER. VORDER compresse les données à l’aide de l’algorithme de compression natif du moteur Power BI. Ainsi, le moteur peut charger les données en mémoire le plus rapidement possible.

Il existe plusieurs options pour charger des données dans un lakehouse, notamment via des pipelines de données et des scripts. Les étapes suivantes utilisent PySpark pour ajouter une table Delta à un lakehouse basé sur un Azure Open Dataset:

  1. Dans le lakehouse nouvellement créé, sélectionnez Ouvrir le bloc-notes, puis sélectionnez Nouveau bloc-notes.

    Capture d’écran montrant la nouvelle commande notebook.

  2. Copiez et collez l’extrait de code suivant dans la première cellule de code pour permettre à SPARK d’accéder au modèle ouvert, puis appuyez sur Maj + Entrée pour exécuter le code.

    # 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. Vérifiez que le code produit correctement un chemin d’accès d’objet blob distant.

    Capture d’écran montrant la sortie du chemin d'accès de blob distant.

  4. Copiez et collez le code suivant dans la cellule suivante, puis appuyez sur Maj + Entrée.

    # Read Parquet file into a DataFrame.
    df = spark.read.parquet(wasbs_path)
    print(df.printSchema())
    
    
  5. Vérifiez que le code génère correctement le schéma DataFrame.

    Capture d’écran montrant la sortie du schéma de trame de données.

  6. Copiez et collez les lignes suivantes dans la cellule suivante, puis appuyez sur Shift + entrée. La première instruction active la méthode de compression VORDER et l’instruction suivante enregistre le DataFrame en tant que table Delta dans le lakehouse.

    # Save as delta table 
    spark.conf.set("spark.sql.parquet.vorder.enabled", "true")
    df.write.format("delta").saveAsTable("holidays")
    
    
  7. Vérifiez que tous les travaux SPARK se terminent correctement. Étendez la liste des travaux SPARK pour afficher plus de détails.

    Capture d’écran montrant la liste développée des travaux SPARK.

  8. Pour vérifier qu’une table a été créée avec succès, dans la zone supérieure gauche, à côté de Tables, sélectionnez les points de suspension (...), puis sélectionnez Actualiser, et développez le nœud Tables.

    Capture d’écran montrant la commande Actualiser près du nœud Tables.

  9. À l’aide de la même méthode que ci-dessus ou d’autres méthodes prises en charge, ajoutez d’autres tables Delta pour les données que vous souhaitez analyser.

Créer un modèle Direct Lake de base pour votre lakehouse

  1. Dans votre lakehouse, sélectionnez nouveau modèle sémantique, puis dans la boîte de dialogue, sélectionnez les tables à inclure.

    Capture d’écran de la boîte de dialogue pour créer un modèle.

  2. Sélectionnez Confirmer pour générer le modèle Direct Lake. Le modèle est automatiquement enregistré dans l’espace de travail en fonction du nom de votre lakehouse, puis le modèle s'ouvre.

    Capture d’écran montrant le modèle ouvert dans Power BI.

  3. Sélectionnez modèle de données open pour ouvrir l’expérience de modélisation web dans laquelle vous pouvez ajouter des relations de table et des mesures DAX.

    capture d’écran montrant la modélisation web dans Power BI.

Lorsque vous avez fini d’ajouter des relations et des mesures DAX, vous pouvez ensuite créer des rapports, créer un modèle composite et interroger le modèle via des points de terminaison XMLA de la même façon que n’importe quel autre modèle.