डेटा डीनॉर्मलाइज़ेशन

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

Luis Silva

Solution Architect - Data & AI

Normalization क्या है?

  • अनावश्यक दोहराव घटाने और इंटीग्रिटी बढ़ाने के लिए डेटा व्यवस्थित करें
  • 1970 में कंप्यूटर वैज्ञानिक Tedd Codd द्वारा तय सिद्धांतों पर आधारित, जिन्होंने रिलेशनल मॉडल बनाया
  • Third Normal Form (3NF): नॉन-की एट्रिब्यूट्स सिर्फ प्राइमरी की पर निर्भर हों
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Normalization क्या है?

  • Keys और नई टेबल्स का उपयोग करके उन एट्रिब्यूट्स को बदला जाता है जो वरना डेटा दोहराव बढ़ाएँगे।

 

अनावश्यक दोहराव घटाने के लिए एक टेबल को तीन भागों में बाँटने का चित्र

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

Normalization उदाहरण

नमूना टेबल जिसमें वीडियो गेम्स के टाइटल, उनके पब्लिशर और जेनर हैं। उदाहरण पंक्ति: गेम टाइटल Gran Turismo, Publisher Sony, genre Racing

  • publisher और genre के लिए बहुत से दोहराए गए टेक्स्ट एंट्रीज़ हैं.
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Normalization उदाहरण

नमूना टेबल जिसमें वीडियो गेम्स के टाइटल, पब्लिशर और जेनर हैं। पब्लिशर और जेनर के विवरण अलग टेबल्स में भेजे गए हैं और गेम्स टेबल में टेक्स्ट एंट्रीज़ की जगह संदर्भित न्यूमेरिक IDs हैं

  • publisher और genre के टेक्स्ट एंट्रीज़ अब सिर्फ एक बार दिखते हैं.
  • Games टेबल में publisher और genre की जगह न्यूमेरिक keys कम स्पेस लेती हैं
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Denormalization

  • डीनॉर्मलाइज़ेशन अतिरिक्त दोहराव का उपयोग करके डेटा मॉडल को फ्लैट करता है; यह नॉर्मलाइज़ेशन का उल्टा है
  • डीनॉर्मलाइज़ेशन में कम टेबल्स होती हैं, पर दोहराव बढ़ता है

कई टेबल्स को एक में जोड़ने के विचार का चित्र

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

Normalization कब उपयोग करें?

  • OLTP ट्रांजैक्शनल सिस्टम्स

    • डेटा writes (individual inserts, updates, deletes) को ऑप्टिमाइज़ करना
    • डेटा इंटीग्रिटी सुनिश्चित करना
  • Fact tables

    • Millions of rows
    • स्टोरेज स्पेस घटाना
    • मॉडल को समझना आसान बनाना
    • स्टार स्कीमा का आधार

 

स्टार स्कीमा का चित्र, fact table को हाइलाइट करते हुए

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

Denormalization कब उपयोग करें?

  • Dimension tables
    • आम तौर पर fact tables से बहुत छोटी
    • Redundancy = कम joins = तेज़ queries
    • बेहतर क्वेरी प्रदर्शन, अतिरिक्त स्टोरेज लागत से अधिक लाभ देता है
    • स्टार स्कीमा, स्नोफ्लेक स्कीमा से सरल है

 

स्टार स्कीमा का चित्र, dimension tables को हाइलाइट करते हुए

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

डीनॉर्मलाइज़ेशन लागू करना

 

 

तीन टूल्स के आइकन: SQL, Spark और Dataflows

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

SQL के साथ डीनॉर्मलाइज़ेशन लागू करना

  • SELECT + JOIN स्टेटमेंट
-- [dim_videogames]: Videogames table
-- [dim_genres]: Genres table
-- [dim_publishers]: Publishers table

SELECT game_id, title, gen.genre, pub.publisher
FROM dim_videogames_norm vidg
JOIN dim_genres gen
  ON vidg.genre_id = gen.genre_id
JOIN dim_publishers pub
  ON vidg.publisher_id = pub.publisher_id
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Spark के साथ डीनॉर्मलाइज़ेशन लागू करना

  • DataFrame join( ) और select( )
# [videogamesDF]: Videogames DataFrame
# [genresDF]: Genres DataFrame
# [publishersDF]: Publishers DataFrame

videogames1DF = videogamesDF.join(genresDF, ["genre_id"])
videogamesdenormDF = videogames1DF.join(publishersDF, ["publisher_id"])
videogamesdenormDF.select("game_id", "title", "genre_id", "publisher_id").show()
Microsoft Fabric के साथ डेटा ट्रांसफॉर्म करें और विश्लेषण करें

Dataflows के साथ डीनॉर्मलाइज़ेशन लागू करना

  • क्वेरीज़ से डेटा लोड करें
  • क्वेरीज़ को जोड़ने के लिए Merge queries या Merge queries as new ट्रांसफॉर्मेशंस का उपयोग करें

एक Dataflow का स्क्रीनशॉट जो Merge queries as new से videogames, genres और publishers क्वेरीज़ को जोड़ता है

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

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

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

Preparing Video For Download...