2010-03-29 16 views
35

के बीच अंतर फोर्क/जॉइन और मानचित्र/कमी के बीच महत्वपूर्ण अंतर क्या है?फोर्क/जॉइन और मैप/

क्या वे विघटन और वितरण (डेटा बनाम गणना) के प्रकार में भिन्न हैं?

उत्तर

31

एक महत्वपूर्ण अंतर यह है कि F-J एक जावा वीएम पर काम करने के लिए डिज़ाइन किया गया है, जबकि M-R स्पष्ट रूप से मशीनों के बड़े समूह पर काम करने के लिए डिज़ाइन किया गया है। ये बहुत अलग परिदृश्य हैं।

एफ-जे एक पुनरावर्ती दिखने वाले फैशन में कई उप-कार्यों में एक कार्य को विभाजित करने की सुविधा प्रदान करता है; अधिक स्तर, इस चरण में 'अंतर-कांटा' संचार की संभावना, अधिक पारंपरिक प्रोग्रामिंग। एक मशीन से परे (कम से कम कागज में) विस्तार नहीं करता है। अपने आठ-कोर का लाभ लेने के लिए बढ़िया।

एम-आर केवल एक बड़ा विभाजन करता है, मैप किए गए विभाजन एक-दूसरे के बीच बात नहीं करते हैं, और फिर सब कुछ एक साथ कम कर देता है। एक एकल स्तर, कम अंत तक कोई अंतर-विभाजन संचार, और बड़े पैमाने पर स्केलेबल। बादल के अपने हिस्से का लाभ लेने के लिए बढ़िया।

+8

अधिक विशेष रूप से, एफ-जे श्रमिकों को एक-दूसरे की कतारों से उप-कार्य चुरा लेने की अनुमति देता है। यह संभव नहीं है यदि कार्यकर्ता धागे विभिन्न मशीनों पर हैं (और इस प्रकार साझा स्मृति नहीं है।) – finnw

+2

[मैपरेडस विकिपीडिया प्रविष्टि] (http://en.wikipedia.org/wiki/MapReduce) के अनुसार, एमआर नहीं है आवश्यक रूप से फोर्क किए गए कार्यों के एक स्तर तक ही सीमित है। –

+0

जावा के संदर्भ के बाहर कांटा/जुड़ने और मैप्रिड के बीच क्या अंतर है? – user2001850

10

इस विषय पर एक संपूर्ण वैज्ञानिक पेपर है, Comparing Fork/Join and MapReduce

पेपर तीन समांतर प्रतिमानों के प्रदर्शन, स्केलेबिलिटी और प्रोग्राममेबिलिटी की तुलना करता है: फोर्क/जॉइन, मैपराइडस, और हाइब्रिड दृष्टिकोण।

वे क्या लगता है मूल रूप से जावा कांटा/में शामिल होने के कम स्टार्टअप विलंबता है और अच्छी तरह से छोटे आदानों (< 5MB) के लिए मापता है कि है, लेकिन यह बड़ा आदानों संसाधित नहीं कर सकता शेयर्ड मेमोरी, एकल नोड आर्किटेक्चर के आकार प्रतिबंध के कारण है। दूसरी तरफ, मैपरेडस में महत्वपूर्ण स्टार्टअप विलंबता (सेकेंड के दस सेकंड) हैं, लेकिन एक गणना क्लस्टर पर बहुत अधिक इनपुट (> 100 एमबी) के लिए अच्छी तरह से स्केल करता है।

लेकिन अगर आप इसके लिए तैयार हैं तो वहां पढ़ने के लिए बहुत कुछ है।

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