Optimisation des tables Delta Lake

Transformer et analyser des données avec Microsoft Fabric

Luis Silva

Solution Architect - Data & AI

Qu'est-ce que Delta Lake ?

  • Couche de stockage open source pour lakehouses
  • Transactions ACID, gestion des métadonnées et versioning
  • Fabric utilise le format de table Delta Lake (Parquet) comme standard
  • Interopérabilité entre les expériences Fabric

Schéma de l'architecture Fabric montrant des données ingérées et stockées en tables Delta Lake puis interrogées avec Power BI

Transformer et analyser des données avec Microsoft Fabric

Maintenance des tables

  • Garder les tables Delta en bon état
  • Opérations de maintenance :
    • Optimize
    • V-Order
    • Vacuum
Transformer et analyser des données avec Microsoft Fabric

Optimize

  • Regrouper plusieurs petits fichiers Parquet en un gros fichier
    • Taille idéale : entre 128 MB et 1 GB
    • Meilleure compression et répartition : lectures plus efficaces
    • À lancer après le chargement de grandes tables

Schéma représentant une table lakehouse composée d'une douzaine de petits fichiers Parquet, optimisée en deux gros fichiers Parquet. Les fichiers d'origine restent inactifs

Transformer et analyser des données avec Microsoft Fabric

Optimize

  • Regrouper plusieurs petits fichiers Parquet en un gros fichier
    • Taille idéale : entre 128 MB et 1 GB
    • Meilleure compression et répartition : lectures plus efficaces
    • À lancer après le chargement de grandes tables

Schéma représentant une table lakehouse composée d'une douzaine de petits fichiers Parquet, optimisée en deux gros fichiers Parquet. Les fichiers d'origine restent inactifs

Transformer et analyser des données avec Microsoft Fabric

Exécuter Optimize depuis l'explorateur Lakehouse

Capture d'écran de la commande Maintenance dans l'explorateur Lakehouse, avec l'option Run OPTIMIZE command mise en évidence

Transformer et analyser des données avec Microsoft Fabric

Exécuter Optimize en Spark SQL

%%sql
OPTIMIZE <lakehouse>.<table>;
Transformer et analyser des données avec Microsoft Fabric

Exécuter Optimize en PySpark

from delta.tables import DeltaTable

dt = DeltaTable.forPath( spark, "Tables/<table>" )
dt.optimize().executeCompaction()
Transformer et analyser des données avec Microsoft Fabric

V-Order

  • Optimisation spécifique appliquée lors de l'écriture de fichiers Parquet
  • Activée par défaut
Transformer et analyser des données avec Microsoft Fabric

Appliquer V-Order depuis l'explorateur Lakehouse

Capture d'écran de la commande Maintenance dans l'explorateur Lakehouse, avec l'option Apply V-ORDER mise en évidence

Transformer et analyser des données avec Microsoft Fabric

Contrôler l'écriture V-Order dans une session Apache Spark

  • Activer V-Order pour la session

    %%sql 
    SET spark.sql.parquet.vorder.enabled=TRUE
    

     

  • Désactiver V-Order pour la session

    %%sql 
    SET spark.sql.parquet.vorder.enabled=FALSE
    
Transformer et analyser des données avec Microsoft Fabric

Appliquer V-Order lors de l'optimisation d'une table

%%sql 
OPTIMIZE <table|fileOrFolderPath> VORDER;
Transformer et analyser des données avec Microsoft Fabric

Vacuum

  • Supprimer les anciens fichiers devenus inutiles et au-delà du seuil de rétention
  • Réduire les coûts de stockage cloud

Schéma représentant une table lakehouse avec deux gros fichiers Parquet actifs et une douzaine de petits fichiers inactifs mais encore stockés. Après Vacuum, les anciens fichiers sont supprimés du stockage

Transformer et analyser des données avec Microsoft Fabric

Vacuum

  • Supprimer les anciens fichiers devenus inutiles et au-delà du seuil de rétention
  • Réduire les coûts de stockage cloud

Schéma représentant une table lakehouse avec deux gros fichiers Parquet actifs et une douzaine de petits fichiers inactifs mais encore stockés. Après Vacuum, les anciens fichiers sont supprimés du stockage

Transformer et analyser des données avec Microsoft Fabric

Exécuter Vacuum depuis l'explorateur Lakehouse

Capture d'écran de la commande Maintenance dans l'explorateur Lakehouse, avec l'option Run VACUUM mise en évidence

Transformer et analyser des données avec Microsoft Fabric

Passons à la pratique !

Transformer et analyser des données avec Microsoft Fabric

Preparing Video For Download...