में एचडीएफएस में एक फ़ाइल को लिखना मैं हाडोप में आई/ओ गतिविधि का परीक्षण करने के लिए एक डिस्क गहन हडोप एप्लिकेशन की तलाश में था, लेकिन मुझे ऐसा कोई एप्लिकेशन नहीं मिला जो ऊपर डिस्क उपयोग को ऊपर रखता है, 50% या कुछ कहता है ऐसा एप्लिकेशन जो वास्तव में डिस्क व्यस्त रहता है। मैंने यादृच्छिक लेखक की कोशिश की, लेकिन आश्चर्य की बात यह है कि डिस्क I/o गहन नहीं है।हडोप
तो, मैंने मैपर में एक फ़ाइल बनाने और इसमें कुछ टेक्स्ट लिखने के लिए एक छोटा प्रोग्राम लिखा था। यह एप्लिकेशन अच्छी तरह से काम करता है, लेकिन उपयोग केवल मास्टर नोड में उच्च है जो नाम नोड, नौकरी ट्रैकर और दासों में से एक है। डिस्क उपयोग अन्य कार्य ट्रैकर्स में शून्य या नगण्य है। मैं समझने में असमर्थ हूं कि डिस्क ट्रैकर्स में डिस्क I/O इतनी कम क्यों है। अगर कोई मुझे कुछ गलत कर रहा है तो क्या कोई मुझे सही दिशा में घुमा सकता है? अग्रिम में धन्यवाद।
यहाँ मेरी नमूना कोड खंड है कि मैं एक फ़ाइल
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
Path outFile;
while (itr.hasMoreTokens()) {
word.set(itr.nextToken());
context.write(word, one);
outFile = new Path("./dummy"+ context.getTaskAttemptID());
FSDataOutputStream out = fs.create(outFile);
out.writeUTF("helloworld");
out.close();
fs.delete(outFile);
}
आई/ओ बेंचमार्किंग के लिए आप टेस्टडीएफएसआईओ पर भी एक नज़र डाल सकते हैं: http://answers.oreilly.com/topic/460-how-to-benchmark-a-hadoop-cluster/ –
@LorandBendig मैंने किया, टेस्ट डीएफएसआईओ के लिए उच्चतम डिस्क उपयोग जो मैंने 14 नोड्स के क्लस्टर के लिए पाया है, केवल 2.4% है और औसत 0.07% है। मैं _iostat_ कमांड से डिस्क उपयोग को माप रहा हूं, नौकरी लगभग 300 के लिए दौड़ गई। क्या वास्तव में कुछ मूर्खतापूर्ण है जो मैं कर रहा हूं और इसके बारे में नहीं जानता? –
आप पैरामीटर (फ़ाइलों, आकार के एनआर) के साथ खेल सकते हैं लेकिन मुझे लगता है कि आप पहले ही कर चुके हैं। ऐसे कई परीक्षण हैं जिन्हें आप यहां बहुत अच्छी तरह से वर्णित कर सकते हैं: http://www.michael-noll.com/blog/2011/04/09/benchmarking-and-stress-testing-an-hadoop-cluster-with-terasort -testdfsio-nnbench-mrbench/ –