यदि मैं RDD
को 60 कहने के लिए विभाजित करता हूं और मेरे पास 20 मशीनों में कुल 20 कोर फैले हैं, यानी एकल कोर मशीनों के 20 उदाहरण हैं, तो कार्यों की संख्या 60 है (विभाजन की संख्या के बराबर)। प्रति कोर एक विभाजन और 20 कार्य होने पर यह फायदेमंद क्यों है?विभाजन स्पार्क में कार्यों के लिए कैसे मानचित्र करता है?
इसके अतिरिक्त, मैंने एक प्रयोग चलाया है जहां मैंने विभाजन की संख्या 2 पर सेट की है, यूआई को जांचने के लिए 2 कार्यों को किसी भी समय चल रहा है; हालांकि, मुझे आश्चर्य हुआ कि यह कार्यों को पूरा करने के उदाहरणों को बदलता है, उदाहरण के लिए नोड 1 और नोड 2 पहले 2 कार्य करते हैं, फिर नोड 6 और नोड 8 कार्य के अगले सेट का दूसरा सेट करते हैं। मैंने सोचा कि क्लस्टर में कोर (और उदाहरण) से कम विभाजनों की संख्या निर्धारित करके प्रोग्राम केवल न्यूनतम उपयोग करेगा आवश्यक उदाहरणों की संख्या। क्या कोई इस व्यवहार को समझा सकता है?
धन्यवाद। हालांकि, मैं डेटा को एचडीएफएस में नहीं डालता, बल्कि मैं एस 3 से आयात करता हूं। मैं इस धारणा के तहत था कि यह डेटा को एचडीएफएस में नहीं डालता है लेकिन मैं गलत हो सकता हूं? – monster
उह, यह निर्भर करता है। स्पार्क का उपयोग आमतौर पर एचडीएफएस के शीर्ष पर एक हडोप प्रतिस्थापन के रूप में किया जाता है, लेकिन अधिक सामान के साथ संगत है। तो प्रश्न आपके पास वापस आ गए हैं, आपके पास आपका डेटा क्या है? लेकिन ईमानदार होने के लिए, मैंने इसके लिए एस 3 का उपयोग नहीं किया है। हालांकि, अगर वही विचार लागू होते हैं तो मुझे आश्चर्य नहीं होगा। वितरित अनावश्यकता बनाने के लिए कई तरीके नहीं हैं ;-) –