सभी yarn.nodemanager.resource.memory-mb
(मेमोरी) पहले, yarn.nodemanager.resource.cpu-vcores
(Vcore) Nodemanager डेमॉन/सेवा कॉन्फ़िगरेशन गुण हैं और धागे क्लाइंट अनुप्रयोग में ओवरराइड नहीं किया जा सकता। यदि आप इन कॉन्फ़िगरेशन गुणों को बदलते हैं तो आपको nodemanager सेवाओं को पुनरारंभ करने की आवश्यकता है।
चूंकि सीपीयू अपने मामले में अड़चन है, मेरे सिफारिश यार्न शेड्यूलिंग रणनीति Fairscheduler को डीआरएफ के साथ क्लस्टर स्तर में (प्रमुख संसाधन निष्पक्षता) शेड्यूलिंग नीति को बदलने का है, ताकि आप आवेदन कंटेनर निर्दिष्ट करने के लिए लचीलापन मिल जाएगा है स्मृति और सीपीयू कोर दोनों के मामले में आकार। चल रहे एप्लिकेशन कंटेनर (मैपर/रेड्यूसर/एएम/कार्य) की संख्या उपलब्ध वीकोर्स पर आधारित होगी जो आप
शेड्यूलिंग नीति फेयर शेड्यूलर कतार/पूल स्तर पर सेट की जा सकती हैं।
शेड्यूलिंग नीति: किसी भी कतार की शेड्यूलिंग नीति सेट करने के लिए।
एक बार जब आप, दोनों स्मृति कर सकते हैं सीपीयू कोर कर सकते हैं डीआरएफ शेड्यूलिंग नीति के साथ नए मेले अनुसूचक कतार/पूल बनाया है - अनुमति प्राप्त मान "फीफो"/"निष्पक्ष"/"डीआरएफ"
अधिक जानकारी के लिए this apache doc देखें हैं इस प्रकार कार्यक्रम में सेट किया जाना चाहिए।
कॉन्फ़िगरेशन conf = नया कॉन्फ़िगरेशन();
मैप्रिडस एप्लिकेशन में कंटेनर आकार को परिभाषित करने के लिए कैसे करें।
Configuration conf = new Configuration();
conf.set("mapreduce.map.memory.mb","4096");
conf.set(mapreduce.reduce.memory.mb","4096");
conf.set(mapreduce.map.cpu.vcores","1");
conf.set(mapreduce.reduce.cpu.vcores","1");
संदर्भ - 1 https://hadoop.apache.org/docs/r2.7.2/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml नक्शाकार/कम करने के लिए cpu.vcores आवंटन के
डिफ़ॉल्ट मान होगा, आप इस मूल्य अगर यह एक सीपीयू गहन आवेदन है बढ़ा सकते हैं। याद रखें यदि आप इस मान को बढ़ाते हैं, समानांतर में चल रहे मैपर/रेड्यूसर कार्यों की संख्या भी कम हो जाएगी।
हम्म, मुझे लगता है कि शेड्यूलर के साथ पूरी चीजें वांछनीय नहीं है, लेकिन यह सीपीयू।vcores सेटिंग वास्तव में मदद कर सकते हैं, क्योंकि हालांकि नोड्स के लिए रैम राशि अलग है, लेकिन सीपीयू कोर एक जैसा है, इसलिए मैं मैपर के लिए 2 vcores सेट कर सकता हूं और यह विभिन्न नोड्स के लिए मैपर्स की समान मात्रा में वृद्धि करेगा। मैं इसे कोशिश करूंगा – AdamSkywalker
अच्छा लगता है, जो काम कर सकता है, यदि कुल चलने वाले कंटेनर आपकी क्लस्टर क्षमता को दबाते हैं। – sachin
पिछली टिप्पणी में टाइपो के लिए खेद है, सीपीयू vcores सीमा गैर ड्रॉ शेड्यूलिंग नीति में चेक नहीं किया जाएगा। – sachin