तारीख डाइमेंशन्स और रिलेशनशिप्स

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

Maarten Van den Broeck

Content Developer

Date और Time dimensions

  • Date dimensions एक बिल्ट-इन कैलेंडर देती हैं और जटिल डेट ऑपरेशन घटाती हैं
    • जैसे, फिस्कल ईयर को कैलेंडर ईयर से मिलाएँ
    • जैसे, क्वार्टर, महीना, सप्ताह के हिसाब से स्लाइस करें
  • Time dimensions दिन के समय संभालती हैं: hour, minute, second
  • Time dimensions आमतौर पर date dimensions से काफी कम उपयोग होती हैं

स्टार स्कीमा में एक date dimension

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

Date dimension बनाने के विकल्प

Method Advantages Disadvantages
डेटाबेस में होस्ट करें वेयरहाउस से डेटा ला रहे हों तो बेहतरीन! डेटाबेस चाहिए
कई सर्विसेज के साथ शेयर करना आसान, अपडेट करना आसान
फ़ाइल में डेटा रखें डेटाबेस नहीं चाहिए, एक बार बनाइए फ़ाइल बनानी होगी
Power BI में टेक्स्ट फ़ाइल सपोर्ट बढ़िया डेटाबेस में होस्ट करने जितना आसान अपडेट नहीं
DAX से बनाएँ पहले दो विकल्पों से ज्यादा कस्टमाइज़ेशन संभव कस्टम कोड लिखना होगा
बाहरी तैयारी की ज़रूरत नहीं कुछ फ़ंक्शनलिटी यहाँ करना मुश्किल हो सकता है
इंटरमीडिएट डेटा मॉडलिंग इन Power BI

DAX से सरल date dimension बनाना

Month_Year = 



CALENDAR(DATE(1950, 1, 1), TODAY()),

  • CALENDAR() एक बिल्ट-इन फंक्शन है जो दिए रेंज की सभी तारीखें लौटाता है
इंटरमीडिएट डेटा मॉडलिंग इन Power BI

DAX से सरल date dimension बनाना

Month_Year = 



CALENDAR(DATE(1950, 1, 1), TODAY()),

  • CALENDAR() एक बिल्ट-इन फंक्शन है जो दिए रेंज की सभी तारीखें लौटाता है
  • 1950-01-01 से आज तक हर तारीख के साथ [Date] फ़ील्ड बनती है $$ $$ $$
[Date]
1950-01-01
1950-01-02
...
2021-06-30
इंटरमीडिएट डेटा मॉडलिंग इन Power BI

DAX से सरल date dimension बनाना

Month_Year = 


SELECTCOLUMNS(
CALENDAR(DATE(1950, 1, 1), TODAY()),
"Month", MONTH([Date]), "Year", YEAR([Date]) )
  • CALENDAR() एक बिल्ट-इन फंक्शन है जो दिए रेंज की सभी तारीखें लौटाता है
  • 1950-01-01 से आज तक हर तारीख के साथ [Date] फ़ील्ड बनती है
  • जिन कॉलमों को जोड़ना है, उन्हें चुनें $$ $$
Month Year
01 1950
01 1950
... ...
06 2021
इंटरमीडिएट डेटा मॉडलिंग इन Power BI

DAX से सरल date dimension बनाना

Month_Year = 

DISTINCT(
SELECTCOLUMNS(
CALENDAR(DATE(1950, 1, 1), TODAY()),
"Month", MONTH([Date]), "Year", YEAR([Date]) )
)
  • CALENDAR() एक बिल्ट-इन फंक्शन है जो दिए रेंज की सभी तारीखें लौटाता है
  • 1950-01-01 से आज तक हर तारीख के साथ [Date] फ़ील्ड बनती है
  • जिन कॉलमों को जोड़ना है, उन्हें चुनें
  • सिर्फ यूनिक रो रखें
Month Year
01 1950
02 1950
... ...
06 2021
इंटरमीडिएट डेटा मॉडलिंग इन Power BI

रिलेशनशिप्स परिभाषित करना

  • रिलेशनशिप्स से आप Power BI में टेबल्स को लिंक कर सकते हैं
    • टेबल्स के बीच फ़िल्टर फैलाएँ
    • क्रॉस-टेबल कैलकुलेशन संभव करें
  • रिलेशनशिप मैनेज करने के तरीके
    • कॉलम नामों पर आधारित ऑटो-डिटेक्ट
    • मैन्युअल कस्टमाइज़ेशन

रिलेशनशिप्स वाला एक डेटा मॉडल

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

रिलेशनशिप keys

  • रिलेशनशिप्स keys पर आधारित होते हैं

    • एक या अधिक कॉलम जो रो को यूनिक बनाते हैं
  • keys के दो प्रकार:

    • Natural key: मौजूदा कॉलम (जैसे, email)
    • Surrogate key: आर्टिफिशियल कॉलम (जैसे, ID)
  • Power BI में single column रिलेशनशिप चाहिए

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

रिलेशनशिप keys

  • रिलेशनशिप्स keys पर आधारित होते हैं

    • एक या अधिक कॉलम जो रो को यूनिक बनाते हैं
  • keys के दो प्रकार:

    • Natural key: मौजूदा कॉलम (जैसे, email)
    • Surrogate key: आर्टिफिशियल कॉलम (जैसे, ID)
  • Power BI में single column रिलेशनशिप चाहिए

  • Composite key: कम से कम दो कॉलम से बना key
First Name Last Name Birth year Value
Chris P Bacon 1996 599
Jane Bonds 1998 523
Dwayne Pipe 1988 -566

$$

Composite Key Value
Chris P-Bacon-1996 599
Jane-Bondts-1998 523
Dwayne-Pipe-1988 -566
इंटरमीडिएट डेटा मॉडलिंग इन Power BI

कार्डिनेलिटी

  • दो दी गई टेबल्स की रॉज़ के बीच संबंध का माप
  • Many-to-one/One-to-many: सबसे आम
    • डाइमेंशन की एक रो को फैक्ट टेबल की एक या अधिक रॉज़ से जोड़ें

$$

one to many संबंध

many to one संबंध

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

कार्डिनेलिटी

  • कम आम:

    • One-to-one one to one संबंध $$

    • Many-to-many many to many संबंध

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

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

इंटरमीडिएट डेटा मॉडलिंग इन Power BI

Preparing Video For Download...