के अनुसार Hadoop - The Definitive Guide
FileInputFormats को परिभाषित करने वाले तार्किक रिकॉर्ड आमतौर पर HDFS ब्लॉकों में बड़े करीने से फिट नहीं होते हैं। उदाहरण के लिए, एक TextInputFormat के तार्किक रिकॉर्ड लाइनें हैं, जो एचडीएफएस सीमाओं को अधिक बार पार नहीं करेगा। उदाहरण के लिए, आपके प्रोग्राम की लाइनों पर कोई असर नहीं पड़ा है - लाइनें छूटी हुई या टूटी हुई नहीं हैं - लेकिन इसके बारे में जानने लायक है, क्योंकि इसका मतलब है कि डेटा-स्थानीय मैप्स (यानी वे नक्शे जो अपने मेजबान के समान ही चल रहे हैं इनपुट डेटा) कुछ रिमोट रीड्स करेगा। मामूली उपरि यह कारण सामान्य रूप से महत्वपूर्ण नहीं है।
मान लीजिए कि एक रिकॉर्ड लाइन दो ब्लॉकों (बी 1 और बी 2) में विभाजित है। पहले ब्लॉक (b1) को संसाधित करने वाला मैपर ध्यान देगा कि अंतिम पंक्ति में EOL विभाजक नहीं है और डेटा के अगले खंड (b2) से शेष रेखा को प्राप्त करता है।
दूसरे ब्लॉक (b2) को संसाधित करने वाला मैपर कैसे निर्धारित करता है कि पहला रिकॉर्ड अधूरा है और ब्लॉक (b2) में दूसरे रिकॉर्ड से शुरू होने वाली प्रक्रिया होनी चाहिए?
LineReader.readLine
, मुझे लगता है कि यह आपके प्रश्न के लिए प्रासंगिक नहीं है, लेकिन यदि आवश्यक हो तो अधिक विवरण जोड़ सकते हैं।