इन्फॉर्मेटिका में राउटर रूपांतरण: एकाधिक स्थितियों का उदाहरण

⚡ स्मार्ट सारांश

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

  • 🔀 कई स्थितियाँ: एक राउटर कई स्थितियों का एक ही बार में परीक्षण करके फ़िल्टर रूपांतरणों की एक श्रृंखला को प्रतिस्थापित करता है।
  • 📦 समूह संरचना: एक ही इनपुट समूह उपयोगकर्ता द्वारा परिभाषित आउटपुट समूहों के साथ-साथ एक स्वचालित डिफ़ॉल्ट समूह को डेटा प्रदान करता है।
  • 🗃️ डिफ़ॉल्ट समूह: वे पंक्तियाँ जो हर शर्त को पूरा नहीं करतीं, यहाँ पहुँचती हैं, इसलिए अस्वीकृत डेटा को खोने के बजाय अभी भी कैप्चर किया जा सकता है।
  • 🧪 उदाहरण सहित: deptno=20 की शर्त वाला deptno_20 नामक समूह EMP_TARGET में केवल विभाग 20 की पंक्तियों को लोड करता है।
  • ♻️ ओवरलैपping नियम: दो शर्तों को पूरा करने वाली पंक्ति को प्रत्येक मिलान वाले आउटपुट समूह में एक बार भेजा जाता है।
  • क्षमता: स्रोत को केवल एक बार पढ़ा जाता है, जिससे एक राउटर कई फ़िल्टर रूपांतरणों की तुलना में सस्ता हो जाता है जो समान पंक्तियों को पढ़ते हैं।

इन्फॉर्मेटिका में राउटर रूपांतरण

राउटर रूपांतरण क्या है?

राउटर ट्रांसफॉर्मेशन एक सक्रिय और कनेक्टेड ट्रांसफॉर्मेशन है जो फिल्टर ट्रांसफॉर्मेशन के समान है, जिसका उपयोग स्रोत डेटा को फिल्टर करने के लिए किया जाता है।

फ़िल्टरिंग के अलावा, एक अतिरिक्त सुविधा यह भी है कि हटाए गए डेटा (फ़िल्टर किए गए डेटा) को भी मानचित्र में एकत्र किया जा सकता है।pingसाथ ही, कई फ़िल्टर शर्तों को लागू करके डेटा के कई सेट प्राप्त किए जा सकते हैं।

उदाहरण के लिए, जब हम deptno = 10 के लिए डेटा को फ़िल्टर करते हैं, तो हमें वे रिकॉर्ड भी मिल सकते हैं जहाँ deptno 10 के बराबर नहीं है। इसलिए, राउटर ट्रांसफ़ॉर्मेशन कई आउटपुट समूह देता है, और प्रत्येक आउटपुट समूह की अपनी फ़िल्टर शर्त हो सकती है।

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

संक्षेप में, फ़िल्टर समूहों द्वारा अस्वीकृत डेटा को इस डिफ़ॉल्ट समूह द्वारा एकत्र किया जाएगा, और कभी-कभी इस अस्वीकृत डेटा को संग्रहीत करने की आवश्यकता हो सकती है। ऐसे परिदृश्यों में, डिफ़ॉल्ट आउटपुट समूह उपयोगी हो सकता है।

एकाधिक फ़िल्टर शर्तों की अनुमति देने के लिए, राउटर ट्रांसफ़ॉर्मेशन समूह विकल्प प्रदान करता है।

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

राउटर रूपांतरण के घटक

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

घटक यह क्या करता है
इनपुट समूह रूपांतरण के लिए एकमात्र प्रवेश बिंदु। आउटपुट समूहों की संख्या चाहे कितनी भी हो, प्रत्येक आने वाली पंक्ति यहाँ केवल एक बार पहुँचती है।
उपयोगकर्ता-परिभाषित आउटपुट समूह एक समूह जिसे आप स्वयं बनाते और नाम देते हैं, जैसे कि deptno_20। प्रत्येक समूह की अपनी एक फ़िल्टर शर्त होती है।
डिफ़ॉल्ट आउटपुट समूह पहला उपयोगकर्ता-परिभाषित समूह बनते ही यह स्वतः बन जाता है। इसमें कोई फ़िल्टर शर्त नहीं होती और इसे संपादित या हटाया नहीं जा सकता।
समूह फ़िल्टर स्थिति एक्सप्रेशन एडिटर में लिखा गया एक बूलियन एक्सप्रेशन। जिन पंक्तियों के लिए इसका मान TRUE होता है, वे उस समूह से होकर गुजरती हैं।

डिजाइनर इनपुट समूह से पोर्ट परिभाषाओं को प्रत्येक आउटपुट समूह में कॉपी करता है, इसलिए पोर्ट को समूह दर समूह पुनः बनाने की आवश्यकता नहीं होती है। इस डिजाइन से दो नियम निकलते हैं:

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

राउटर ट्रांसफॉर्मेशन बनाम फ़िल्टर ट्रांसफॉर्मेशन

दोनों ऑब्जेक्ट किसी शर्त के आधार पर डेटा का परीक्षण करते हैं, और दोनों ही सक्रिय रूपांतरण हैं, इसलिए उनके बीच चुनाव इस बात पर निर्भर करता है कि कितनी शर्तें शामिल हैं और क्या अस्वीकृत पंक्तियाँ मायने रखती हैं।

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

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

इनफॉर्मेटिका में राउटर ट्रांसफॉर्मेशन कैसे बनाएं

नीचे दिए गए निर्देश में एक राउटर बनाने का तरीका बताया गया है जो विभाग 20 के कर्मचारियों को एक लक्ष्य तालिका में भेजता है। मानचित्र में दिए गए नौ चरणों का क्रमानुसार पालन करें।ping डिजाइनर।

चरण 1) बनाओ नक्शाping स्रोत "EMP" और लक्ष्य "EMP_TARGET" वाला मानचित्र।ping डिजाइनर कैनवास में स्रोत परिभाषा, उसका स्रोत क्वालिफायर और लक्ष्य परिभाषा होती है, जैसा कि नीचे दिखाया गया है।

नक्शाping डिजाइनर कैनवास जिसमें ईएमपी स्रोत, उसका स्रोत क्वालिफायर और ईएमपी_टारगेट लक्ष्य परिभाषा शामिल है।

चरण 2) फिर मानचित्र मेंping

  1. परिवर्तन मेनू चुनें
  2. बनाएँ विकल्प चुनें

अगले स्क्रीनशॉट में विजार्ड को शुरू करने के लिए उपयोग किए जाने वाले मेनू पथ को हाइलाइट किया गया है।

मैप में ट्रांसफॉर्मेशन मेनू खुल गया।ping क्रिएट विकल्प चयनित डिज़ाइनर

चरण 3) परिवर्तन निर्माण विंडो में

  1. राउटर रूपांतरण का चयन करें
  2. परिवर्तन के लिए एक नाम दर्ज करें “rtr_deptno_10”
  3. बनाएँ विकल्प चुनें

चरण 4) राउटर ट्रांसफॉर्मेशन मैप में बनाया जाएगाpingविंडो में 'हो गया' विकल्प चुनें। दोनों चरणों में उपयोग की जाने वाली 'रूपांतरण बनाएं' विंडो नीचे दिखाई गई है।

चयनित राउटर और rtr_deptno_10 नाम के साथ ट्रांसफॉर्मेशन विंडो बनाएं।

चरण 5) सभी स्तंभों को खींचें और छोड़ें स्रोत क्वालीफायर राउटर रूपांतरण के लिए। जैसा कि स्क्रीनशॉट में दिखाया गया है, अब प्रत्येक पोर्ट नए ऑब्जेक्ट से जुड़ा हुआ है।

सभी सोर्स क्वालिफायर कॉलम को rtr_deptno_10 राउटर ट्रांसफॉर्मेशन में ड्रैग किया गया।

चरण 6) Double राउटर ट्रांसफॉर्मेशन पर क्लिक करें, फिर उसके ट्रांसफॉर्मेशन प्रॉपर्टी में जाएं।

  1. समूह टैब चुनें
  2. समूह का नाम “deptno_20” दर्ज करें
  3. समूह फ़िल्टर शर्त पर क्लिक करें

इसके बाद, नए जोड़े गए समूह के साथ समूह टैब दिखाया गया है।

राउटर ट्रांसफॉर्मेशन के ग्रुप्स टैब में उपयोगकर्ता-परिभाषित समूह deptno_20 जोड़ा गया है।

चरण 7) एक्सप्रेशन एडिटर में, फ़िल्टर कंडीशन deptno=20 दर्ज करें और ओके बटन चुनें। इस कंडीशन वाला एडिटर नीचे दिखाया गया है।

एक्सप्रेशन एडिटर में deptno_20 समूह के लिए समूह फ़िल्टर शर्त deptno=20 लागू है।

चरण 8) ग्रुप विंडो में ओके बटन चुनें। अब ग्रुप के सामने शर्त दिखाई देगी, जैसा कि अगले स्क्रीनशॉट में दिखाया गया है।

एडिट ट्रांसफॉर्मेशन विंडो में deptno_20 समूह के लिए समूह फ़िल्टर शर्त सहेजी गई है।

चरण 9) राउटर ट्रांसफॉर्मेशन के ग्रुप deptno_20 के पोर्ट्स को टारगेट टेबल पोर्ट्स से कनेक्ट करें। तैयार मैपping यह स्रोत से समूह के माध्यम से EMP_TARGET तक चलता है।

deptno_20 आउटपुट समूह के पोर्ट EMP_TARGET लक्ष्य तालिका से जुड़े हुए हैं

अब, जब आप इस मैप को निष्पादित करते हैंping, फ़िल्टर किए गए रिकॉर्ड लक्ष्य तालिका में लोड हो जाएंगे।

राउटर ट्रांसफॉर्मेशन के सर्वोत्तम अभ्यास और सामान्य त्रुटियाँ

नक्शाping ऊपर दिए गए बिंदु एक समूह का उपयोग करते हैं, जो बाद में सहायता टिकटों का कारण बनने वाले अधिकांश व्यवहार को छिपा देता है। नीचे दिए गए बिंदु बताते हैं कि दूसरा समूह बनने पर क्या परिवर्तन होते हैं।

  • दोहराई गई पंक्तियों पर ध्यान दें। समूह की शर्तें परस्पर अनन्य नहीं हैं। एक समूह में sal>1000 और दूसरे समूह में deptno=20 लिखने का मतलब है कि दोनों शर्तों से मेल खाने वाले कर्मचारी को दो बार दर्ज किया जाएगा। शर्तों को अनन्य बनाएं, या जानबूझकर दोहराव को स्वीकार करें।
  • अस्वीकृतियों के मामले में डिफ़ॉल्ट समूह से जुड़ें। वे पंक्तियाँ जो किसी भी शर्त को पूरा नहीं करतीं, तब तक नष्ट हो जाती हैं जब तक कि डिफ़ॉल्ट समूह को किसी लक्ष्य या अस्वीकृत फ़ाइल से नहीं जोड़ा जाता। ऑडिट करने योग्य लोड आमतौर पर उन्हें बनाए रखते हैं।
  • समूहों का नाम नियम के आधार पर रखें, लक्ष्य के आधार पर नहीं। उदाहरण के तौर पर, समूह deptno_20 स्पष्ट रूप से पढ़ा जा सकता है; लेकिन group1 नामक समूह स्पष्ट रूप से नहीं पढ़ा जा सकता। ध्यान दें कि इस व्याख्या में रूपांतरण को rtr_deptno_10 नाम दिया गया है, जबकि समूह deptno 20 पर फ़िल्टर करता है, जो नामकरण मानक द्वारा रोके जाने वाले विसंगति का सटीक उदाहरण है।
  • जहां संभव हो, रूटिंग से पहले फ़िल्टर करें। जिन पंक्तियों को कोई भी समूह कभी नहीं चाहेगा, उन्हें राउटर में ले जाने की तुलना में सोर्स क्वालिफायर क्वेरी में हटाना सस्ता होता है।
  • राउटर को जॉइन के रूप में न मानें। यह एक पाइपलाइन को कई भागों में विभाजित करता है। शाखाओं को वापस जोड़ने के लिए यूनियन ट्रांसफॉर्मेशन की आवश्यकता होती है, और दो अलग-अलग स्रोतों को संयोजित करने के लिए... जॉइनर परिवर्तन.

जिस समूह की शर्त TRUE या FALSE के बजाय NULL लौटाती है, उसे मेल न खाने वाला माना जाता है, इसलिए परीक्षण किए गए कॉलम में NULL मान वाली पंक्तियाँ डिफ़ॉल्ट समूह में चली जाती हैं। शर्त में NULL को स्पष्ट रूप से संभालने से परीक्षण के दौरान इस अप्रत्याशित समस्या से बचा जा सकता है। प्रदर्शन सुधारना और परीक्षण.

अक्सर पूछे जाने वाले प्रश्न

हाँ। एकीकरण सेवा प्रत्येक पंक्ति के विरुद्ध प्रत्येक समूह फ़िल्टर शर्त का मूल्यांकन करती है, इसलिए दो शर्तों को पूरा करने वाली पंक्ति को प्रत्येक मिलान समूह से एक बार गुजारा जाता है। ओवरलैपping परिस्थितियाँ आमतौर पर अनपेक्षित डुप्लिकेट पंक्तियों का कारण होती हैं।

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

नहीं। यह पहले उपयोगकर्ता-परिभाषित समूह के निर्माण के बाद स्वतः प्रकट होता है, इसमें कोई समूह फ़िल्टर शर्त नहीं होती है, और डिज़ाइनर इसे संपादित या हटाने की अनुमति नहीं देता है। केवल उपयोगकर्ता-परिभाषित समूहों को ही जोड़ा, नाम बदला या हटाया जा सकता है।

बिल्कुल एक। प्रत्येक पंक्ति उसी एक इनपुट समूह से प्रवेश करती है, और डिज़ाइनर उसके पोर्ट परिभाषाओं को प्रत्येक आउटपुट समूह में कॉपी कर देता है ताकि मैप की प्रत्येक शाखा के लिए पोर्ट को दोबारा बनाने की आवश्यकता न हो।ping.

यूनियन ट्रांसफॉर्मेशन कई इनपुट समूहों को स्वीकार करता है जिनमें पोर्ट समान होते हैं और एक सिंगल आउटपुट पाइपलाइन लौटाता है। राउटर डेटा को अलग-अलग विभाजित करता है; केवल यूनियन ही शाखाओं को वापस एक लक्ष्य में जोड़ता है।

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

एआई सहायक स्रोत डेटा का विश्लेषण करके यह प्रकट करते हैं कि मान वास्तव में कैसे वितरित होते हैं, फिर विभाजन की शर्तें सुझाते हैं और उन ओवरलैप को चिह्नित करते हैं जिनसे पंक्तियों की पुनरावृत्ति हो सकती है। मशीन लर्निंग आधारित सलाहकार उन पंक्तियों के डिफ़ॉल्ट समूह में चुपचाप पहुँचने से पहले ही उनमें शून्य मानों की अधिकता वाले स्तंभों का पता लगा लेते हैं।

कोपायलट बूलियन एक्सप्रेशन और उनसे मेल खाने वाले SQL को तेज़ी से तैयार करता है, जिससे बार-बार दोहराए जाने वाले नियमों पर समय की बचत होती है। यह आपके पोर्ट नाम या डेटा वॉल्यूम नहीं देख सकता, इसलिए मैप को सेव करने से पहले एक्सप्रेशन एडिटर में हर सुझाव को सत्यापित करें।ping.

इस पोस्ट को संक्षेप में इस प्रकार लिखें: