2015-07-11 16 views
6

मैं आरडीडी के बारे में पढ़ रहा हूं और विभाजन द्वारा विभिन्न परिवर्तनों को कैसे प्रभावित किया जाता है, और कुछ परिवर्तन स्वयं विभाजन को कैसे प्रभावित करते हैं। जबकि मैं इसे समझता हूं, मैं इसे बड़ी तस्वीर से जोड़ने में सक्षम नहीं हूं कि यह क्लस्टर में कैसे फिट बैठता है जहां हमारे पास एकाधिक नोड्स हैं।आरडीडी, विभाजन और नोड्स के बीच संबंध

क्या विभाजन और नोड के बीच एक पत्राचार है? मेरा मतलब है कि प्रति नोड एक एकल विभाजन आदर्श है? और यदि नहीं, स्पार्क कैसे तय करता है कि एक विशिष्ट आरडीडी के लिए कितने विभाजन एक ही नोड पर रहना है? एक ही नोड 2) एक ही RDD के सभी विभाजन अलग नोड्स पर निवास कर सकता है पर

1) सभी एक दिया RDD के लिए विभाजन (लेकिन -:

अधिक विशेष रूप से, मैं निम्न में से एक के बारे में सोच सकते हैं विभाजन का आधार क्या है?) 3) उसी नोड के विभाजन क्लस्टर में बिखरे हुए हैं, उनमें से कुछ एक ही नोड पर हैं, उनमें से कुछ अलग-अलग नोड्स पर हैं (फिर से, इस वितरण का आधार क्या है?)

क्या कोई मुझे बता सकता है या कम से कम मुझे कुछ विशिष्ट लिंक पर इंगित कर सकता है जो वास्तव में इसका उत्तर देता है?

उत्तर

8
  • एक भी RDD एक या अधिक विभाजन एकाधिक नोड्स में फैले,
  • एक एकल विभाजन एक एकल नोड पर संसाधित किया जाता है,
  • एक एकल नोड कई विभाजन संभाल कर सकते हैं (प्रति इष्टतम 2-4 विभाजन के साथ है सीपीयू official documentation के अनुसार)

स्पार्क के बाद से वितरण की प्लगेबल संसाधन प्रबंधन विवरण का समर्थन करता है जिसका आप उपयोग (स्टैंडअलोन, यार्न, Messos) पर निर्भर करेगा।

+0

मैंने डेटाफ्रेम पर 'coalesce (1) 'और फिर' foreachPartition 'पर किया, और मेरे लॉग से पता चला कि एक से अधिक कार्यकर्ता (4 वास्तव में) एक ही विभाजन पर पुनरावृत्त कर रहे थे। यह कैसे संभव है ? शायद क्योंकि यह बहुत बड़ा था? – ericbn

+0

@ericbn सबसे अधिक संभावना है कि आप 'coalesce' से पहले मंच से संबंधित कार्य देखें। – zero323

संबंधित मुद्दे