अपाचे हडूप

अपाचे हडूप  खुला स्रोत सॉफ्टवेयर  का एक संग्रह है | ओपन-सोर्स सॉफ़्टवेयर यूटिलिटीज जो भारी मात्रा में डेटा और संगणना से जुड़ी समस्याओं को हल करने के लिए कई कंप्यूटरों के नेटवर्क का उपयोग करने की सुविधा प्रदान करता है। यह  MapReduce   प्रोग्रामिंग मॉडल  का उपयोग करके  क्लस्टर फ़ाइल सिस्टम  और बड़े डेटा के प्रसंस्करण के लिए एक  सॉफ्टवेयर ढांचा  प्रदान करता है। Hadoop को मूल रूप से  लोहे की उपयोगी वस्तुएं  से निर्मित  कंप्यूटर क्लस्टर ्स के लिए डिज़ाइन किया गया था, जो अभी भी सामान्य उपयोग है। इसके बाद से उच्च अंत हार्डवेयर के समूहों पर भी इसका उपयोग पाया गया है।  Hadoop में सभी मॉड्यूल एक मौलिक धारणा के साथ डिज़ाइन किए गए हैं कि हार्डवेयर विफलताएँ सामान्य घटनाएँ हैं और इन्हें फ्रेमवर्क द्वारा स्वचालित रूप से नियंत्रित किया जाना चाहिए। Apache Hadoop के मूल में एक स्टोरेज पार्ट होता है, जिसे Hadoop डिस्ट्रिब्यूटेड फाइल सिस्टम (HDFS) के रूप में जाना जाता है, और एक प्रोसेसिंग पार्ट जो कि MapReduce प्रोग्रामिंग मॉडल है। Hadoop फ़ाइलों को बड़े ब्लॉक में विभाजित करता है और उन्हें एक क्लस्टर में नोड्स में वितरित करता है। यह समानांतर में डेटा को संसाधित करने के लिए JAR (फ़ाइल स्वरूप) को नोड्स में स्थानांतरित करता है। यह दृष्टिकोण डेटा स्थानीयता  का लाभ उठाता है, जहां नोड्स उस डेटा में हेरफेर करते हैं, जिस तक उनकी पहुंच है। यह डेटासेट को एक अधिक पारंपरिक  सुपर कंप्यूटर आर्किटेक्चर  की तुलना में तेजी से और अधिक कुशलता से प्रसंस्करण वितरित करने की अनुमति देता है जो एक समानांतर फाइल सिस्टम पर निर्भर करता है जहां उच्च गति नेटवर्किंग के माध्यम से गणना और डेटा वितरित किया जाता है। आधार Apache Hadoop फ्रेमवर्क निम्नलिखित मॉड्यूल से बना है:


 * Hadoop Common - में अन्य Hadoop मॉड्यूल के लिए आवश्यक लाइब्रेरी और सुविधाएं शामिल हैं;
 * Hadoop डिस्ट्रीब्यूटेड फाइल सिस्टम (HDFS) - एक वितरित फाइल-सिस्टम जो कमोडिटी मशीनों पर डेटा स्टोर करता है, क्लस्टर में बहुत अधिक समग्र बैंडविड्थ प्रदान करता है;
 * Hadoop YARN - (2012 में पेश किया गया) क्लस्टर में कंप्यूटिंग संसाधनों के प्रबंधन और उपयोगकर्ताओं के अनुप्रयोगों को शेड्यूल करने के लिए उनका उपयोग करने के लिए जिम्मेदार एक मंच;
 * Hadoop MapReduce - बड़े पैमाने पर डेटा प्रोसेसिंग के लिए MapReduce प्रोग्रामिंग मॉडल का कार्यान्वयन।
 * Hadoop ओजोन - (2020 में पेश किया गया) Hadoop के लिए एक ऑब्जेक्ट स्टोर

Hadoop शब्द का प्रयोग अक्सर आधार मॉड्यूल और उप-मॉड्यूल दोनों के लिए और पारिस्थितिकी तंत्र के लिए भी किया जाता है, या अतिरिक्त सॉफ़्टवेयर पैकेजों का संग्रह जो Hadoop के ऊपर या उसके साथ स्थापित किया जा सकता है, जैसे कि सुअर (प्रोग्रामिंग उपकरण),  Apache Hive ,  Apache HBase , Apache फीनिक्स,  Apache Spark ,  Apache ZooKeeper ,  Cloudera Impala ,  Apache Flume ,  Apache Sqoop , Apache ओजी, और  अपाचे तूफान । Apache Hadoop के MapReduce और HDFS घटक MapReduce और [[ Google  File System ]] पर Google पेपर्स से प्रेरित थे। Hadoop फ्रेमवर्क स्वयं ज्यादातर जावा (प्रोग्रामिंग भाषा)  में लिखा जाता है, C (प्रोग्रामिंग लैंग्वेज) में कुछ देशी कोड और  शेल स्क्रिप्ट्स  के रूप में लिखी गई  कमांड लाइन इंटरफेस  उपयोगिताओं के साथ। हालांकि MapReduce Java कोड सामान्य है, मानचित्र को लागू करने और उपयोगकर्ता के प्रोग्राम के कुछ हिस्सों को कम करने के लिए Hadoop स्ट्रीमिंग के साथ किसी  सी (प्रोग्रामिंग भाषा)  का उपयोग किया जा सकता है। हडूप पारिस्थितिकी तंत्र में अन्य परियोजनाएं समृद्ध उपयोगकर्ता इंटरफेस को उजागर करती हैं।

इतिहास
इसके सह-संस्थापकों, डॉग कटिंग  और  माइक कैफेरेला  के अनुसार, Hadoop की उत्पत्ति Google फ़ाइल सिस्टम पेपर थी जो अक्टूबर 2003 में प्रकाशित हुई थी।  इस पेपर ने Google के एक और पेपर को जन्म दिया –  MapReduce: बड़े समूहों पर सरलीकृत डाटा प्रोसेसिंग। विकास  अपाचे नच  परियोजना पर शुरू हुआ, लेकिन जनवरी 2006 में इसे नए हडूप उपप्रोजेक्ट में स्थानांतरित कर दिया गया। डौग कटिंग, जो याहू! उस समय, इसका नाम अपने बेटे के खिलौने हाथी के नाम पर रखा। नच से निकाले गए शुरुआती कोड में HDFS के लिए कोड की लगभग 5,000 लाइनें और MapReduce के लिए कोड की लगभग 6,000 लाइनें शामिल थीं।

मार्च 2006 में, ओवेन ओ'माल्ली Hadoop प्रोजेक्ट में शामिल होने वाले पहले कमिटर थे; Hadoop 0.1.0 को अप्रैल 2006 में रिलीज़ किया गया था। यह परियोजना में किए जा रहे योगदान के माध्यम से विकसित होना जारी है। Hadoop डिस्ट्रिब्यूटेड फ़ाइल सिस्टम के लिए सबसे पहला डिज़ाइन दस्तावेज़ ध्रुबा बोरठाकुर द्वारा 2007 में लिखा गया था।

आर्किटेक्चर
Hadoop में Hadoop कॉमन पैकेज शामिल है, जो फ़ाइल सिस्टम और ऑपरेटिंग सिस्टम स्तर का सार प्रदान करता है, एक MapReduce इंजन (या तो MapReduce/MR1 या YARN/MR2) और #Hadoop वितरित फाइल सिस्टम (HDFS)। हडूप कॉमन पैकेज में जेएआर (फाइल फॉर्मेट) | जावा आर्काइव (जेएआर) फाइलें और हडूप शुरू करने के लिए आवश्यक स्क्रिप्ट शामिल हैं।

काम के प्रभावी शेड्यूलिंग के लिए, प्रत्येक हडूप-संगत फाइल सिस्टम को स्थान जागरूकता प्रदान करनी चाहिए, जो कि रैक का नाम है, विशेष रूप से नेटवर्क स्विच जहां वर्कर नोड है। Hadoop एप्लिकेशन इस जानकारी का उपयोग उस नोड पर कोड निष्पादित करने के लिए कर सकते हैं जहां डेटा है, और, विफल होने पर, उसी रैक/स्विच पर बैकबोन ट्रैफ़िक को कम करने के लिए। कई रैक में डेटा रिडंडेंसी के लिए डेटा की प्रतिकृति बनाते समय HDFS इस विधि का उपयोग करता है। यह दृष्टिकोण रैक पावर आउटेज या स्विच विफलता के प्रभाव को कम करता है; यदि इनमें से कोई हार्डवेयर विफलता होती है, तो डेटा उपलब्ध रहेगा। एक छोटे Hadoop क्लस्टर में एक मास्टर और कई वर्कर नोड शामिल होते हैं। मास्टर नोड में एक जॉब ट्रैकर, टास्क ट्रैकर, नेमनोड और डेटानोड होते हैं। एक दास या कार्यकर्ता नोड डेटानोड और टास्कट्रैकर दोनों के रूप में कार्य करता है, हालांकि डेटा-ओनली और कंप्यूट-ओनली वर्कर नोड्स होना संभव है। ये आम तौर पर केवल गैर-मानक अनुप्रयोगों में उपयोग किए जाते हैं।

Hadoop को Java जावा क्रम पर्यावरण JRE) 1.6 या उच्चतर की आवश्यकता है। मानक स्टार्टअप और शटडाउन स्क्रिप्ट के लिए आवश्यक है कि क्लस्टर में नोड्स के बीच  सुरक्षित खोल  (SSH) स्थापित किया जाए।

एक बड़े क्लस्टर में, HDFS नोड्स फ़ाइल सिस्टम इंडेक्स को होस्ट करने के लिए समर्पित NameNode सर्वर के माध्यम से प्रबंधित किए जाते हैं, और एक द्वितीयक NameNode जो नामेनोड की मेमोरी संरचनाओं के स्नैपशॉट उत्पन्न कर सकता है, जिससे फ़ाइल-सिस्टम भ्रष्टाचार और डेटा की हानि को रोका जा सकता है। इसी तरह, एक स्टैंडअलोन जॉबट्रैकर सर्वर नोड्स में जॉब शेड्यूलिंग का प्रबंधन कर सकता है। जब Hadoop MapReduce का उपयोग एक वैकल्पिक फ़ाइल सिस्टम के साथ किया जाता है, तो HDFS के NameNode, द्वितीयक NameNode और DataNode आर्किटेक्चर को फ़ाइल-सिस्टम-विशिष्ट समकक्षों द्वारा प्रतिस्थापित किया जाता है।

Hadoop वितरित फाइल सिस्टम
Hadoop वितरित फ़ाइल सिस्टम  (HDFS) एक वितरित, स्केलेबल और पोर्टेबल वितरित फ़ाइल सिस्टम है, जिसे Hadoop फ्रेमवर्क के लिए Java में लिखा गया है।  POSIX  अनुपालन की कमी के कारण कुछ लोग इसे एक  वितरित डेटा स्टोर  मानते हैं, लेकिन यह शेल कमांड और जावा एप्लिकेशन प्रोग्रामिंग इंटरफेस (एपीआई) मेथड (कंप्यूटर प्रोग्रामिंग) प्रदान करता है जो अन्य फाइल सिस्टम के समान हैं। एक Hadoop उदाहरण को HDFS और MapReduce में विभाजित किया गया है। HDFS का उपयोग डेटा को स्टोर करने के लिए किया जाता है और MapReduce का उपयोग डेटा को प्रोसेस करने के लिए किया जाता है। एचडीएफएस की पांच सेवाएं इस प्रकार हैं:
 * 1) नाम नोड
 * 2) द्वितीयक नाम नोड
 * 3) जॉब ट्रैकर
 * 4) डेटा नोड
 * 5) टास्क ट्रैकर

शीर्ष तीन मास्टर सेवाएं/डेमन्स/नोड्स हैं और नीचे दो दास सेवाएं हैं। मास्टर सेवाएं एक दूसरे के साथ संवाद कर सकती हैं और उसी तरह दास सेवाएं एक दूसरे के साथ संवाद कर सकती हैं। नाम नोड एक मास्टर नोड है और डेटा नोड इसका संबंधित स्लेव नोड है और एक दूसरे के साथ बात कर सकता है।

नाम नोड: एचडीएफएस में केवल एक नाम नोड होता है जिसे मास्टर नोड कहा जाता है। मास्टर नोड फाइलों को ट्रैक कर सकता है, फाइल सिस्टम का प्रबंधन कर सकता है और इसमें सभी संग्रहीत डेटा का मेटा डेटा  है। विशेष रूप से, नाम नोड में ब्लॉक की संख्या, डेटा नोड के स्थान जिसमें डेटा संग्रहीत किया जाता है, जहां प्रतिकृति संग्रहीत की जाती है, और अन्य विवरण शामिल हैं। नाम नोड का क्लाइंट के साथ सीधा संपर्क है।

डेटा नोड: एक डेटा नोड इसमें डेटा को ब्लॉक के रूप में संग्रहीत करता है। इसे दास नोड के रूप में भी जाना जाता है और यह वास्तविक डेटा को एचडीएफएस में संग्रहीत करता है जो क्लाइंट को पढ़ने और लिखने के लिए जिम्मेदार होता है। ये गुलाम दानव हैं। प्रत्येक डेटा नोड हर 3 सेकंड में नाम नोड को एक हार्टबीट संदेश भेजता है और बताता है कि यह जीवित है। इस तरह जब नाम नोड को 2 मिनट के लिए डेटा नोड से दिल की धड़कन नहीं मिलती है, तो यह उस डेटा नोड को मृत मान लेगा और किसी अन्य डेटा नोड पर ब्लॉक प्रतिकृति की प्रक्रिया शुरू कर देगा।

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

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

एचडीएफएस बड़ी फाइलों को स्टोर करता है (आमतौर पर गीगाबाइट्स से टेराबाइट्स की रेंज में ) कई मशीनों में। यह कई मेजबानों में डेटा की प्रतिकृति (कंप्यूटर विज्ञान)  द्वारा विश्वसनीयता प्राप्त करता है, और इसलिए सैद्धांतिक रूप से  RAID  की आवश्यकता नहीं होती है। मेजबानों पर स्वतंत्र डिस्क (RAID) भंडारण की अनावश्यक सरणी (लेकिन इनपुट-आउटपुट (I/O) प्रदर्शन को बढ़ाने के लिए कुछ RAID कॉन्फ़िगरेशन अभी भी उपयोगी हैं)। डिफ़ॉल्ट प्रतिकृति मान, 3 के साथ, डेटा तीन नोड्स पर संग्रहीत होता है: दो एक ही रैक पर, और एक अलग रैक पर। डेटा नोड्स एक दूसरे से डेटा को पुनर्संतुलित करने, प्रतियों को इधर-उधर ले जाने और डेटा की प्रतिकृति को उच्च रखने के लिए बात कर सकते हैं। HDFS पूरी तरह से POSIX- संगत नहीं है, क्योंकि POSIX फाइल-सिस्टम की आवश्यकताएं Hadoop एप्लिकेशन के लक्ष्य लक्ष्यों से भिन्न होती हैं। पूरी तरह से POSIX-अनुपालन फ़ाइल-सिस्टम नहीं होने का ट्रेड-ऑफ़ डेटा  throughput  के लिए बढ़ा हुआ प्रदर्शन है और गैर-POSIX संचालन जैसे संलग्न के लिए समर्थन है। मई 2012 में, HDFS में उच्च-उपलब्धता क्षमताओं को जोड़ा गया, NameNode नामक मुख्य मेटाडेटा सर्वर को बैकअप पर मैन्युअल रूप से विफल होने देना। परियोजना ने स्वचालित विफलता-ओवरों का विकास भी शुरू कर दिया है।

एचडीएफएस फाइल सिस्टम में एक तथाकथित द्वितीयक नामेनोड शामिल है, एक भ्रामक शब्द है कि प्राथमिक नामेनोड के ऑफ़लाइन होने पर कुछ गलत तरीके से बैकअप नामेनोड के रूप में व्याख्या कर सकते हैं। वास्तव में, द्वितीयक नामेनोड नियमित रूप से प्राथमिक नामेनोड से जुड़ता है और प्राथमिक नामेनोड की निर्देशिका जानकारी का स्नैपशॉट बनाता है, जिसे सिस्टम तब स्थानीय या दूरस्थ निर्देशिकाओं में सहेजता है। इन चेकपॉइंट छवियों का उपयोग फ़ाइल-सिस्टम क्रियाओं के पूरे जर्नल को फिर से चलाने के बिना एक असफल प्राथमिक नामनोड को पुनरारंभ करने के लिए किया जा सकता है, फिर एक अप-टू-डेट निर्देशिका संरचना बनाने के लिए लॉग को संपादित करने के लिए। क्योंकि मेटाडेटा के भंडारण और प्रबंधन के लिए नामेनोड एकल बिंदु है, यह बड़ी संख्या में फ़ाइलों, विशेष रूप से बड़ी संख्या में छोटी फ़ाइलों का समर्थन करने के लिए एक अड़चन बन सकता है। एचडीएफएस फेडरेशन, एक नया अतिरिक्त, अलग-अलग नामनोड्स द्वारा कई नामस्थानों की अनुमति देकर इस समस्या से कुछ हद तक निपटने का लक्ष्य रखता है। इसके अलावा, HDFS में कुछ समस्याएँ हैं जैसे छोटी फ़ाइल समस्याएँ, मापनीयता समस्याएँ, एकल बिंदु विफलता (SPoF), और विशाल मेटाडेटा अनुरोधों में अड़चनें। एचडीएफएस का उपयोग करने का एक फायदा जॉब ट्रैकर और टास्क ट्रैकर के बीच डेटा जागरूकता है। जॉब ट्रैकर डेटा स्थान के बारे में जागरूकता के साथ टास्क ट्रैकर्स को मैप या जॉब को कम करता है। उदाहरण के लिए: यदि नोड A में डेटा (a, b, c) और नोड X में डेटा (x, y, z) है, तो जॉब ट्रैकर नोड A को मैप करने या (a, b, c) और नोड पर कार्यों को कम करने के लिए शेड्यूल करता है। X को मानचित्र निष्पादित करने या (x, y, z) पर कार्य कम करने के लिए निर्धारित किया जाएगा। यह नेटवर्क पर जाने वाले ट्रैफ़िक की मात्रा को कम करता है और अनावश्यक डेटा स्थानांतरण को रोकता है। जब Hadoop का उपयोग अन्य फाइल सिस्टम के साथ किया जाता है, तो यह लाभ हमेशा उपलब्ध नहीं होता है। यह कार्य-पूर्णता के समय पर महत्वपूर्ण प्रभाव डाल सकता है जैसा कि डेटा-गहन नौकरियों के साथ प्रदर्शित किया गया है। एचडीएफएस ज्यादातर अपरिवर्तनीय फाइलों के लिए डिज़ाइन किया गया था और समवर्ती लेखन संचालन की आवश्यकता वाले सिस्टम के लिए उपयुक्त नहीं हो सकता है।

लिनक्स और कुछ अन्य  यूनिक्स   यूजरस्पेस में फाइलसिस्टम  (FUSE)  वर्चुअल फाइल सिस्टम  में फाइलसिस्टम के साथ HDFS को सीधे  माउंट (कंप्यूटिंग)  किया जा सकता है।

मूल जावा एपीआई, थ्रिफ्ट (प्रोटोकॉल)  एपीआई के माध्यम से फ़ाइल का उपयोग प्राप्त किया जा सकता है (कई भाषाओं में क्लाइंट उत्पन्न करता है जैसे सी ++, जावा, पायथन, पीएचपी, रूबी, एरलांग, पर्ल, हास्केल, सी #,  कोको (एपीआई), स्मॉलटॉक, और  OCaml ), कमांड-लाइन इंटरफ़ेस,  HTTP  पर HDFS-UI  वेब अनुप्रयोग , या तृतीय-पक्ष नेटवर्क क्लाइंट लाइब्रेरी के माध्यम से। एचडीएफएस को विभिन्न हार्डवेयर प्लेटफार्मों में पोर्टेबिलिटी के लिए और विभिन्न अंतर्निहित ऑपरेटिंग सिस्टम के साथ संगतता के लिए डिज़ाइन किया गया है। HDFS डिज़ाइन पोर्टेबिलिटी की सीमाओं का परिचय देता है जिसके परिणामस्वरूप कुछ प्रदर्शन अड़चनें होती हैं, क्योंकि जावा कार्यान्वयन उन सुविधाओं का उपयोग नहीं कर सकता है जो उस प्लेटफॉर्म के लिए अनन्य हैं जिस पर HDFS चल रहा है। उद्यम स्तर के बुनियादी ढांचे में इसके व्यापक एकीकरण के कारण, बड़े पैमाने पर एचडीएफएस के प्रदर्शन की निगरानी एक महत्वपूर्ण मुद्दा बन गया है। एंड-टू-एंड प्रदर्शन की निगरानी के लिए डेटानोड्स, नामनोड्स और अंतर्निहित ऑपरेटिंग सिस्टम से मेट्रिक्स को ट्रैक करने की आवश्यकता होती है। HDFS के प्रदर्शन को ट्रैक करने के लिए वर्तमान में हॉर्टनवर्क्स # हॉर्टनवर्क्स डेटा प्लेटफ़ॉर्म (HDP), क्लाउडेरा  और  डाटाडॉग  सहित कई निगरानी प्लेटफ़ॉर्म हैं।

अन्य फाइल सिस्टम
हडूप सीधे किसी भी वितरित फ़ाइल सिस्टम के साथ काम करता है जिसे अंतर्निहित ऑपरेटिंग सिस्टम द्वारा केवल एक का उपयोग करके माउंट किया जा सकता है  यूआरएल; हालाँकि, यह एक मूल्य पर आता है - स्थानीयता का नुकसान। नेटवर्क ट्रैफ़िक को कम करने के लिए, Hadoop को यह जानना होगा कि कौन से सर्वर डेटा के सबसे करीब हैं, जानकारी जो Hadoop-विशिष्ट फ़ाइल सिस्टम ब्रिज प्रदान कर सकते हैं।

मई 2011 में, Apache Hadoop के साथ बंडल किए गए समर्थित फ़ाइल सिस्टम की सूची थी:


 * HDFS: Hadoop का अपना रैक-अवेयर फ़ाइल सिस्टम। यह स्टोरेज के दसियों पेटाबाइट्स को स्केल करने के लिए डिज़ाइन किया गया है और अंतर्निहित ऑपरेटिंग सिस्टम  के फ़ाइल सिस्टम के शीर्ष पर चलता है।
 * अपाचे हडूप ओजोन: अरबों छोटी फाइलों के लिए अनुकूलित एचडीएफएस-संगत ऑब्जेक्ट स्टोर लक्ष्यीकरण।
 * एफ़टीपी फाइल सिस्टम: यह अपने सभी डेटा को दूरस्थ रूप से सुलभ एफ़टीपी सर्वरों पर संग्रहीत करता है।
 * Amazon Simple Storage Service |Amazon S3 (Simple Storage Service) ऑब्जेक्ट स्टोरेज: यह Amazon Elastic Compute Cloud  सर्वर-ऑन-डिमांड इंफ्रास्ट्रक्चर पर होस्ट किए गए क्लस्टर पर लक्षित है। इस फाइल सिस्टम में कोई रैक-जागरूकता नहीं है, क्योंकि यह सब रिमोट है।
 * Windows Azure स्टोरेज ब्लॉब्स (WASB) फ़ाइल सिस्टम: यह HDFS का एक विस्तार है जो Hadoop के वितरण को Azure ब्लॉब स्टोर्स में डेटा को स्थायी रूप से क्लस्टर में स्थानांतरित किए बिना एक्सेस करने की अनुमति देता है।

कई तृतीय-पक्ष फ़ाइल सिस्टम ब्रिज भी लिखे गए हैं, जिनमें से कोई भी वर्तमान में हडूप वितरण में नहीं है। हालाँकि, Hadoop के कुछ व्यावसायिक वितरण डिफ़ॉल्ट के रूप में वैकल्पिक फ़ाइल सिस्टम के साथ शिप होते हैं – विशेष रूप से आईबीएम  और  मैपआर ।


 * 2009 में, IBM ने आईबीएम जनरल समानांतर फाइल सिस्टम  पर Hadoop को चलाने पर चर्चा की। स्रोत कोड अक्टूबर 2009 में प्रकाशित हुआ था।
 * अप्रैल 2010 में, Parascale ने Hadoop को Parascale फ़ाइल सिस्टम के विरुद्ध चलाने के लिए स्रोत कोड प्रकाशित किया।
 * अप्रैल 2010 में, ऐपिस्ट्री ने अपने CloudIQ स्टोरेज उत्पाद के साथ उपयोग के लिए एक Hadoop फ़ाइल सिस्टम ड्राइवर जारी किया।
 * जून 2010 में, Hewlett-Packard  ने एक स्थान-जागरूक  IBRIX Fusion  फ़ाइल सिस्टम ड्राइवर पर चर्चा की।
 * मई 2011 में, MapR|MapR Technologies Inc. ने Hadoop, MapR FS  के लिए एक वैकल्पिक फ़ाइल सिस्टम की उपलब्धता की घोषणा की, जिसने HDFS फ़ाइल सिस्टम को पूर्ण रैंडम-एक्सेस रीड/राइट फ़ाइल सिस्टम से बदल दिया।

जॉबट्रैकर और टास्कट्रैकर: मैपरेडस इंजन
फाइल सिस्टम के ऊपर MapReduce Engine आता है, जिसमें एक JobTracker होता है, जिसके लिए क्लाइंट एप्लिकेशन MapReduce जॉब सबमिट करते हैं। जॉबट्रैकर काम को क्लस्टर में उपलब्ध टास्कट्रैकर नोड्स पर धकेलता है, काम को यथासंभव डेटा के करीब रखने का प्रयास करता है। रैक-अवेयर फाइल सिस्टम के साथ, जॉबट्रैकर जानता है कि किस नोड में डेटा है, और कौन सी अन्य मशीनें पास में हैं। यदि कार्य को वास्तविक नोड पर होस्ट नहीं किया जा सकता है जहां डेटा रहता है, उसी रैक में नोड्स को प्राथमिकता दी जाती है। यह मुख्य बैकबोन नेटवर्क पर नेटवर्क ट्रैफिक को कम करता है। यदि कोई टास्कट्रैक विफल हो जाता है या समय समाप्त हो जाता है, तो कार्य का वह भाग पुनर्निर्धारित किया जाता है। प्रत्येक नोड पर टास्कट्रैकर एक अलग जावा वर्चुअल मशीन  (जेवीएम) प्रक्रिया को जन्म देता है ताकि टास्कट्रैकर को विफल होने से रोका जा सके यदि रनिंग जॉब अपने जेवीएम को क्रैश कर देता है। उसकी स्थिति की जांच करने के लिए हर कुछ मिनटों में टास्कट्रैकर से जॉबट्रैकर को एक दिल की धड़कन भेजी जाती है। जॉब ट्रैकर और टास्कट्रैकर की स्थिति और जानकारी  जेटी (वेब ​​​​सर्वर)  द्वारा प्रदर्शित की जाती है और इसे वेब ब्राउज़र से देखा जा सकता है।

इस दृष्टिकोण की ज्ञात सीमाएँ हैं:


 * 1) टास्कट्रैकर्स को काम का आवंटन बहुत आसान है। प्रत्येक टास्कट्रैकर में कई उपलब्ध स्लॉट होते हैं (जैसे 4 स्लॉट)। प्रत्येक सक्रिय नक्शा या कम कार्य एक स्लॉट लेता है। जॉब ट्रैकर उपलब्ध स्लॉट के साथ डेटा के निकटतम ट्रैकर को कार्य आवंटित करता है। आवंटित मशीन के वर्तमान भार (कंप्यूटिंग) पर कोई विचार नहीं है, और इसलिए इसकी वास्तविक उपलब्धता है।
 * 2) यदि एक टास्कट्रैकर बहुत धीमा है, तो यह पूरे MapReduce कार्य में देरी कर सकता है –  विशेष रूप से अंत की ओर, जब सब कुछ सबसे धीमे कार्य की प्रतीक्षा में समाप्त हो सकता है। सट्टा निष्पादन सक्षम होने के साथ, हालांकि, एक ही कार्य को कई स्लेव नोड्स पर निष्पादित किया जा सकता है।

निर्धारण
डिफ़ॉल्ट रूप से Hadoop FIFO (कंप्यूटिंग और इलेक्ट्रॉनिक्स) शेड्यूलिंग का उपयोग करता है, और वैकल्पिक रूप से 5 शेड्यूलिंग प्राथमिकताओं को कार्य कतार से कार्य शेड्यूल करने के लिए उपयोग करता है। संस्करण 0.19 में जॉब शेड्यूलर को वैकल्पिक शेड्यूलर (जैसे कि फेयर शेड्यूलर या कैपेसिटी शेड्यूलर, आगे वर्णित है) का उपयोग करने की क्षमता को जोड़ते हुए, जॉबट्रैकर से रिफैक्टर किया गया था।

फेयर शेड्यूलर
फेयर शेड्यूलर फेसबुक  द्वारा विकसित किया गया था। फेयर शेड्यूलर का लक्ष्य उत्पादन कार्यों के लिए छोटी नौकरियों और  सेवा की गुणवत्ता  (क्यूओएस) के लिए तेजी से प्रतिक्रिया समय प्रदान करना है। फेयर शेड्यूलर की तीन बुनियादी अवधारणाएँ हैं।
 * 1) नौकरियों को पूल (कंप्यूटर साइंस) में बांटा गया है।
 * 2) प्रत्येक पूल को एक गारंटीकृत न्यूनतम शेयर दिया जाता है।
 * 3) अतिरिक्त क्षमता को नौकरियों के बीच विभाजित किया गया है।

डिफ़ॉल्ट रूप से, अवर्गीकृत कार्य डिफ़ॉल्ट पूल में जाते हैं। पूल को मैप स्लॉट की न्यूनतम संख्या निर्दिष्ट करनी होती है, स्लॉट को कम करना होता है, साथ ही रनिंग जॉब की संख्या पर एक सीमा होती है।

क्षमता अनुसूचक
क्षमता अनुसूचक याहू द्वारा विकसित किया गया था। क्षमता अनुसूचक कई सुविधाओं का समर्थन करता है जो निष्पक्ष अनुसूचक के समान हैं।
 * 1) कतारों को कुल संसाधन क्षमता का एक अंश आवंटित किया जाता है।
 * 2) कतारों को उनकी कुल क्षमता से अधिक मुफ्त संसाधन आवंटित किए जाते हैं।
 * 3) एक कतार के भीतर, उच्च स्तर की प्राथमिकता वाली नौकरी की कतार के संसाधनों तक पहुंच होती है।

नौकरी चलने के बाद कोई प्रीमेशन (कंप्यूटिंग) नहीं है।

Hadoop 1 और Hadoop 2 (YARN)
के बीच अंतर Hadoop 1 और Hadoop 2 के बीच सबसे बड़ा अंतर YARN (फिर भी एक अन्य संसाधन वार्ताकार) का जोड़ है, जिसने Hadoop के पहले संस्करण में MapReduce इंजन को बदल दिया। यार्न प्रभावी ढंग से विभिन्न अनुप्रयोगों के लिए संसाधन आवंटित करने का प्रयास करता है। यह दो डेमॉन चलाता है, जो दो अलग-अलग कार्यों का ख्याल रखता है: संसाधन प्रबंधक, जो जॉब ट्रैकिंग करता है और अनुप्रयोगों को संसाधन आवंटन करता है, एप्लिकेशन मास्टर, जो निष्पादन की प्रगति की निगरानी करता है।

हडूप 2 और हडूप 3
के बीच अंतर Hadoop 3 द्वारा प्रदान की जाने वाली महत्वपूर्ण विशेषताएं हैं। उदाहरण के लिए, जबकि Hadoop 2 में एक ही नामेनोड है, Hadoop 3 कई नाम नोड्स को सक्षम बनाता है, जो विफलता की समस्या के एकल बिंदु को हल करता है।

Hadoop 3 में, डॉकटर (सॉफ्टवेयर) के सिद्धांत पर काम करने वाले कंटेनर हैं, जो एप्लिकेशन डेवलपमेंट पर लगने वाले समय को कम करते हैं।

सबसे बड़े परिवर्तनों में से एक यह है कि Hadoop 3 विलोपन कोड  के साथ स्टोरेज ओवरहेड को कम करता है।

इसके अलावा, Hadoop 3 क्लस्टर के भीतर GPU हार्डवेयर के उपयोग की अनुमति देता है, जो कि Hadoop क्लस्टर पर गहन शिक्षण एल्गोरिदम को निष्पादित करने के लिए एक बहुत बड़ा लाभ है।

अन्य अनुप्रयोग
HDFS MapReduce नौकरियों तक ही सीमित नहीं है। इसका उपयोग अन्य अनुप्रयोगों के लिए किया जा सकता है, जिनमें से कई अपाचे में विकास के अधीन हैं। सूची में HBase  डेटाबेस,  Apache Mahout   मशीन लर्निंग  सिस्टम और Apache Hive  डेटा वेयरहाउस  शामिल हैं। सैद्धांतिक रूप से, Hadoop का उपयोग किसी भी ऐसे कार्यभार के लिए किया जा सकता है जो वास्तविक समय के बजाय बैच-उन्मुख है, बहुत डेटा-गहन है, और  समानांतर कंप्यूटिंग  से लाभान्वित होता है। इसका उपयोग  लैम्ब्डा वास्तुकला, अपाचे स्टॉर्म,  अपाचे फ्लैश  और अपाचे स्पार्क # स्पार्क स्ट्रीमिंग जैसे रीयल-टाइम सिस्टम के पूरक के लिए भी किया जा सकता है। Hadoop के व्यावसायिक अनुप्रयोगों में शामिल हैं:
 * लॉग या clickstream  विश्लेषण
 * मार्केटिंग एनालिटिक्स
 * मशीन लर्निंग और डेटा माइनिंग
 * मूर्ति प्रोद्योगिकी
 * एक्सएमएल संदेश प्रसंस्करण
 * वेब क्रॉलिंग
 * संबंधपरक और सारणीबद्ध डेटा सहित अनुपालन के लिए अभिलेखीय कार्य

प्रमुख उपयोग के मामले
19 फरवरी 2008 को याहू! Inc. ने लॉन्च किया जो उन्होंने दावा किया कि यह दुनिया का सबसे बड़ा Hadoop प्रोडक्शन एप्लिकेशन था। याहू! सर्च वेबमैप एक हडूप एप्लिकेशन है जो लिनक्स क्लस्टर पर 10,000 से अधिक मल्टी कोर  और उत्पादित डेटा के साथ चलता है जो प्रत्येक याहू में उपयोग किया गया था! वेब खोज क्वेरी। Yahoo! में कई Hadoop क्लस्टर हैं। और कोई भी HDFS फ़ाइल सिस्टम या MapReduce जॉब कई डेटा केंद्रों में विभाजित नहीं है। प्रत्येक Hadoop क्लस्टर नोड Linux छवि को बूटस्ट्रैप करता है, जिसमें Hadoop वितरण भी शामिल है। कार्य जो क्लस्टर करते हैं वह याहू के लिए सूचकांक गणनाओं को शामिल करने के लिए जाना जाता है! खोज इंजन। जून 2009 में, याहू! अपने Hadoop वर्जन के सोर्स कोड को ओपन-सोर्स कम्युनिटी के लिए उपलब्ध कराया। 2010 में, फेसबुक ने दावा किया कि उनके पास 21 पेटाबाइट  स्टोरेज के साथ दुनिया का सबसे बड़ा Hadoop क्लस्टर है। जून 2012 में, उन्होंने घोषणा की कि डेटा 100 पीबी तक बढ़ गया है और बाद में उस वर्ष उन्होंने घोषणा की कि डेटा प्रति दिन लगभग आधा पीबी बढ़ रहा था।

, हडूप को अपनाना व्यापक हो गया था: फॉर्च्यून 50 कंपनियों में से आधे से अधिक ने हडूप का इस्तेमाल किया।

क्लाउड में Hadoop होस्टिंग
Hadoop को पारंपरिक ऑनसाइट डेटासेंटर के साथ-साथ क्लाउड कम्प्यूटिंग  में भी तैनात किया जा सकता है। क्लाउड संगठनों को हार्डवेयर या विशिष्ट सेटअप विशेषज्ञता प्राप्त करने की आवश्यकता के बिना Hadoop को परिनियोजित करने की अनुमति देता है।

वाणिज्यिक समर्थन
कई कंपनियां हडूप के लिए व्यावसायिक कार्यान्वयन या समर्थन प्रदान करती हैं।

ब्रांडिंग
Apache Software Foundation ने कहा है कि Apache Hadoop प्रोजेक्ट द्वारा आधिकारिक तौर पर जारी किए गए सॉफ़्टवेयर को ही Apache Hadoop या Apache Hadoop के वितरण कहा जा सकता है। उत्पादों का नामकरण और अन्य विक्रेताओं से व्युत्पन्न कार्य और संगत शब्द Hadoop डेवलपर समुदाय के भीतर कुछ हद तक विवादास्पद हैं।

पेपर
कुछ पेपर्स ने Hadoop और बिग डेटा प्रोसेसिंग के जन्म और विकास को प्रभावित किया। इनमें से कुछ हैं:
 * जेफरी डीन, संजय घेमावत (2004) MapReduce: बड़े समूहों पर सरलीकृत डाटा प्रोसेसिंग, गूगल। इस पेपर ने डॉग कटिंग को मैप-रिड्यूस फ्रेमवर्क के ओपन-सोर्स कार्यान्वयन को विकसित करने के लिए प्रेरित किया। उन्होंने अपने बेटे के खिलौने वाले हाथी के नाम पर इसका नाम हडूप रखा।
 * माइकल फ्रैंकलिन, एलोन हैलेवी, डेविड मैयर (2005) डेटाबेस से डेटास्पेस तक: सूचना प्रबंधन के लिए एक नया सार। लेखक सभी डेटा स्वरूपों को स्वीकार करने और डेटा एक्सेस के लिए एपीआई प्रदान करने के लिए स्टोरेज सिस्टम की आवश्यकता पर प्रकाश डालते हैं जो डेटा की स्टोरेज सिस्टम की समझ के आधार पर विकसित होते हैं।
 * फे चांग एट अल। (2006) बिगटेबल: संरचित डेटा के लिए एक वितरित संग्रहण प्रणाली, Google।
 * रॉबर्ट कल्मन एट अल। (2008) एच-स्टोर: एक उच्च-प्रदर्शन, वितरित मुख्य मेमोरी लेनदेन प्रसंस्करण प्रणाली

यह भी देखें

 * अपाचे संचय - सुरक्षित  बड़ी मेज
 * Apache Cassandra, एक स्तंभ-उन्मुख डेटाबेस जो Hadoop से पहुँच का समर्थन करता है
 * Apache CouchDB, एक डेटाबेस जो दस्तावेज़ों के लिए JSON का उपयोग करता है, MapReduce प्रश्नों के लिए JavaScript, और API के लिए नियमित HTTP
 * Apache HCatalog, Hadoop के लिए एक टेबल और स्टोरेज मैनेजमेंट लेयर
 * बड़ा डेटा
 * डेटा गहन कंप्यूटिंग
 * एचपीसीसी -  लेक्सिसनेक्सिस  रिस्क सॉल्यूशंस हाई परफॉर्मेंस कंप्यूटिंग क्लस्टर
 * हाइपरटेबल - एचबेस विकल्प
 * क्षेत्र/क्षेत्र - खुला स्रोत वितरित भंडारण और प्रसंस्करण
 * संसाधन प्रबंधन के लिए सरल लिनक्स उपयोगिता

इस पेज में लापता आंतरिक लिंक की सूची

 * बड़ा डेटा
 * जार (फ़ाइल स्वरूप)
 * वितरित प्रसंस्करण
 * समानांतर फ़ाइल सिस्टम
 * अपाचे ओजी
 * अपाचे फीनिक्स
 * विधि (कंप्यूटर प्रोग्रामिंग)
 * दुरस्तह प्रकिया कॉल
 * असफल ओवर
 * लोड (कंप्यूटिंग)
 * फीफो (कंप्यूटिंग और इलेक्ट्रॉनिक्स)
 * पूल (कंप्यूटर विज्ञान)
 * पूर्वक्रय (कम्प्यूटिंग)
 * डॉकर (सॉफ्टवेयर)