के लिए चेकप्वाइंट नोड, वहाँHadoop 2.0 नाम नोड, माध्यमिक नोड और पढ़ने अपाचे <a href="http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HdfsUserGuide.html" rel="noreferrer">Hadoop documentation</a> के बाद उच्च उपलब्धता
मैं पर Namenode भूमिका और जिम्मेदारियों स्पष्ट कर रहा हूँ माध्यमिक नोड & जाँच बिंदु नोड की जिम्मेदारियों को समझने में एक छोटे से भ्रम की स्थिति है :
- एक लॉग एक देशी फाइल सिस्टम फाइल करने के लिए संलग्न के रूप में फाइल सिस्टम के लिए NameNode भंडार संशोधनों, संपादन। जब कोई नाम नोड शुरू होता है, तो यह एक छवि फ़ाइल, fsimage से एचडीएफएस स्थिति पढ़ता है, और फिर संपादन लॉग फ़ाइल से संपादन लागू करता है। इसके बाद यह fsimage के लिए नए एचडीएफएस राज्य लिखता है और एक खाली संपादन फ़ाइल के साथ सामान्य ऑपरेशन शुरू करता है। चूंकि NameNode fsimage विलय करता है और केवल स्टार्ट अप के दौरान फ़ाइलों को संपादित करता है, इसलिए संपादन लॉग फ़ाइल व्यस्त क्लस्टर पर समय के साथ बहुत बड़ी हो सकती है। एक बड़ी संपादन फ़ाइल का एक और दुष्प्रभाव यह है कि नाम नोड के अगले पुनरारंभ में अधिक समय लगता है।
लेकिन मैं माध्यमिक namenode & चेक बिंदु namenode जिम्मेदारियों को समझने में एक छोटे से भ्रम की स्थिति है।
माध्यमिक NameNode:
- माध्यमिक NameNode fsimage विलीन हो जाती है और संपादन समय-समय पर फ़ाइलें लॉग इन करें और संपादन एक सीमा के भीतर आकार लॉग ऑन रहता है। यह आमतौर पर प्राथमिक नाम नोड की तुलना में एक अलग मशीन पर चलाया जाता है क्योंकि इसकी स्मृति आवश्यकताएं प्राथमिक नाम नोड के समान क्रम पर होती हैं।
चेक बिंदु नोड:
- चेकप्वाइंट नोड समय-समय पर नाम स्थान की चौकियों पैदा करता है। यह सक्रिय नाम नोड से fsimage और संपादन डाउनलोड करता है, उन्हें स्थानीय रूप से विलय करता है, और नई छवि को सक्रिय नाम नोड पर वापस अपलोड करता है। चेकपॉइंट नोड आमतौर पर नाम नोड की तुलना में एक अलग मशीन पर चलता है क्योंकि इसकी स्मृति आवश्यकताएं नाम नोड के समान क्रम पर होती हैं। कॉन्फ़िगरेशन फ़ाइल में निर्दिष्ट नोड पर बिन/hdfs namenode -checkpoint द्वारा चेकपॉइंट नोड प्रारंभ किया गया है।
ऐसा लगता माध्यमिक namenode & चेकप्वाइंट नोड के बीच कि जिम्मेदारी स्पष्ट नहीं हैं। दोनों संपादन पर काम कर रहे हैं। तो अंत में कौन संशोधित करेगा?
एक अलग नोट पर, मैंने इन अवधारणाओं को समझने में अस्पष्टता को दूर करने के लिए जिरा में दो बग बनाई हैं।
issues.apache.org/jira/browse/HDFS-8913
issues.apache.org/jira/browse/HDFS-8914
ऐसा लगता है जैसे अपाचे ने सुविधा को सही तरीके से दस्तावेज नहीं किया है।> * थोकॉमिनेशन प्रोटोकॉल सभी एचडीएफएस संचार प्रोटोकॉल टीसीपी/आईपी प्रोटोकॉल के शीर्ष पर स्तरित हैं। एक ग्राहक नाम नोड मशीन पर कॉन्फ़िगर करने योग्य टीसीपी पोर्ट से कनेक्शन स्थापित करता है। यह नाम नोड के साथ क्लाइंटप्रोटोकॉल से बात करता है। DataNodes DataNode प्रोटोकॉल का उपयोग कर NameNode से बात करते हैं। एक रिमोट प्रक्रिया कॉल (आरपीसी) अबास्ट्रक्शन क्लाइंट प्रोटोकॉल और डेटा नोड प्रोटोकॉल दोनों को लपेटता है। डिज़ाइन द्वारा, नाम नोड कभी भी आरपीसी शुरू नहीं करता है। इसके बजाए, यह केवल डेटा नोड्स या ग्राहकों द्वारा जारी आरपीसी अनुरोधों का जवाब देता है। –
जेरा में दो बग्स बनाए गए: https://issues.apache.org/jira/browse/HDFS-8914 और https://issues.apache.org/jira/browse/HDFS-8913। प्रलेखन में बेहतर सामग्री प्राप्त करने की उम्मीद है –
सामग्री http://morrisjobke.de/2013/12/11/Hadoop-NameNode-and-siblings/ से प्राप्त की गई सामग्री – Andrew