अपाचे हडूप

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

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

आधार अपाचे हडूप रूपरेखा निम्नलिखित अनुखंड से बना है:


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

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

अपाचे हडूप के मैपरेडुस और एचडीएफएस घटक मैपरेडुस और गूगल फाइल सिस्टम पर गूगल पेपर्स से प्रेरित थे।

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

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

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

आर्किटेक्चर
हडूप में हडूप कॉमन पैकेज सम्मिलित है, जो फ़ाइल सिस्टम और ऑपरेटिंग सिस्टम स्तर का सार प्रदान करता है, मैपरेडुस इंजन (या तो मैपरेडस/एमआर1 या यार्न/एमआर2) और हडूप डिस्ट्रिब्यूटेड फाइल सिस्टम (एचडीएफएस) और हडूप कॉमन पैकेज में जावा आर्काइव (जेएआर) फाइलें और हडूप शुरू करने के लिए आवश्यक स्क्रिप्ट सम्मिलित हैं।

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

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

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

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

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

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

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

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

जॉब ट्रैकर:
जॉब ट्रैकर क्लाइंट से मैप रिड्यूस निष्पादन के लिए अनुरोध प्राप्त करता है। जॉब ट्रैकर डेटा के स्थान के बारे में जानने के लिए नेम नोड से बात करता है जिसका उपयोग प्रसंस्करण में किया जाएगा। नेम नोड आवश्यक प्रसंस्करण डेटा के मेटाडेटा के साथ प्रतिक्रिया करता है।

टास्क ट्रैकर:
यह जॉब ट्रैकर के लिए स्लेव नोड है और यह जॉब ट्रैकर से टास्क लेगा। यह जॉब ट्रैकर से कोड भी प्राप्त करता है। टास्क ट्रैकर कोड लेगा और फाइल पर लागू होगा। उस कोड को फाइल पर लगाने की प्रक्रिया को मैपर के नाम से जाना जाता है।

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

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

मई 2012 में, एचडीएफएस में उच्च-उपलब्धता क्षमताओं को जोड़ा गया, जिससे मुख्य मेटाडेटा सर्वर जिसे नेमनोड कहा जाता है, मैन्युअल रूप से बैकअप पर विफल हो जाता है। परियोजना ने स्वचालित विफलता-ओवरों का विकास भी प्रारंभ कर दिया है।

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

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

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

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

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

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

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

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


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

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


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

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

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


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

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

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

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

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

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

हडूप 1 और हडूप 2 (YARN) के बीच अंतर
हडूप 1 और हडूप 2 के बीच सबसे बड़ा अंतर YARN (फिर भी अन्य संसाधन वार्ताकार) का जोड़ है, जिसने हडूप के पहले संस्करण में मैपरेडुस इंजन को बदल दिया।

यार्न प्रभावी ढंग से विभिन्न अनुप्रयोगों के लिए संसाधन आवंटित करने का प्रयास करता है। यह दो डेमॉन चलाता है, जो दो अलग-अलग कार्यों का ख्याल रखता है: संसाधन प्रबंधक, जो जॉब ट्रैकिंग करता है और अनुप्रयोगों को संसाधन आवंटन करता है, एप्लिकेशन मास्टर, जो निष्पादन की प्रगति की निगरानी करता है।

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

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

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

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

अन्य अनुप्रयोग
एचडीएफएस मैपरेडुस नौकरियों तक ही सीमित नहीं है। इसका उपयोग अन्य अनुप्रयोगों के लिए किया जा सकता है, जिनमें से कई अपाचे में विकास के अधीन हैं। सूची में एचबेस डेटाबेस, अपाचे मेहाउट मशीन लर्निंग सिस्टम और अपाचे Hive डेटा वेयरहाउस सम्मिलित हैं। सैद्धांतिक रूप से, हडूप का उपयोग किसी भी ऐसे कार्यभार के लिए किया जा सकता है जो वास्तविक समय के अतिरिक्त बैच-उन्मुख है, बहुत डेटा-गहन है, और समानांतर कंप्यूटिंग से लाभान्वित होता है। इसका उपयोग लैम्ब्डा वास्तुकला, अपाचे स्टॉर्म, अपाचे फ्लैश और अपाचे स्पार्क जैसे रीयल-टाइम सिस्टम के पूरक के लिए भी किया जा सकता है।

हडूप के व्यावसायिक अनुप्रयोगों में सम्मिलित हैं:
 * लॉग या क्लिकस्ट्रीम विश्लेषण
 * मार्केटिंग एनालिटिक्स
 * मशीन लर्निंग और डेटा माइनिंग
 * मूर्ति प्रोद्योगिकी
 * एक्सएमएल संदेश प्रसंस्करण
 * वेब क्रॉलिंग
 * संबंधपरक और सारणीबद्ध डेटा सहित अनुपालन के लिए अभिलेखीय कार्य

प्रमुख उपयोग के स्थितियां
19 फरवरी 2008 को याहू!इंक ने लॉन्च किया जो उन्होंने दावा किया कि यह दुनिया का सबसे बड़ा हडूप प्रोडक्शन एप्लिकेशन था। याहू! सर्च वेबमैप एक हडूप एप्लिकेशन है जो 10,000 से अधिक मल्टी कोर वाले लिनक्स क्लस्टर पर उत्पादित डेटा के साथ चलता है जो प्रत्येक याहू! वेब खोज क्वेरी याहू! में उपयोग किया गया था । में कई हडूप क्लस्टर हैं। और कोई भी एचडीएफएस फ़ाइल सिस्टम या मैपरेडुस जॉब कई डेटा केंद्रों में विभाजित नहीं है। प्रत्येक हडूप क्लस्टर नोडलिनक्स छवि को बूटस्ट्रैप करता है, जिसमें हडूप वितरण भी सम्मिलित है। कार्य जो क्लस्टर करते हैं वह याहू! के लिए सूचकांक गणनाओं को सम्मिलित करने के लिए जाना जाता है खोज इंजन जून 2009 में, याहू! अपने हडूप वर्जन के सोर्स कोड को ओपन-सोर्स कम्युनिटी के लिए उपलब्ध कराया।

2010 में, फेसबुक ने दावा किया कि उनके पास 21 पेटाबाइट स्टोरेज के साथ विश्व का सबसे बड़ा हडूप क्लस्टर है। जून 2012 में, उन्होंने घोषणा की कि डेटा 100 पीबी तक बढ़ गया है और बाद में उस वर्ष उन्होंने घोषणा की कि डेटा प्रति दिन लगभग आधा पीबी बढ़ रहा था।

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

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

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

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

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

यह भी देखें

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

ग्रन्थसूची