2013-01-12 20 views
7

मैं काफी Hadoop के लिए नया हूँ और मैं वर्तमान मेंचेन एकाधिक मानचित्र-नौकरियों को कम करने में सहायता के लिए उन्नत नौकरी नियंत्रण ढांचे को लागू करने का क्या अर्थ है?

पर एक परियोजना आवंटित किया गया है "मदद करने के लिए श्रृंखला कई मानचित्र-कम नौकरियों की जांच/मौजूदा org.apache.hadoop.mapred सुधार अर्थात् एक उन्नत नौकरी नियंत्रण ढांचे को लागू करें .jobcontrol पैकेज। "

इस परियोजना http://wiki.apache.org/hadoop/ProjectSuggestions#research_projects

मेरे भ्रम की स्थिति है पर रैंडम विचार के तहत परियोजना सुझाव पृष्ठ पर सूचीबद्ध है, मैं Oozie का अग्रिम संस्करण बनाने की क्या ज़रूरत है है (जो मुझे लगता है कि श्रृंखला कई नौकरियों के लिए एक नौकरी नियंत्रण ढांचे है) या उसके जैसा कुछ या इसका मतलब कुछ अलग है।

मुझे क्या याद आ रही है?

+0

मुझे यकीन नहीं है। लेकिन फिर पुनरावृत्ति मानचित्र को कम करें, समताप मंडल और मेसोस देखें। यह इनके संयोजन की तरह दिखता है। – debarshi

उत्तर

5

ऐसा लगता है कि आप जिस परियोजना का जिक्र कर रहे हैं वह this Jira ticket से संबंधित हो सकता है।

अभी JobControl class काफी नंगे है, और इसमें कई कार्यक्षमताएं अनुपलब्ध हैं जो उपयोगकर्ता के जीवन को आसान बना सकती हैं। अभी तुम सिर्फ JobControl.run फोन और बस हो गया, लेकिन व्यवहार में यह दिलचस्प हो सकता है अगर मैं अधिसूचित हो सकता है जब कुछ अपने काम में परिवर्तन: जब काम राज्य में परिवर्तन सूचनाएं प्राप्त करने के

  • की क्षमता: उदाहरण के लिए।
  • विफल नौकरियां दोबारा सबमिट करें: यदि आप असफल होते हैं तो नौकरी दोबारा सबमिट करने के लिए एक सुविधा लागू कर सकते हैं, उदाहरण के लिए आपके पास ControlledJob कक्षा में अधिकतम संख्या में रीट्री पैरामीटर हो सकता है और अधिसूचना भेजने से पहले उस बिंदु तक पुनः प्रयास कर सकता है यह विफल हुआ।
  • नियमित आधार पर कई नौकरियां नियमित रूप से चलती हैं, या तो साप्ताहिक, दैनिक, प्रति घंटा, ... यह आमतौर पर क्रोंटैब के माध्यम से किया जाता है, इसलिए यह सुविधा हडोप में एम्बेडेड हो सकती है, उदाहरण के लिए उपयोगकर्ता एक सेट कर सकते हैं एक अवधि निर्दिष्ट करके आवर्ती नौकरी, और जॉबकंट्रोल इन नियमित अंतराल पर इसे चलाएगा।
  • हो सकता है कि आपके जॉबफ्लो और प्रत्येक नौकरी की निर्भरताओं को देखने के लिए एक यूआई हो, जो पहले से ही पूरा हो चुका है और जो नहीं है।
  • यह दिलचस्प हो सकता है कि न केवल नक्शा/नौकरियों को कम करने की क्षमता हो, बल्कि उदाहरण के लिए हाइव, पिग भी हो, ताकि आप उपयोगकर्ताओं के लिए किसी भी प्रकार की नौकरी जमा करने और उन्हें बिना किसी निगरानी के एक सामान्य इंटरफ़ेस प्रदान कर सकें।

अंत में मुझे नहीं लगता कि आपको एक पूरी तरह से नए ढांचे को फिर से शुरू करने की आवश्यकता है, JobControl कक्षा पहले से ही एक अच्छा प्रारंभिक बिंदु प्रदान करती है। उपयोगकर्ता के दृष्टिकोण के साथ सोचने की कोशिश करें, नौकरियां जमा करने और प्रबंधित करने के लिए आप इसे आसान और छोटा बनाने के लिए क्या कर सकते हैं। यहां और टिकट में विचार केवल उदाहरण हैं, आप अपने विचारों के साथ आते हैं।

जहां तक ​​ओज़ी चिंतित है, यह आपको नौकरी के प्रवाह को नियंत्रित करने के लिए एक उच्च अमूर्तता देता है, लेकिन यह सेटअप करने के लिए और भी जटिल है और अधिक जटिल नौकरियों के लिए आरक्षित होना चाहिए। मुझे इस तथ्य के बारे में पता है कि कुछ लोग ओज़ी का उपयोग करने में संकोच करते हैं क्योंकि यह आपके अनुप्रयोगों को ओवरहेड जोड़ता है। बड़ा अंतर यह भी है कि ओज़ी एक सर्वर है जबकि JobControl सिर्फ क्लाइंट मशीन पर चलता है, जो अतिरिक्त ओवरहेड है।जबकि उपर्युक्त उल्लेख की गई कुछ विशेषताएं ओज़ी 1 या दूसरे तरीके से मौजूद हैं, ओज़ी जैसे अतिरिक्त काम की आवश्यकता के बिना इसे सरल रखने और क्लाइंट मशीन पर चलने की क्षमता आपकी परियोजना की कुंजी है।

+0

आपके उत्तर चार्ल्स के लिए धन्यवाद, मैं आपसे सहमत हूं लेकिन मेरे पास एकमात्र संदेह है - यह ओज़ी से अलग कैसे है। मुझे लगता है कि आपने जो भी मुद्दा बताया है वह पहले ही ओज़ी ढांचे में मौजूद है? – Ananda

+0

@bril मैंने अधिक विवरण जोड़े, संक्षेप में कुछ विशेषताएं ओज़ी में मौजूद हैं, लेकिन ओज़ी एक अलग जानवर है जो सर्वर के रूप में बहुत जटिल और काम करता है, उदाहरण के लिए मैं ओज़ी का उपयोग नहीं कर रहा हूं क्योंकि यह बहुत अधिक ओवरहेड जोड़ता है और इसलिए मेरे पास मेरी क्लाइंट मशीन पर इन चीजों का प्रबंधन करने में मेरी सहायता करने के लिए उपयोगिताएं हैं - जो मेरी राय में है कि आपको पहले से ही मौजूदा कक्षाओं को विस्तारित करके अपनी परियोजना के हिस्से के रूप में करने की कोशिश करनी चाहिए। –

+0

उस मामले में हैमके http://code.google.com/p/hamake/wiki/HamakeComparisonWithOtherWorkflowEngines एक बेहतर विकल्प है जो क्लाइंट पक्ष पर उपयोगिता के रूप में चलता है और डेटाफ्लो मॉडल का पालन करता है और लगभग सभी काम आवश्यक है। यह फिर से मेरे काम को आगे बढ़ाने के लिए एक भ्रम उठाता है। – Ananda