121
GB
What is the probe side and build side terminology in hash join and how does the optimizer decide which table is which?
IN
हैश जॉइन में जांच पक्ष और बिल्ड साइड शब्दावली क्या है और ऑप्टिमाइज़र कैसे तय करता है कि कौन सी तालिका कौन सी है?
A
The build side is the left table; probe is always the right
बिल्ड साइड बाईं ओर की टेबल है; जांच हमेशा सही होती है
B
Build side is always the outer table
बिल्ड साइड हमेशा बाहरी टेबल होती है
C
Build side: the SMALLER relation - loaded entirely into hash table in memory. Probe side: the LARGER relation - each row is used to probe the hash table. Optimizer assigns smaller relation as build side to minimize memory requirements
निर्माण पक्ष: छोटा संबंध - पूरी तरह से मेमोरी में हैश तालिका में लोड किया गया। जांच पक्ष: बड़ा संबंध - प्रत्येक पंक्ति का उपयोग हैश तालिका की जांच के लिए किया जाता है। मेमोरी आवश्यकताओं को कम करने के लिए ऑप्टिमाइज़र बिल्ड साइड के रूप में छोटे संबंध निर्दिष्ट करता है
D
The optimizer always chooses randomly
अनुकूलक हमेशा यादृच्छिक रूप से चयन करता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English)
Hash join phases: Build: iterate over smaller relation (build side), compute hash(join_key), store in hash table. Probe: iterate over larger relation (probe side), compute hash(join_key), look up in hash table for matches. Smaller table as build side fits hash table in memory, avoiding grace hash join overhead.
व्याख्या (हिन्दी)
हैश जुड़ने के चरण: बिल्ड: छोटे संबंध (बिल्ड साइड) पर पुनरावृत्त करें, हैश (join_key) की गणना करें, हैश तालिका में स्टोर करें। जांच: बड़े संबंध (जांच पक्ष) पर पुनरावृत्ति करें, हैश (join_key) की गणना करें, मिलान के लिए हैश तालिका में देखें। बिल्ड साइड के रूप में छोटी टेबल मेमोरी में हैश टेबल को फिट करती है, ग्रेस हैश जॉइन ओवरहेड से बचती है।