Delta Lake टेबल ऑप्टिमाइज़ेशन

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Luis Silva

Solution Architect - Data & AI

Delta Lake क्या है?

  • लेकहाउस के लिए ओपन-सोर्स स्टोरेज लेयर
  • ACID ट्रांज़ैक्शन, मेटाडेटा हैंडलिंग और वर्ज़निंग
  • Fabric मानक रूप में Delta Lake टेबल फ़ॉर्मेट (Parquet) का उपयोग करता है
  • Fabric अनुभवों के बीच इंटरऑपरेबिलिटी

Fabric आर्किटेक्चर डायग्राम जिसमें डेटा Delta Lake टेबल के रूप में इनजेस्ट व स्टोर होता है और फिर Power BI से क्वेरी किया जाता है

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

टेबल मेंटेनेंस

  • डेल्टा टेबल्स को फिट रखें
  • टेबल मेंटेनेंस ऑपरेशंस:
    • Optimize
    • V-Order
    • Vacuum
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Optimize

  • कई छोटे Parquet फ़ाइलों को एक बड़ी फ़ाइल में समेकित करें
    • आदर्श फ़ाइल आकार 128MB से 1GB
    • बेहतर कंप्रेशन और डिस्ट्रीब्यूशन, जिससे रीड्स कुशल बनती हैं
    • बड़ी टेबल लोड करने के बाद ऑप्टिमाइज़ करना अनुशंसित है

डायग्राम: लेकहाउस टेबल जिनमें दर्जन भर छोटे parquet फ़ाइलें हैं, जिन्हें ऑप्टिमाइज़ कर दो बड़ी parquet फ़ाइलों में बदला गया है। मूल फ़ाइलें निष्क्रिय रहती हैं

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Optimize

  • कई छोटे Parquet फ़ाइलों को एक बड़ी फ़ाइल में समेकित करें
    • आदर्श फ़ाइल आकार 128MB से 1GB
    • बेहतर कंप्रेशन और डिस्ट्रीब्यूशन, जिससे रीड्स कुशल बनती हैं
    • बड़ी टेबल लोड करने के बाद ऑप्टिमाइज़ करना अनुशंसित है

डायग्राम: लेकहाउस टेबल जिनमें दर्जन भर छोटे parquet फ़ाइलें हैं, जिन्हें ऑप्टिमाइज़ कर दो बड़ी parquet फ़ाइलों में बदला गया है। मूल फ़ाइलें निष्क्रिय रहती हैं

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Lakehouse explorer से Optimize कमांड चलाना

Lakehouse explorer में Maintenance कमांड का स्क्रीनशॉट, जहाँ Run OPTIMIZE कमांड विकल्प हाइलाइट है

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Spark SQL में Optimize कमांड चलाना

%%sql
OPTIMIZE <lakehouse>.<table>;
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

PySpark में Optimize कमांड चलाना

from delta.tables import DeltaTable

dt = DeltaTable.forPath( spark, "Tables/<table>" )
dt.optimize().executeCompaction()
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

V-Order

  • Parquet फ़ाइलें लिखते समय विशेष ऑप्टिमाइज़ेशन लागू होता है
  • डिफ़ॉल्ट रूप से सक्षम
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Lakehouse explorer से V-Order लागू करना

Lakehouse explorer में Maintenance कमांड का स्क्रीनशॉट, जहाँ Apply V-ORDER विकल्प हाइलाइट है

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Apache Spark सत्र में V-Order लिखना नियंत्रित करना

  • सत्र के लिए V-Order सक्षम करें

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

     

  • सत्र के लिए V-Order अक्षम करें

    %%sql 
    SET spark.sql.parquet.vorder.enabled=FALSE
    
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

टेबल ऑप्टिमाइज़ करते समय V-Order लागू करना

%%sql 
OPTIMIZE <table|fileOrFolderPath> VORDER;
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Vacuum

  • पुरानी, अनावश्यक और रिटेंशन थ्रेशहोल्ड से पुरानी फ़ाइलें हटाएँ
  • क्लाउड स्टोरेज लागत घटाएँ

डायग्राम: लेकहाउस टेबल में दो बड़ी सक्रिय parquet फ़ाइलें और दर्जन भर छोटी निष्क्रिय parquet फ़ाइलें स्टोरेज में हैं। Vacuum चलाने के बाद पुरानी फ़ाइलें स्टोरेज से हट जाती हैं

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Vacuum

  • पुरानी, अनावश्यक और रिटेंशन थ्रेशहोल्ड से पुरानी फ़ाइलें हटाएँ
  • क्लाउड स्टोरेज लागत घटाएँ

डायग्राम: लेकहाउस टेबल में दो बड़ी सक्रिय parquet फ़ाइलें और दर्जन भर छोटी निष्क्रिय parquet फ़ाइलें स्टोरेज में हैं। Vacuum चलाने के बाद पुरानी फ़ाइलें स्टोरेज से हट जाती हैं

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Lakehouse explorer से Vacuum चलाना

Lakehouse explorer में Maintenance कमांड का स्क्रीनशॉट, जहाँ Run VACUUM विकल्प हाइलाइट है

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

अभ्यास करते हैं!

Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Preparing Video For Download...