Hadoop Kya Hai

Hadoop Apache का एक ओपन सोर्स फ्रेमवर्क है और इसका इस्तेमाल प्रोसेस को स्टोर करने और डेटा के विश्लेषण के लिए किया जाता है जो वॉल्यूम में बहुत विशाल होते हैं. Hadoop जावा में लिखा गया है और OLAP ऑनलाइन विश्लेषणात्मक प्रसंस्करण नहीं है. यह बैच / ऑफ़लाइन प्रसंस्करण के लिए उपयोग किया जाता है. इसका उपयोग फेसबुक, याहू, गूगल, ट्विटर, लिंक्डइन और कई और अधिक द्वारा किया जा रहा है. इसके अलावा इसे क्लस्टर में केवल नोड्स जोड़कर बढ़ाया जा सकता है.

Hadoop एक Open source software framework है, जिसको JAVA प्रोग्रामिंग लैंग्वेज में बनाया गया है. आपकी जानकारी के लिए बता दे की Hadoop अलग अलग स्थानो पर मौजूद computer पर एवं computer के समहुओ पर मौजूद बड़े डेटा को Distributed तरीके से स्टोर करने और Processing करने की लिए प्रयोग किया जाता है. यह फाइल सिस्टम पर आधारित है। जिसकी मदद से डेटा के कुछ मुख्य Parameter के आधार पर डेटा की जांच ,उसकी Analysis की क्रिया को तेज और उत्तम बनाया जाता है. इसकी मदद से बिग डाटा को Decision making के लिए किसी ग्राफ एवं चार्ट के रूप में आसानी से दिखाया जा सकता है. यह मुख्यत उन वेब साइट्स के द्वारा डेटा को सही तरीके से व्यवस्थित करने के लिए प्रयोग किया जाता है जिनका डेटाबेस काफी बड़ा होता है।

Contents

Modules of Hadoop

  • HDFS: Hadoop वितरित फ़ाइल सिस्टम है. Google ने अपना पेपर GFS प्रकाशित किया और उसी के आधार पर HDFS का विकास हुआ. यह बताता है कि फाइलों को खंडों में तोड़ दिया जाएगा और वितरित वास्तुकला पर नोड्स में संग्रहीत किया जाएगा.
  • Yarn: फिर भी एक अन्य संसाधन वार्ताकार का उपयोग कार्य निर्धारण और क्लस्टर प्रबंधन के लिए किया जाता है.
  • Map Reduce: यह एक फ्रेमवर्क है जो जावा प्रोग्राम्स को कुंजी मूल्य जोड़ी का उपयोग करके डेटा पर समानांतर गणना करने में मदद करता है. मैप कार्य इनपुट डेटा लेता है और इसे एक डेटा सेट में परिवर्तित करता है, जिसे कुंजी मूल्य जोड़ी में गणना की जा सकती है. मैप टास्क के आउटपुट को टास्क को कम करके खाया जाता है और फिर रेड्यूसर के बाहर जाने से वांछित परिणाम मिलता है.
  • Hadoop Common: ये Java लाइब्रेरी का उपयोग Hadoop को शुरू करने के लिए किया जाता है और अन्य Hadoop मॉड्यूल द्वारा उपयोग किया जाता है.

Advantages of Hadoop

  • Fast: एचडीएफएस में क्लस्टर पर वितरित डेटा और मैप किए जाते हैं जो तेजी से पुनर्प्राप्ति में मदद करता है। यहां तक कि डेटा को संसाधित करने के लिए उपकरण अक्सर एक ही सर्वर पर होते हैं, इस प्रकार प्रसंस्करण समय को कम करते हैं. यह मिनटों में डेटा की टेराबाइट्स और पेटा बाइट्स को घंटों में संसाधित करने में सक्षम है.
  • Scalable: Hadoop क्लस्टर को क्लस्टर में सिर्फ नोड्स जोड़कर बढ़ाया जा सकता है.
  • Cost Effective: Hadoop एक खुला स्रोत है और कमोडिटी हार्डवेयर का उपयोग डेटा स्टोर करने के लिए करता है ताकि पारंपरिक संबंधपरक डेटाबेस प्रबंधन प्रणाली की तुलना में यह वास्तव में प्रभावी हो.
  • Resilient to failure: HDFS के पास वह संपत्ति है जिसके साथ वह नेटवर्क पर डेटा को दोहरा सकता है, इसलिए यदि एक नोड डाउन है या कोई अन्य नेटवर्क विफलता होती है, तो Hadoop डेटा की दूसरी प्रतिलिपि लेता है और इसका उपयोग करता है. आम तौर पर, डेटा को तीन बार दोहराया जाता है लेकिन प्रतिकृति कारक कॉन्फ़िगर करने योग्य होता है.

What is HDFS

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

Where to use HDFS

  • Very Large Files: फाइलें सैकड़ों मेगाबाइट, गीगाबाइट या अधिक की होनी चाहिए.
  • Streaming Data Access: पहले पढ़ने में विलंबता की तुलना में पूरे डेटा सेट को पढ़ने का समय अधिक महत्वपूर्ण है। एचडीएफएस लेखन-एक बार और कई-कई बार पैटर्न पर बनाया गया है.
  • Commodity Hardware: यह कम लागत वाले हार्डवेयर पर काम करता है.

Where not to use HDFS

  • Low Latency data access: पहले डेटा का उपयोग करने के लिए बहुत कम समय की आवश्यकता वाले अनुप्रयोगों को एचडीएफएस का उपयोग नहीं करना चाहिए क्योंकि यह पहले रिकॉर्ड लाने के लिए समय के बजाय पूरे डेटा को महत्व दे रहा है.
  • Lots Of Small Files: नाम नोड में मेमोरी में फ़ाइलों का मेटाडेटा होता है और यदि फाइलें आकार में छोटी होती हैं तो नाम नोड की मेमोरी के लिए बहुत अधिक मेमोरी लगती है जो संभव नहीं है.
  • Multiple Writes: जब हमें कई बार लिखना होता है तो इसका उपयोग नहीं किया जाना चाहिए.

HDFS Concepts

  • Blocks: एक ब्लॉक डेटा की न्यूनतम मात्रा है जिसे वह पढ़ या लिख सकता है. एचडीएफएस ब्लॉक डिफ़ॉल्ट रूप से 128 एमबी हैं और यह कॉन्फ़िगर करने योग्य है. फ़ाइल्स एन एचडीएफएस ब्लॉक-आकार के विखंडू में टूट गए हैं, जो स्वतंत्र इकाइयों के रूप में संग्रहीत हैं. एक फाइल सिस्टम के समान। यदि फ़ाइल एचडीएफएस में ब्लॉक आकार से छोटी है, तो यह पूर्ण ब्लॉक पर कब्जा नहीं करता है, अर्थात 5 एमबी फ़ाइल को ब्लॉक के आकार के एचडीएफएस में संग्रहीत किया जाता है 128 एमबी केवल 5 एमबी का स्थान लेता है. एचडीएफएस ब्लॉक का आकार सिर्फ बड़े आकार का है। तलाश की लागत को कम करें.
  • Name Node: एचडीएफएस मास्टर-वर्कर पैटर्न में काम करता है जहां नाम नोड मास्टर के रूप में कार्य करता है. नेम नोड नियंत्रक और एचडीएफएस का प्रबंधक है क्योंकि यह एचडीएफएस में सभी फाइलों की स्थिति और मेटाडेटा जानता है मेटाडेटा जानकारी फ़ाइल की अनुमति, नाम और प्रत्येक ब्लॉक का स्थान है. मेटाडेटा छोटे हैं, इसलिए इसे नाम नोड की मेमोरी में संग्रहीत किया जाता है, जिससे डेटा तक तेजी से पहुंच की अनुमति मिलती है. इसके अलावा HDFS क्लस्टर कई ग्राहकों द्वारा समवर्ती रूप से एक्सेस किया जाता है, इसलिए यह सभी जानकारी bya सिंगल मशीन द्वारा नियंत्रित की जाती है. फ़ाइल सिस्टम ऑपरेशन जैसे खोलना, बंद करना, नाम बदलना आदि इसके द्वारा निष्पादित किए जाते हैं.
  • Data Node: जब उन्हें बताया जाता है तो वे ब्लॉक को स्टोर और पुनः प्राप्त करते हैं; ग्राहक या नाम नोड द्वारा. वे समय-समय पर नोड का नाम वापस रिपोर्ट करते हैं, उन ब्लॉकों की सूची के साथ जो वे संग्रहीत कर रहे हैं. कमोडिटी हार्डवेयर वाला डेटा नोड ब्लॉक नोड निर्माण का कार्य भी करता है जो नाम नोड द्वारा कहा गया है.