Teradata - रणनीति शामिल करें

यह अध्याय टेराडाटा में उपलब्ध विभिन्न जॉइन रणनीतियों पर चर्चा करता है।

विधियों में शामिल हों

Teradata में शामिल होने के लिए विभिन्न संक्रिया विधियों का उपयोग करता है। आमतौर पर इस्तेमाल किए जाने वाले कुछ तरीकों में शामिल हैं -

  • मर्ज में शामिल हों
  • सम्मिलित हों
  • उत्पाद शामिल हों

मर्ज में शामिल हों

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

रणनीति # 1

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

निम्नलिखित कर्मचारी और वेतन तालिका पर विचार करें।

CREATE SET TABLE EMPLOYEE,FALLBACK ( 
   EmployeeNo INTEGER, 
   FirstName VARCHAR(30) , 
   LastName VARCHAR(30) , 
   DOB DATE FORMAT 'YYYY-MM-DD', 
   JoinedDate DATE FORMAT 'YYYY-MM-DD', 
   DepartmentNo BYTEINT 
) 
UNIQUE PRIMARY INDEX ( EmployeeNo );
CREATE SET TABLE Salary ( 
   EmployeeNo INTEGER, 
   Gross INTEGER,  
   Deduction INTEGER, 
   NetPay INTEGER 
) 
UNIQUE PRIMARY INDEX(EmployeeNo);

जब इन दो तालिकाओं को EmployeeNo कॉलम में शामिल किया जाता है, तो कोई पुनर्वितरण नहीं होता है क्योंकि EmployeeNo दोनों तालिकाओं का प्राथमिक सूचकांक है, जो जुड़ रहा है।

रणनीति # 2

निम्नलिखित कर्मचारी और विभाग की तालिकाओं पर विचार करें।

CREATE SET TABLE EMPLOYEE,FALLBACK (
   EmployeeNo INTEGER, 
   FirstName VARCHAR(30) , 
   LastName VARCHAR(30) , 
   DOB DATE FORMAT 'YYYY-MM-DD', 
   JoinedDate DATE FORMAT 'YYYY-MM-DD', 
   DepartmentNo BYTEINT 
) 
UNIQUE PRIMARY INDEX ( EmployeeNo );
CREATE SET TABLE DEPARTMENT,FALLBACK ( 
   DepartmentNo BYTEINT, 
   DepartmentName CHAR(15) 
) 
UNIQUE PRIMARY INDEX ( DepartmentNo );

यदि इन दोनों तालिकाओं को DeparmentNo कॉलम में शामिल किया जाता है, तो पंक्तियों को पुनर्वितरित करने की आवश्यकता होती है क्योंकि DepartmentNo एक तालिका में एक प्राथमिक सूचकांक और दूसरी तालिका में गैर-प्राथमिक सूचकांक है। इस परिदृश्य में, पंक्तियों को जोड़ना एक ही AMP पर नहीं हो सकता है। ऐसे मामले में, Teradata विभाग के कॉलम पर कर्मचारी तालिका को पुनर्वितरित कर सकता है।

रणनीति # 3

उपरोक्त कर्मचारी और विभाग की तालिकाओं के लिए, Teradata सभी AMPs पर विभाग तालिका की नकल कर सकता है, यदि विभाग तालिका का आकार छोटा है।

सम्मिलित हों

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

इस परिदृश्य में, सिस्टम एक तालिका के अनन्य प्राथमिक अनुक्रमणिका का उपयोग करके एक पंक्ति प्राप्त करेगा और दूसरी पंक्ति से मिलान रिकॉर्ड लाने के लिए उस पंक्ति हैश का उपयोग करेगा। नेस्टेड जॉइन सभी जॉइन मेथड्स में से सबसे कुशल है।

उत्पाद शामिल हों

प्रोडक्ट जॉइन एक टेबल से प्रत्येक क्वालिफाइंग पंक्ति की तुलना दूसरे टेबल से प्रत्येक क्वालिफाइंग पंक्ति से करता है। निम्नलिखित कुछ कारकों के कारण उत्पाद जुड़ सकते हैं -

  • जहां हालत गायब है।
  • ज्वाइन की गई शर्त समानता की स्थिति पर आधारित नहीं है।
  • टेबल अलायस सही नहीं है।
  • एकाधिक परिस्थितियों में शामिल हों।