Wednesday 15 February 2012

Serialization in Hadoop - Writable -


यह एक ऐसा वर्ग है जो लेखनयोग्य लागू करता है ..

  सार्वजनिक वर्ग टेस्ट के कार्यान्वयन लिखित (लिस्ट) ; AtomicWritable & gt; परमाणु = नए अर्रे लिस्ट & लेफ्टिनेंट; परमाणु विरंजन & gt; (); सार्वजनिक शून्य लिखना (डेटा आउटपुट आउट) IOException फेंकता {IntWritable आकार = नया IntWritable (atoms.size ()); size.write (बाहर); के लिए (परमाणु ऊर्जायोग्य परमाणु: परमाणु) परमाणु। लिखना (बाहर); } सार्वजनिक शून्य पढ़नेफिल्ड (डेटाइनपूट इन) IOException फेंकता है {atoms.clear (); IntWritable आकार = नया IntWritable (); (में) size.readFields; Int n = size.get (); जबकि (n-- & gt; 0) {परमाणु विरघनीय परमाणु = नया परमाणु योग्य (); (में) atom.readFields; atoms.add (परमाणु); }}}   

मैं वाकई सराहना करूंगा अगर कोई मुझे यह समझने में मदद करे कि कैसे लिखने और पढ़ने की विधि पढ़ी जा सकती है। असल में मैं इस मामले में टेस्ट ऑब्जेक्ट का निर्माण करने के तरीके को समझने में विफल हूं। ऑब्जेक्ट को डेटाऑप्टपुट obj पर लिखा जाने के बाद, हम इसे डेटा इन्पुट ऑब्जेक्ट में कैसे पुनर्स्थापित करते हैं यह मूर्खतापूर्ण लग सकता है, लेकिन हडोप के लिए एक नौसिखिया हूँ और उन्हें एक परियोजना सौंपी गई है जो Hadoop का उपयोग करता है कृपया मदद करें।

धन्यवाद

असल में मैं विफल रहा हूँ इस मामले में टेस्ट ऑब्जेक्ट का निर्माण करने के तरीके को समझने के लिए।

हाँ, आप बिंदु याद कर रहे हैं यदि आप को टेस्ट का एक उदाहरण बनाने और परमाणुओं को पॉप्युलेट करने की आवश्यकता है, तो आपको टेस्ट पर एक कन्स्ट्रक्टर जोड़ना होगा : <पूर्व> सार्वजनिक टेस्ट (अर्रेलिस्ट & lt; परमाणु विरंजन & gt; परमाणु) {this.atoms = atoms; }

या आपको डिफ़ॉल्ट कन्स्ट्रक्टर का उपयोग करने और एक विधि या एक सेटर जोड़ने की आवश्यकता है जो आपको आइटम को परमाणुओं में जोड़ देता है या परमाणुओं का मान सेट कर सकता है । उत्तरार्द्ध Hadoop ढांचे में वास्तव में बहुत आम है, एक डिफ़ॉल्ट कन्स्ट्रक्टर और एक सेट विधि है सीएफ, जैसे,।

आप readFields और लिखना कॉल नहीं करते; Hadoop फ्रेमवर्क आपके लिए यह है कि जब इसे नक्शा और कम और कम करने के लिए से इनपुट और आउटपुट को सीरियललाइज़ और डिसेरीलाइज़ करने की आवश्यकता होती है।

No comments:

Post a Comment