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
Dans votre espace de travail Microsoft Fabric, sélectionnez Nouvelle>Autres options, puis, dans ingénierie des données, sélectionnez la vignette Lakehouse.
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.
Vérifiez que le nouveau lakehouse est créé et s’ouvre correctement.
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:
Dans le lakehouse nouvellement créé, sélectionnez Ouvrir le bloc-notes, puis sélectionnez Nouveau bloc-notes.
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)
Vérifiez que le code produit correctement un chemin d’accès d’objet blob distant.
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())
Vérifiez que le code génère correctement le schéma DataFrame.
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")
Vérifiez que tous les travaux SPARK se terminent correctement. Étendez la liste des travaux SPARK pour afficher plus de détails.
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.
À 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
Dans votre lakehouse, sélectionnez nouveau modèle sémantique, puis dans la boîte de dialogue, sélectionnez les tables à inclure.
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.
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
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.