2011-09-16 35 views
7

स्ट्रीमिंग में इनपुट फ़ाइल नाम प्राप्त करें यदि जावा में प्रोग्राम लिखते समय फ़ाइलस्प्लिट का उपयोग करते हुए मैपर क्लास में इनपुट फ़ाइल में इनपुट फ़ाइल है तो मैं नाम ढूंढ सकता हूं।स्ट्रीमिंग हैडऑप प्रोग्राम

देखें समनुरूपित मापदंडों:

वहाँ यह करने के लिए एक इसी तरह से जब मैं पायथन में एक प्रोग्राम लिखने (? स्ट्रीमिंग का उपयोग करते हुए)

मैं अपाचे पर Hadoop स्ट्रीमिंग दस्तावेज़ में निम्नलिखित पाया जाता है। स्ट्रीमिंग नौकरी के निष्पादन के दौरान, "मानचित्रित" पैरामीटर के नाम बदल दिए गए हैं। डॉट्स (।) अंडरस्कोर (_) बन जाते हैं। उदाहरण के लिए, mapred.job.id mapred_job_id और mapred.jar बन जाता है mapred_jar बन जाता है। अपने कोड में, अंडरस्कोर के साथ पैरामीटर नामों का उपयोग करें।

लेकिन मैं अभी भी समझ नहीं पा रहा हूं कि मेरे मैपर के अंदर इसका उपयोग कैसे किया जाए।

किसी भी मदद की अत्यधिक सराहना की जाती है।

धन्यवाद

उत्तर

7

"Hadoop : The Definitive Guide"

Hadoop के अनुसार सेट स्ट्रीमिंग कार्यक्रमों के लिए वातावरण चर के रूप में काम कॉन्फ़िगरेशन पैरामीटर। हालांकि, यह सुनिश्चित करने के लिए कि वे वैध नाम हैं, अंडरस्कोर के साथ गैर-अल्फान्यूमेरिक वर्ण को प्रतिस्थापित करता है। निम्नलिखित पायथन अभिव्यक्ति दर्शाता है कि आप एक अजगर स्ट्रीमिंग स्क्रिप्ट के भीतर से mapred.job.id संपत्ति के मूल्य प्राप्त कर सकते हैं:

os.environ [ "mapred_job_id"]

तुम भी के लिए वातावरण चर सेट कर सकते हैं स्ट्रीमिंग लॉन्चर प्रोग्राम (-एक बार प्रत्येक वैरिएबल के लिए सेट करने के लिए) पर -cmdenv विकल्प को लागू करके MapReduce द्वारा लॉन्च की गई स्ट्रीमिंग प्रक्रिया। उदाहरण के लिए, निम्नलिखित MAGIC_PARAMETER वातावरण चर सेट:

-cmdenv MAGIC_PARAMETER = मंत्र

+2

संपत्ति की तरह दिखता है कृष्णमूर्ति की जरूरतों को "map.input.file" कहा जाता है - जो संभावित रूप से "map_input_file" पर्यावरण चर के रूप में दिखाई देगा। –

+0

नोट: अवधि अंडरस्कोर –

+0

के साथ प्रतिस्थापित की जानी चाहिए - इसे अपडेट किया गया। –

0

Hadoop 2.x के लिए नए ENV_VARIABLE MAPREDUCE_MAP_INPUT_FILE

+0

आपको पुराने केस 'mapreduce_map_input_file' – ofekp

4

है पार्स करने mapreduce_map_input_file (नया) या map_input_file (तक बहिष्कृत) पर्यावरण परिवर्तनीय, आपको मानचित्र इनपुट फ़ाइल नाम मिलेगा।

नोटिस:
दो वातावरण चर केस-संवेदी, सभी पत्र हैं लोअर केस हैं।

+1

'map_input_file' पुराने क्लस्टर पर फंस गए किसी भी व्यक्ति के लिए हैडऑप 0.20.x के लिए काम करना चाहिए – Blake