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

राउटर रूपांतरण क्या है?
राउटर ट्रांसफॉर्मेशन एक सक्रिय और कनेक्टेड ट्रांसफॉर्मेशन है जो फिल्टर ट्रांसफॉर्मेशन के समान है, जिसका उपयोग स्रोत डेटा को फिल्टर करने के लिए किया जाता है।
फ़िल्टरिंग के अलावा, एक अतिरिक्त सुविधा यह भी है कि हटाए गए डेटा (फ़िल्टर किए गए डेटा) को भी मानचित्र में एकत्र किया जा सकता है।pingसाथ ही, कई फ़िल्टर शर्तों को लागू करके डेटा के कई सेट प्राप्त किए जा सकते हैं।
उदाहरण के लिए, जब हम deptno = 10 के लिए डेटा को फ़िल्टर करते हैं, तो हमें वे रिकॉर्ड भी मिल सकते हैं जहाँ deptno 10 के बराबर नहीं है। इसलिए, राउटर ट्रांसफ़ॉर्मेशन कई आउटपुट समूह देता है, और प्रत्येक आउटपुट समूह की अपनी फ़िल्टर शर्त हो सकती है।
इसके अतिरिक्त एक डिफ़ॉल्ट समूह भी है। इस डिफ़ॉल्ट समूह में वे रिकॉर्ड सेट होते हैं जो समूह की किसी भी शर्त को पूरा नहीं करते हैं। उदाहरण के लिए, यदि आपने फ़िल्टर शर्तों deptno=10 और deptno=20 के लिए दो समूह बनाए हैं, तो वे रिकॉर्ड जिनमें deptno 10 और 20 नहीं हैं, इस डिफ़ॉल्ट समूह में शामिल किए जाएंगे।
संक्षेप में, फ़िल्टर समूहों द्वारा अस्वीकृत डेटा को इस डिफ़ॉल्ट समूह द्वारा एकत्र किया जाएगा, और कभी-कभी इस अस्वीकृत डेटा को संग्रहीत करने की आवश्यकता हो सकती है। ऐसे परिदृश्यों में, डिफ़ॉल्ट आउटपुट समूह उपयोगी हो सकता है।
एकाधिक फ़िल्टर शर्तों की अनुमति देने के लिए, राउटर ट्रांसफ़ॉर्मेशन समूह विकल्प प्रदान करता है।
- इसमें एक डिफ़ॉल्ट इनपुट समूह है जो इनपुट डेटा स्वीकार करता है।
- इसमें एक डिफ़ॉल्ट आउटपुट समूह भी है जो उन सभी डेटा को प्रदान करता है जो किसी भी फ़िल्टर शर्त द्वारा पारित नहीं होते हैं।
- प्रत्येक फ़िल्टर शर्त के लिए, राउटर ट्रांसफ़ॉर्मेशन में एक आउटपुट समूह बनाया जाता है। आप इन विभिन्न समूहों से अलग-अलग लक्ष्यों को जोड़ सकते हैं।
राउटर रूपांतरण के घटक
नक्शा बनाने से पहलेpingयह जानना उपयोगी होगा कि डिज़ाइनर आपके लिए चार भाग बनाता है। एक राउटर ट्रांसफॉर्मेशन में एक इनपुट समूह, आउटपुट समूहों का एक सेट, उनके अंदर के पोर्ट और वे शर्तें शामिल होती हैं जो यह तय करती हैं कि प्रत्येक पंक्ति कहाँ जाएगी।
| घटक | यह क्या करता है |
|---|---|
| इनपुट समूह | रूपांतरण के लिए एकमात्र प्रवेश बिंदु। आउटपुट समूहों की संख्या चाहे कितनी भी हो, प्रत्येक आने वाली पंक्ति यहाँ केवल एक बार पहुँचती है। |
| उपयोगकर्ता-परिभाषित आउटपुट समूह | एक समूह जिसे आप स्वयं बनाते और नाम देते हैं, जैसे कि deptno_20। प्रत्येक समूह की अपनी एक फ़िल्टर शर्त होती है। |
| डिफ़ॉल्ट आउटपुट समूह | पहला उपयोगकर्ता-परिभाषित समूह बनते ही यह स्वतः बन जाता है। इसमें कोई फ़िल्टर शर्त नहीं होती और इसे संपादित या हटाया नहीं जा सकता। |
| समूह फ़िल्टर स्थिति | एक्सप्रेशन एडिटर में लिखा गया एक बूलियन एक्सप्रेशन। जिन पंक्तियों के लिए इसका मान TRUE होता है, वे उस समूह से होकर गुजरती हैं। |
डिजाइनर इनपुट समूह से पोर्ट परिभाषाओं को प्रत्येक आउटपुट समूह में कॉपी करता है, इसलिए पोर्ट को समूह दर समूह पुनः बनाने की आवश्यकता नहीं होती है। इस डिजाइन से दो नियम निकलते हैं:
- पंक्तियों को दोहराया जा सकता है। यदि कोई पंक्ति एक से अधिक समूह फ़िल्टर शर्तों को पूरा करती है, तो उसे मिलान करने वाले प्रत्येक समूह को एक बार भेजा जाता है। यही कारण है कि लक्ष्य में स्रोत की तुलना में अधिक पंक्तियाँ होती हैं।
- पंक्तियों को हटाया जा सकता है। यदि डिफ़ॉल्ट समूह को कनेक्ट नहीं किया जाता है, तो उस तक पहुंचने वाली पंक्तियाँ पाइपलाइन से गायब हो जाती हैं, जो अवांछित डेटा को हटाने का सबसे तेज़ तरीका है।
राउटर ट्रांसफॉर्मेशन बनाम फ़िल्टर ट्रांसफॉर्मेशन
दोनों ऑब्जेक्ट किसी शर्त के आधार पर डेटा का परीक्षण करते हैं, और दोनों ही सक्रिय रूपांतरण हैं, इसलिए उनके बीच चुनाव इस बात पर निर्भर करता है कि कितनी शर्तें शामिल हैं और क्या अस्वीकृत पंक्तियाँ मायने रखती हैं।
| तुलना का बिंदु | फ़िल्टर रूपांतरण | राउटर रूपांतरण |
|---|---|---|
| प्रति वस्तु शर्तें | एक | एक या अनेक, प्रत्येक अपने-अपने समूह में |
| अस्वीकृत पंक्तियाँ | हटा दिया गया और अनुपलब्ध | डिफ़ॉल्ट समूह में एकत्रित |
| आउटपुट समूह | एक एकल आउटपुट पाइपलाइन | प्रत्येक समूह के लिए एक पाइपलाइन, साथ ही डिफ़ॉल्ट समूह |
| स्रोत पढ़ता है | जब स्थितियां एक दूसरे से जुड़ी हों तो प्रति फ़िल्टर एक ही बार पढ़ा जाएगा। | सभी स्थितियों के लिए एक ही पाठ |
| विशिष्ट उपयोग | उन पंक्तियों को हटाना जिनकी कभी आवश्यकता नहीं होती | एक स्रोत को कई लक्ष्यों में विभाजित करना |
फ़िल्टर ट्रांसफ़ॉर्मेशन के साथ तीन स्थितियों का परीक्षण करने का मतलब है तीन ऑब्जेक्ट, और एक चेन्ड डिज़ाइन में समान स्रोत पंक्तियों का बार-बार मूल्यांकन किया जाता है। एक राउटर एक ही पास में वही काम करता है, इसलिए दूसरी स्थिति आने पर यह आमतौर पर अधिक कुशल विकल्प होता है। एक साधारण स्थिति के लिए, सरल तरीका बेहतर है। फ़िल्टर रूपांतरण अभी भी बेहतर विकल्प है।
इनफॉर्मेटिका में राउटर ट्रांसफॉर्मेशन कैसे बनाएं
नीचे दिए गए निर्देश में एक राउटर बनाने का तरीका बताया गया है जो विभाग 20 के कर्मचारियों को एक लक्ष्य तालिका में भेजता है। मानचित्र में दिए गए नौ चरणों का क्रमानुसार पालन करें।ping डिजाइनर।
चरण 1) बनाओ नक्शाping स्रोत "EMP" और लक्ष्य "EMP_TARGET" वाला मानचित्र।ping डिजाइनर कैनवास में स्रोत परिभाषा, उसका स्रोत क्वालिफायर और लक्ष्य परिभाषा होती है, जैसा कि नीचे दिखाया गया है।
चरण 2) फिर मानचित्र मेंping
- परिवर्तन मेनू चुनें
- बनाएँ विकल्प चुनें
अगले स्क्रीनशॉट में विजार्ड को शुरू करने के लिए उपयोग किए जाने वाले मेनू पथ को हाइलाइट किया गया है।
चरण 3) परिवर्तन निर्माण विंडो में
- राउटर रूपांतरण का चयन करें
- परिवर्तन के लिए एक नाम दर्ज करें “rtr_deptno_10”
- बनाएँ विकल्प चुनें
चरण 4) राउटर ट्रांसफॉर्मेशन मैप में बनाया जाएगाpingविंडो में 'हो गया' विकल्प चुनें। दोनों चरणों में उपयोग की जाने वाली 'रूपांतरण बनाएं' विंडो नीचे दिखाई गई है।
चरण 5) सभी स्तंभों को खींचें और छोड़ें स्रोत क्वालीफायर राउटर रूपांतरण के लिए। जैसा कि स्क्रीनशॉट में दिखाया गया है, अब प्रत्येक पोर्ट नए ऑब्जेक्ट से जुड़ा हुआ है।
चरण 6) Double राउटर ट्रांसफॉर्मेशन पर क्लिक करें, फिर उसके ट्रांसफॉर्मेशन प्रॉपर्टी में जाएं।
- समूह टैब चुनें
- समूह का नाम “deptno_20” दर्ज करें
- समूह फ़िल्टर शर्त पर क्लिक करें
इसके बाद, नए जोड़े गए समूह के साथ समूह टैब दिखाया गया है।
चरण 7) एक्सप्रेशन एडिटर में, फ़िल्टर कंडीशन deptno=20 दर्ज करें और ओके बटन चुनें। इस कंडीशन वाला एडिटर नीचे दिखाया गया है।
चरण 8) ग्रुप विंडो में ओके बटन चुनें। अब ग्रुप के सामने शर्त दिखाई देगी, जैसा कि अगले स्क्रीनशॉट में दिखाया गया है।
चरण 9) राउटर ट्रांसफॉर्मेशन के ग्रुप deptno_20 के पोर्ट्स को टारगेट टेबल पोर्ट्स से कनेक्ट करें। तैयार मैपping यह स्रोत से समूह के माध्यम से EMP_TARGET तक चलता है।
अब, जब आप इस मैप को निष्पादित करते हैंping, फ़िल्टर किए गए रिकॉर्ड लक्ष्य तालिका में लोड हो जाएंगे।
राउटर ट्रांसफॉर्मेशन के सर्वोत्तम अभ्यास और सामान्य त्रुटियाँ
नक्शाping ऊपर दिए गए बिंदु एक समूह का उपयोग करते हैं, जो बाद में सहायता टिकटों का कारण बनने वाले अधिकांश व्यवहार को छिपा देता है। नीचे दिए गए बिंदु बताते हैं कि दूसरा समूह बनने पर क्या परिवर्तन होते हैं।
- दोहराई गई पंक्तियों पर ध्यान दें। समूह की शर्तें परस्पर अनन्य नहीं हैं। एक समूह में sal>1000 और दूसरे समूह में deptno=20 लिखने का मतलब है कि दोनों शर्तों से मेल खाने वाले कर्मचारी को दो बार दर्ज किया जाएगा। शर्तों को अनन्य बनाएं, या जानबूझकर दोहराव को स्वीकार करें।
- अस्वीकृतियों के मामले में डिफ़ॉल्ट समूह से जुड़ें। वे पंक्तियाँ जो किसी भी शर्त को पूरा नहीं करतीं, तब तक नष्ट हो जाती हैं जब तक कि डिफ़ॉल्ट समूह को किसी लक्ष्य या अस्वीकृत फ़ाइल से नहीं जोड़ा जाता। ऑडिट करने योग्य लोड आमतौर पर उन्हें बनाए रखते हैं।
- समूहों का नाम नियम के आधार पर रखें, लक्ष्य के आधार पर नहीं। उदाहरण के तौर पर, समूह deptno_20 स्पष्ट रूप से पढ़ा जा सकता है; लेकिन group1 नामक समूह स्पष्ट रूप से नहीं पढ़ा जा सकता। ध्यान दें कि इस व्याख्या में रूपांतरण को rtr_deptno_10 नाम दिया गया है, जबकि समूह deptno 20 पर फ़िल्टर करता है, जो नामकरण मानक द्वारा रोके जाने वाले विसंगति का सटीक उदाहरण है।
- जहां संभव हो, रूटिंग से पहले फ़िल्टर करें। जिन पंक्तियों को कोई भी समूह कभी नहीं चाहेगा, उन्हें राउटर में ले जाने की तुलना में सोर्स क्वालिफायर क्वेरी में हटाना सस्ता होता है।
- राउटर को जॉइन के रूप में न मानें। यह एक पाइपलाइन को कई भागों में विभाजित करता है। शाखाओं को वापस जोड़ने के लिए यूनियन ट्रांसफॉर्मेशन की आवश्यकता होती है, और दो अलग-अलग स्रोतों को संयोजित करने के लिए... जॉइनर परिवर्तन.
जिस समूह की शर्त TRUE या FALSE के बजाय NULL लौटाती है, उसे मेल न खाने वाला माना जाता है, इसलिए परीक्षण किए गए कॉलम में NULL मान वाली पंक्तियाँ डिफ़ॉल्ट समूह में चली जाती हैं। शर्त में NULL को स्पष्ट रूप से संभालने से परीक्षण के दौरान इस अप्रत्याशित समस्या से बचा जा सकता है। प्रदर्शन सुधारना और परीक्षण.








