उदाहरण के साथ Informatica में जॉइनर परिवर्तन
⚡ स्मार्ट सारांश
इनफॉर्मेटिका में जॉइनर ट्रांसफॉर्मेशन एक सक्रिय, कनेक्टेड ऑब्जेक्ट है जो एक मिलान शर्त पर दो विषम स्रोतों को जोड़ता है, मास्टर पाइपलाइन को मेमोरी में कैश करता है जबकि डिटेल पाइपलाइन इसके माध्यम से स्ट्रीम होती है।

जॉइनर ट्रांसफॉर्मेशन क्या है?
जॉइनर ट्रांसफॉर्मेशन एक सक्रिय और कनेक्टेड ट्रांसफॉर्मेशन है जो आपको इन्फॉर्मेटिका में जॉइन बनाने का विकल्प प्रदान करता है। जॉइनर ट्रांसफॉर्मेशन का उपयोग करके बनाए गए जॉइन डेटाबेस में जॉइन के समान होते हैं। जॉइनर ट्रांसफॉर्मेशन का लाभ यह है कि विभिन्न डेटाबेस (हेटेरोजेनियस सिस्टम) के लिए जॉइन बनाए जा सकते हैं।
जॉइनर ट्रांसफॉर्मेशन में, जॉइन के लिए हम दो स्रोतों का उपयोग करेंगे। इन दो स्रोतों को कहा जाता है
- मास्टर स्रोत
- विस्तृत स्रोत
जॉइनर ट्रांसफॉर्मेशन की प्रॉपर्टीज़ में, आप यह चुन सकते हैं कि कौन सा डेटा स्रोत मास्टर हो सकता है और कौन सा स्रोत डिटेल स्रोत हो सकता है।
निष्पादन के दौरान, मास्टर स्रोत को जॉइनिंग के उद्देश्य से मेमोरी में कैश किया जाता है। इसलिए, कम रिकॉर्ड वाले स्रोत को मास्टर स्रोत के रूप में चुनना उचित है। मास्टर पाइपलाइन को दो कैश में रखा जाता है: जॉइन कंडीशन में उपयोग किए गए मानों के लिए एक इंडेक्स कैश और शेष पंक्ति डेटा के लिए एक डेटा कैश।
जॉइनर ट्रांसफॉर्मेशन में जॉइन के प्रकार
प्रॉपर्टीज़ टैब पर मौजूद जॉइन टाइप प्रॉपर्टी यह तय करती है कि जिन पंक्तियों का कोई मिलान नहीं मिलता, उनके साथ क्या होगा। जॉइनर ट्रांसफॉर्मेशन का उपयोग करके निम्नलिखित जॉइन बनाए जा सकते हैं।
- मास्टर बाहरी जोड़ – मास्टर आउटर जॉइन में, डिटेल सोर्स के सभी रिकॉर्ड जॉइन द्वारा वापस किए जाते हैं और मास्टर सोर्स से केवल मेल खाने वाली पंक्तियाँ ही वापस की जाती हैं।
- बाहरी जोड़ का विवरण – डिटेल आउटर जॉइन में, डिटेल सोर्स से केवल मेल खाने वाली पंक्तियाँ ही वापस की जाती हैं, और मास्टर सोर्स से सभी पंक्तियाँ वापस की जाती हैं।
- पूर्ण बाहरी जुड़ाव – फुल आउटर जॉइन में, दोनों स्रोतों से सभी रिकॉर्ड वापस किए जाते हैं।
- सामान्य जुड़ाव – सामान्य जॉइन में, दोनों स्रोतों से केवल मेल खाने वाली पंक्तियाँ ही वापस की जाती हैं।
मास्टर आउटर और डिटेल आउटर जॉइंट्स, लेफ्ट आउटर जॉइंट्स के समतुल्य होते हैं। एसक्यूएलप्रत्येक प्रकार एक स्रोत की सभी पंक्तियों को रखता है और दूसरे स्रोत से केवल मिलान किए गए मानों को ही रखता है। नीचे दी गई तालिका में चारों प्रकारों को उनके SQL समकक्षों के साथ दर्शाया गया है।
| सम्मिलित प्रकार | मास्टर से पंक्तियों को अलग रखा गया | पंक्तियों को विवरण से अलग रखा गया है | SQL समकक्ष |
|---|---|---|---|
| सामान्य जुड़ाव | केवल मिलान करें | केवल मिलान करें | आंतरिक रूप से जुड़ा |
| मास्टर बाहरी जोड़ | केवल मिलान करें | सभी पंक्तियाँ | विवरण स्रोत पर बायां बाहरी जोड़ |
| बाहरी जोड़ का विवरण | सभी पंक्तियाँ | केवल मिलान करें | मास्टर स्रोत पर बायां बाहरी जोड़ |
| पूर्ण बाहरी जुड़ाव | सभी पंक्तियाँ | सभी पंक्तियाँ | पूर्ण बाहरी जुड़ाव |
जॉइन टाइप एक प्रॉपर्टी है, संरचनात्मक विकल्प नहीं, इसलिए इसे मैप को दोबारा बनाए बिना बाद में बदला जा सकता है।ping या किसी भी पोर्ट को पुनः लिंक करना।
इनफॉर्मेटिका में जॉइनर ट्रांसफॉर्मेशन का उपयोग कैसे करें
इस उदाहरण में, हम जॉइनर ट्रांसफॉर्मेशन का उपयोग करके emp और dept टेबल को जोड़ेंगे। नीचे दिए गए मैप में आठ चरणों का पालन करें।ping डिजाइनर।
चरण 1) नीचे दिए गए स्क्रिप्ट का उपयोग करके डेटाबेस में EMP_DEPTNAME नामक एक नई लक्ष्य तालिका बनाएं और उस तालिका को इन्फॉर्मेटिका लक्ष्यों में आयात करें।
उपरोक्त emp_deptname.sql फ़ाइल डाउनलोड करें
चरण 2) कोई नया बनाएं नक्शाping और स्रोत तालिकाओं "EMP" और "DEPT" तथा लक्ष्य तालिका (जिसे हमने पिछले चरण में बनाया था) को आयात करें। अब तीनों परिभाषाएँ कैनवास पर मौजूद हैं, जैसा कि नीचे दिखाया गया है।
चरण 3) ट्रांसफॉर्मेशन मेनू से, क्रिएट विकल्प चुनें। फिर नीचे दिखाए गए क्रिएट ट्रांसफॉर्मेशन विंडो में,
- जॉइनर परिवर्तन का चयन करें
- परिवर्तन नाम “jnr_emp_dept” दर्ज करें
- बनाएँ विकल्प चुनें
चरण 4) दोनों तरफ से सभी कॉलम खींचें और छोड़ें स्रोत योग्यताकर्ता जॉइनर ट्रांसफॉर्मेशन के लिए। जैसा कि स्क्रीनशॉट में दिखाया गया है, दोनों पाइपलाइन अब jnr_emp_dept से जुड़ी हुई हैं।
चरण 5) Double जॉइनर ट्रांसफॉर्मेशन पर क्लिक करें, फिर एडिट ट्रांसफॉर्मेशन विंडो में जाएं।
- शर्त टैब चुनें
- नई शर्त जोड़ें आइकन पर क्लिक करें
- मास्टर और विवरण कॉलम सूची में विभाग संख्या का चयन करें
कंडीशन टैब में अब deptno पर सिंगल जॉइन कंडीशन है।
चरण 6) फिर उसी विंडो में
- गुण टैब चुनें
- जॉइन प्रकार के रूप में नॉर्मल जॉइन चुनें
- ओके बटन चुनें
इसके बाद, जॉइन टाइप सेट के साथ प्रॉपर्टीज़ टैब दिखाया गया है।
प्रदर्शन को बेहतर बनाने के लिए, हम मास्टर स्रोत को उस स्रोत तालिका पाइपलाइन को सौंपते हैं जिसमें कम रिकॉर्ड होते हैं। इस कार्य को करने के लिए:
चरण 7) Double जॉइनर ट्रांसफॉर्मेशन पर क्लिक करके एडिट ट्रांसफॉर्मेशन विंडो खोलें, और फिर
- पोर्ट टैब चुनें
- किसी विशेष स्रोत के किसी भी कॉलम का चयन करें जिसे आप मास्टर बनाना चाहते हैं
- चयन ठीक है
पोर्ट्स टैब चयनित पाइपलाइन को मास्टर के रूप में चिह्नित करता है, जैसा कि नीचे दिखाया गया है।
चरण 8) जॉइनर ट्रांसफॉर्मेशन से संबंधित कॉलम को लक्ष्य तालिका से लिंक करें। मैपping अब यह दोनों स्रोतों से EMP_DEPTNAME में शामिल होकर चलता है।
अब मानचित्र को सहेजेंping और इसे बनाने के बाद निष्पादित करें सत्र और वर्कफ़्लो इसके लिए, इनफॉर्मेटिका जॉइनर का उपयोग करके जॉइन बनाया जाएगा, और दोनों तालिकाओं से प्रासंगिक विवरण प्राप्त किए जाएंगे।
जॉइनर रूपांतरण गुण
प्रॉपर्टीज़ टैब में जॉइन टाइप से कहीं अधिक जानकारी होती है। नीचे दी गई सेटिंग्स यह नियंत्रित करती हैं कि जॉइन कितनी मेमोरी का उपयोग करता है और कैश फ़ाइलें कहाँ लिखी जाती हैं।
| की स्थापना | यह क्या नियंत्रित करता है? |
|---|---|
| जॉइन टाइप | नॉर्मल, मास्टर आउटर, डिटेल आउटर या फुल आउटर। यह तय करता है कि किन बेमेल पंक्तियों को रखा जाएगा। |
| शामिल होने की शर्त | मास्टर-टू-डिटेल पोर्ट युग्मों की सूची की तुलना इक्वल ऑपरेटर का उपयोग करके की जाती है। कई शर्तों को AND का उपयोग करके संयोजित किया जाता है। |
| क्रमबद्ध इनपुट | यह घोषित करता है कि दोनों पाइपलाइन पहले से ही पोर्ट की स्थिति के अनुसार क्रमबद्ध होकर आती हैं, जिससे एकीकरण सेवा डिस्क इनपुट और आउटपुट को कम कर सकती है। |
| मास्टर सॉर्ट ऑर्डर | मुख्य स्रोत डेटा का सॉर्ट क्रम, सॉर्ट किए गए इनपुट के साथ उपयोग किया जाता है। |
| कैश निर्देशिका | वह निर्देशिका जिसमें इंडेक्स और डेटा कैश फाइलें बनाई जाती हैं। डिफ़ॉल्ट मान $PMCacheDir प्रोसेस वेरिएबल है। |
| जॉइनर डेटा कैश आकार | मास्टर रो डेटा को रखने वाले डेटा कैश का आकार। डिफ़ॉल्ट मान ऑटो है, जिससे इंटीग्रेशन सर्विस इसे निर्धारित कर सकती है। |
| जॉइनर इंडेक्स कैश आकार | मास्टर कंडीशन वैल्यू को रखने वाले इंडेक्स कैश का आकार। डिफ़ॉल्ट मान ऑटो है। |
| परिवर्तन का दायरा | यह जॉइन प्रत्येक लेनदेन पर, सभी आने वाले डेटा पर, या पंक्ति-स्तर के दायरे पर लागू होता है। |
सॉर्टेड इनपुट वह सेटिंग है जिसे सबसे पहले अपनाना चाहिए। जब दोनों पाइपलाइनें कंडीशन पोर्ट्स द्वारा क्रमबद्ध रूप में आती हैं, तो इंटीग्रेशन सर्विस को मिलान शुरू होने से पहले पूरे मास्टर सोर्स को रखने की आवश्यकता नहीं होती है, जो कि वही सिद्धांत है जो इसके दौरान लागू होता है। प्रदर्शन सुधारना अन्य कैश्ड रूपांतरणों का।
जॉइनर रूपांतरण नियम और सीमाएँ
कुछ प्रतिबंध तभी सामने आते हैं जब मानचित्रping इसकी पुष्टि हो चुकी है, इसलिए पोर्ट को लिंक करने से पहले इनके बारे में जानना सस्ता पड़ता है।
- केवल समानता। एक जॉइन कंडीशन में पोर्ट्स की तुलना इक्वल्स ऑपरेटर से की जाती है। ग्रेटर देन, लेस देन या नॉट इक्वल टू जैसे तुलनात्मक ऑपरेटर इस कंडीशन में स्वीकार्य नहीं हैं।
- डेटा प्रकारों का मिलान। किसी भी स्थिति में दोनों पोर्ट का डेटाटाइप समान होना चाहिए। डिज़ाइनर इसकी पुष्टि करता है, इसलिए बेमेल कॉलम को पहले परिवर्तित करना पड़ता है, आमतौर पर एक्सप्रेशन ट्रांसफॉर्मेशन में।
- अपस्ट्रीम में कोई अपडेट रणनीति नहीं है। जब किसी भी इनपुट पाइपलाइन में अपडेट स्ट्रेटेजी ट्रांसफॉर्मेशन मौजूद हो, तो जॉइनर ट्रांसफॉर्मेशन का उपयोग नहीं किया जा सकता है।
- कोई अनुक्रम नहीं Generator ठीक उससे पहले। एक अनुक्रम को जोड़ना Generator जॉइनर से ठीक पहले की ओर होने वाला रूपांतरण समर्थित नहीं है।
- कैशिंग को बंद नहीं किया जा सकता है। मास्टर पाइपलाइन हमेशा कैश की जाती है, यही कारण है कि छोटा स्रोत मास्टर साइड पर होता है और बड़े जॉइन पर कैश साइजिंग मायने रखती है।
तीन स्रोतों को जोड़ने के लिए दो जॉइनर ट्रांसफॉर्मेशन की आवश्यकता होती है, क्योंकि प्रत्येक ट्रांसफॉर्मेशन केवल एक मास्टर और एक डिटेल पाइपलाइन को स्वीकार करता है। जहाँ दूसरा स्रोत एक छोटी संदर्भ तालिका है जिसे पंक्ति दर पंक्ति पढ़ा जाता है, वहाँ एक लुकअप रूपांतरण अक्सर सरल डिजाइन ही बेहतर होता है।







