कॉग्नोस - मेटाडेटा मॉडल में संबंध

मेटाडेटा मॉडल में कई वस्तुओं पर प्रश्न बनाने के लिए संबंधों का उपयोग किया जाता है। रिश्ते द्विदिश हो सकते हैं और संबंध बनाए बिना, वस्तुएं व्यक्तिगत संस्थाएं हैं जिनका मेटाडेटा मॉडल में कोई उपयोग नहीं है।

मेटाडेटा मॉडल में प्रत्येक ऑब्जेक्ट डेटा स्रोत में प्राथमिक या विदेशी कुंजी का उपयोग करके जुड़ा हुआ है। आप व्यावसायिक आवश्यकताओं को पूरा करने के लिए मेटाडेटा मॉडल में संबंध बना या हटा सकते हैं।

अलग-अलग रिश्ते हैं जो संभव हैं, उनमें से कुछ हैं -

  • One to One- जब एक क्वेरी विषय का एक उदाहरण दूसरे उदाहरण से संबंधित होता है। उदाहरण के लिए: प्रत्येक ग्राहक के पास एक ग्राहक आईडी है।

  • One to Many- यह संबंध तब होता है जब क्वेरी विषय का एक उदाहरण कई उदाहरणों से संबंधित होता है। उदाहरण के लिए: प्रत्येक डॉक्टर के पास कई रोगी होते हैं।

  • Many to Many- यह संबंध तब होता है जब किसी क्वेरी विषय के कई उदाहरण कई उदाहरणों से संबंधित होते हैं। उदाहरण के लिए: प्रत्येक रोगी में कई डॉक्टर होते हैं।

कार्डिनैलिटी कॉन्सेप्ट

यह दो क्वेरी विषयों में से प्रत्येक के लिए संबंधित पंक्तियों की संख्या के रूप में परिभाषित किया गया है। कार्डिनलिटी का उपयोग निम्नलिखित तरीकों से किया जाता है -

  • स्टार स्कीमा में लूप जॉइन करता है
  • डेटा स्रोत के लिए अनुकूलित पहुँच
  • डबल काउंटिंग फैक्ट डेटा से बचें

डेटा स्रोत के रूप में रिलेशनल डेटाबेस का उपयोग करते समय, कार्डिनैलिटी को निम्नलिखित नियमों को देखते हुए परिभाषित किया जा सकता है -

  • प्राथमिक और विदेशी कुंजी
  • मेल क्वेरी आइटम नाम विशिष्ट रूप से अनुक्रमित स्तंभों का प्रतिनिधित्व करते हैं
  • क्वेरी आइटम नामों का मिलान करना

कार्डिनैलिटी को परिभाषित करने का सबसे आम तरीका प्राथमिक और विदेशी कुंजी का उपयोग करना है। आयात की गई महत्वपूर्ण जानकारी देखने के लिए, क्वेरी विषय → संपादित परिभाषा पर राइट क्लिक करें। आप डेटा स्रोत से कई रिश्तों, वैकल्पिक संबंधों और बाहरी जुड़ावों के लिए कई आयात कर सकते हैं।

मेटाडेटा मॉडल में संबंध सूचना

फ्रेमवर्क प्रबंधक में, एक संबंध द्वारा दर्शाया गया है Merise notation। इस अंकन का पहला भाग इस संबंध के लिए जुड़ने के प्रकार को दर्शाता है।

  • 0..1 शून्य या एक मैच का प्रतिनिधित्व करता है
  • 1..1 एक से एक मैच का प्रतिनिधित्व करता है
  • 0..n शून्य या कोई मैचों का प्रतिनिधित्व नहीं करता है
  • 1..n एक या अधिक मैचों का प्रतिनिधित्व करता है
  • 1 - दोनों वस्तुओं से सभी मिलान पंक्तियों के साथ एक आंतरिक जुड़ाव।
  • 0 - दोनों से सभी वस्तुओं के साथ एक बाहरी भाग जुड़ता है, जिसमें शामिल नहीं होने वाले आइटम भी शामिल हैं।

संबंध बनाना या संशोधित करना

संबंध बनाने के लिए या तार्किक रूप से संबंधित वस्तुओं को संयोजित करने के लिए जो मेटाडेटा आयात में शामिल नहीं हैं। आप मैन्युअल रूप से वस्तुओं के बीच संबंध बना सकते हैं या चयनित मानदंडों के आधार पर वस्तुओं के बीच संबंध को स्वचालित रूप से परिभाषित कर सकते हैं।

संबंध बनाने के लिए, एक या अधिक क्वेरी आइटम, विषयों या आयामों का चयन करने के लिए CTRL कुंजी का उपयोग करें। फिर जाएंAction Menu → Create Relationship

यदि यह वैध संबंध है, तो फ्रेमवर्क प्रबंधक रिश्ते का शॉर्टकट बनाना चाहता है। फिर आप ओके बटन पर क्लिक कर सकते हैं।

एक बार जब आप मेटाडेटा आयात के बाद संबंध बनाते हैं, तो आप फ्रेमवर्क प्रबंधक में संबंध या कार्डिनैलिटी को भी संशोधित कर सकते हैं।

किसी संबंध को संपादित करने के लिए, एक संबंध और पर क्लिक करें Action menu → click Edit Definition

वहाँ से Relationship Expression tab → Select Query items, Cardinalities and Operators

एक अतिरिक्त जॉइन बनाने के लिए, पर जाएं Relationship Expression tab → New Link and Define New Relationship

इस रिलेशनशिप को परखने के लिए, Relationship SQL tab → rows to be returned → Test

ओके बटन पर क्लिक करें।

एक संबंध शॉर्टकट बनाना

एक रिलेशनशिप शॉर्टकट को मौजूदा रिलेशनशिप के लिए पॉइंटर के रूप में परिभाषित किया जाता है और मौजूदा रिलेशनशिप की परिभाषा को फिर से उपयोग करने के लिए। जब आप स्रोत संबंध में कोई परिवर्तन करते हैं, तो वे स्वतः ही शॉर्टकट में अपडेट हो जाते हैं। रिलेशनशिप शॉर्टकट्स का उपयोग क्वेरी विषयों के बीच अस्पष्ट संबंध को हल करने के लिए भी किया जाता है।

फ्रेमवर्क प्रबंधक पूछते हैं कि क्या आप जब भी संबंध बनाते हैं तो एक संबंध शॉर्टकट बनाना चाहते हैं और ये दोनों स्थितियां सच हैं।

  • नए रिश्ते के लिए कम से कम एक छोर एक शॉर्टकट है।
  • मूल वस्तुओं के बीच एक संबंध मौजूद है।

के लिए जाओ Action Menu → Create Relationship

यदि यह वैध संबंध है, तो फ्रेमवर्क प्रबंधक रिश्ते का शॉर्टकट बनाना चाहता है। YES पर क्लिक करें। एक सूची सभी रिश्तों की दिखाई देती है जिसमें एक छोर एक मॉडल ऑब्जेक्ट है और दूसरा छोर या तो एक अन्य मॉडल ऑब्जेक्ट है या किसी अन्य मॉडल ऑब्जेक्ट का शॉर्टकट है।

ओके पर क्लिक करें।

एक क्वेरी विषय बनाएँ

एक क्वेरी विषय को क्वेरी आइटम के एक सेट के रूप में परिभाषित किया गया है, जिसमें एक अंतर्निहित संबंध है। एक क्वेरी विषय का उपयोग फ्रेमवर्क प्रबंधक का उपयोग करके प्राप्त डेटा को अनुकूलित करने के लिए किया जा सकता है।

एक फ्रेमवर्क प्रबंधक में क्वेरी विषय प्रकार निम्नलिखित हैं -

  • Data Source Query Subject - ये SQL कथनों द्वारा परिभाषित संबंधपरक मेटाडेटा पर आधारित होते हैं और जब आप मॉडल में मेटाडेटा आयात करते हैं तो स्वचालित रूप से प्रत्येक तालिका और दृश्य के लिए बनाए जाते हैं।

    Note - डेटा स्रोत क्वेरी विषय एक बार में केवल एक डेटा स्रोत से डेटा को संदर्भित करता है, लेकिन आप सीधे SQL को संपादित कर सकते हैं जो क्वेरी विषय को संपादित करने के लिए पुनर्प्राप्त डेटा को परिभाषित करता है।

  • Model Query Subjects- वे सीधे डेटा स्रोत से निर्मित नहीं होते हैं, बल्कि अन्य क्वेरी विषयों या आयामों में परिभाषित क्वेरी आइटम पर आधारित होते हैं। मॉडल क्वेरी विषय का उपयोग करते हुए, यह आपको डेटा स्रोत के अधिक सार और व्यावसायिक दृश्य बनाने की अनुमति देता है।

  • Stored Procedure Query Subjects- वे तब बनाए जाते हैं जब एक प्रक्रिया एक रिलेशनल डेटा स्रोत से आयात की जाती है। IBM Cognos फ्रेमवर्क प्रबंधक केवल उपयोगकर्ता परिभाषित संग्रहित प्रक्रियाओं का समर्थन करता है और सिस्टम संग्रहीत कार्यविधियाँ समर्थित नहीं हैं।

डाटा सोर्स क्वेरी सब्जेक्ट कैसे बनाएं?

से Actions Menu → Create → Query Subject

एक नए क्वेरी विषय का नाम दर्ज करें।

पर क्लिक करें Data Source → OK to open new Query Subject wizard

समाप्त बटन प्रकट होने तक चरणों का पालन करें → समाप्त करें

राईट क्लिक करें Query Subject → Edit Definition। पर क्लिक करेंSQL tab → Available database objects box, drag objects to the SQL box

आप एक डेटा स्रोत संदर्भ भी सम्मिलित कर सकते हैं, एक मैक्रो सम्मिलित कर सकते हैं, एक गणना एम्बेड कर सकते हैं और एक फ़िल्टर एम्बेड कर सकते हैं।

सूची से कार्यों का चयन करें और ठीक पर क्लिक करें।

उद्देश्य कार्य
दानेदार नियंत्रण निर्धारक टैब
क्वेरी विषय का परीक्षण करने के लिए टेस्ट टैब
SQL देखने के लिए क्वेरी जानकारी टैब
डेटा स्रोत से सिस्टम तालिकाओं को देखने के लिए सिस्टम ऑब्जेक्ट चेक बॉक्स दिखाएँ

SQL संपादित करें

जब आप किसी संबंधन डेटाबेस स्रोत को संपादित करते हैं, तो संबंध डेटाबेस बनाते हैं या क्वेरी करते हैं, तो SQL का उपयोग पृष्ठभूमि में किया जाता है। आप निम्नलिखित विकल्पों का उपयोग कर सकते हैं -

  • Cognos SQL
  • देशी एसक्यूएल
  • SQL से गुजरें

मॉडल क्वेरी विषय के एसक्यूएल को संपादित करने के लिए, क्वेरी को सूचना सूचना टैब से कॉपी करें और नए डेटा स्रोत क्वेरी विषय पर पेस्ट करें। मॉडल क्वेरी विषय को डेटा स्रोत क्वेरी विषय में परिवर्तित करना संभव है।

  • डेटा स्रोत क्वेरी विषय पर क्लिक करें और Action menu → Edit Definition
  • SQL बटन पर क्लिक करें, ऑब्जेक्ट को खींचें या SQL में टाइप करें जिसे आप चाहते हैं।
  • ओके पर क्लिक करें।

एसक्यूएल का प्रकार बदलें

आप डेटा स्रोत क्वेरी विषय को परिभाषित करते समय उपयोग किए जाने वाले SQL के प्रकार का चयन कर सकते हैं। SQL के प्रकार पर विचार करते समय इन कारकों पर विचार किया जाना चाहिए -

एसक्यूएल प्रकार लाभ हानि
Cognos SQL

अच्छा प्रदर्शन

सभी समर्थित डेटाबेस पर काम करें

गैर मानक SQL समर्थित नहीं है
देशी एसक्यूएल

प्रदर्शन अनुकूलित

डेटाबेस के लिए विशिष्ट

SQL अलग डेटाबेस पर काम नहीं करता है।

आप SQL का उपयोग नहीं कर सकते हैं जो डेटा स्रोत उपकेंद्रों के लिए समर्थन नहीं करता है।

SQL से गुजरें डेटाबेस द्वारा समर्थित कोई SQL

फ्रेमवर्क के लिए कोई विकल्प नहीं

अनुकूलन करने के लिए प्रबंधक

स्वचालित रूप से प्रदर्शन

यह भी ध्यान दें कि OLAP डेटा स्रोतों के आधार पर क्वेरी विषयों के लिए SQL के प्रकार को बदलना संभव नहीं है।

SQL प्रकार को बदलने के लिए, उस क्वेरी विषय पर जाएं जिसे आप बदलना चाहते हैं।

के लिए जाओ Actions menu → Edit Definition and go to Query Information button

के लिए जाओ Options → SQL Settings tab

SQL के प्रकार को बदलने के लिए, SQL टाइप सूची पर क्लिक करें। फिर, ठीक पर क्लिक करें।