YARN

From binaryoption
Jump to navigation Jump to search
Баннер1

YARN: बिग डेटा प्रोसेसिंग के लिए एक संसाधन प्रबंधक

परिचय YARN (Yet Another Resource Negotiator) अपाचे Hadoop इकोसिस्टम का एक कोर घटक है। यह Hadoop 2.0 में पेश किया गया था और इसका उद्देश्य Hadoop की स्केलेबिलिटी और लचीलापन को बढ़ाना था। परंपरागत MapReduce मॉडल में, संसाधन प्रबंधन और कार्य शेड्यूलिंग एक ही फ्रेमवर्क द्वारा संभाली जाती थी। YARN ने इन दोनों कार्यों को अलग करके Hadoop को अधिक बहुमुखी और विभिन्न प्रकार के प्रोसेसिंग फ्रेमवर्क का समर्थन करने में सक्षम बनाया। यह लेख शुरुआती लोगों के लिए YARN की अवधारणाओं, आर्किटेक्चर, और प्रमुख घटकों का विस्तृत विवरण प्रदान करता है।

YARN का विकास और आवश्यकता Hadoop 1.0 में, MapReduce फ्रेमवर्क ही क्लस्टर संसाधनों का प्रबंधन करता था। इसका मतलब था कि MapReduce जॉब्स को ही क्लस्टर पर चलने की अनुमति थी। अन्य प्रोसेसिंग फ्रेमवर्क, जैसे कि स्पार्क, फ्लिंक, और टेज़, Hadoop क्लस्टर पर सीधे नहीं चल सकते थे। इस सीमा को दूर करने और Hadoop को अधिक लचीला बनाने के लिए YARN विकसित किया गया।

YARN का मुख्य उद्देश्य क्लस्टर संसाधनों का एक सामान्य प्रबंधन ढांचा प्रदान करना था ताकि विभिन्न प्रोसेसिंग फ्रेमवर्क एक ही क्लस्टर पर एक साथ चल सकें। यह Hadoop को एक सच्चे बिग डेटा प्लेटफॉर्म में बदलने में मदद करता है।

YARN आर्किटेक्चर YARN आर्किटेक्चर को दो मुख्य भागों में विभाजित किया जा सकता है:

  • **Resource Manager (RM):** यह क्लस्टर में सभी संसाधनों का प्रबंधन करता है। यह एप्लिकेशन मास्टर्स से संसाधनों के लिए अनुरोध प्राप्त करता है और उन्हें नोड मैनेजरों को आवंटित करता है।
  • **Node Manager (NM):** यह प्रत्येक नोड पर चलता है और उस नोड पर उपलब्ध संसाधनों का प्रबंधन करता है। यह Resource Manager से प्राप्त निर्देशों का पालन करता है और कंटेनर बनाता है और प्रबंधित करता है।

YARN के मुख्य घटक YARN में कई महत्वपूर्ण घटक होते हैं जो मिलकर काम करते हैं ताकि क्लस्टर संसाधनों का प्रभावी ढंग से प्रबंधन किया जा सके।

  • **ResourceManager (RM):**
   *   **Scheduler:** यह संसाधनों के आवंटन के लिए जिम्मेदार है। यह विभिन्न शेड्यूलिंग एल्गोरिदम का उपयोग कर सकता है, जैसे कि FIFO Scheduler, Capacity Scheduler, और Fair Scheduler।
   *   **ApplicationsManager:** यह एप्लिकेशन मास्टर्स को ट्रैक करता है और एप्लिकेशन की स्थिति का प्रबंधन करता है।
  • **NodeManager (NM):**
   *   **Containers:** यह प्रोसेसर, मेमोरी, डिस्क, और नेटवर्क बैंडविड्थ जैसे संसाधनों का एक समूह है। YARN एप्लिकेशन इन कंटेनरों के अंदर चलते हैं।
   *   **AuxiliaryServices:** यह विभिन्न सहायक सेवाएं प्रदान करता है, जैसे कि लॉगिंग और मेट्रिक्स संग्रह।
  • **ApplicationMaster:** यह प्रत्येक एप्लिकेशन के लिए एक प्रक्रिया है जो एप्लिकेशन की जीवनचक्र का प्रबंधन करती है। यह Resource Manager से संसाधनों के लिए अनुरोध करता है और Node Manager को निर्देश देता है।
  • **Client:** यह एप्लिकेशन सबमिट करने और एप्लिकेशन की स्थिति की निगरानी के लिए उपयोग किया जाता है।

YARN की कार्यप्रणाली YARN की कार्यप्रणाली को निम्नलिखित चरणों में समझा जा सकता है:

1. **एप्लिकेशन सबमिशन:** क्लाइंट एप्लिकेशन को Resource Manager को सबमिट करता है। 2. **एप्लिकेशन मास्टर लॉन्च:** Resource Manager एक नया ApplicationMaster लॉन्च करता है। 3. **संसाधन अनुरोध:** ApplicationMaster Resource Manager से संसाधनों के लिए अनुरोध करता है। 4. **संसाधन आवंटन:** Resource Manager नोड मैनेजरों को कंटेनर आवंटित करता है। 5. **टास्क लॉन्च:** ApplicationMaster कंटेनरों में टास्क लॉन्च करता है। 6. **टास्क निष्पादन:** टास्क कंटेनरों के अंदर निष्पादित होते हैं। 7. **टास्क पूरा होना:** टास्क पूरा होने के बाद, ApplicationMaster Resource Manager को सूचित करता है। 8. **एप्लिकेशन पूरा होना:** सभी टास्क पूरा होने के बाद, ApplicationMaster एप्लिकेशन को पूरा घोषित करता है।

YARN शेड्यूलर YARN कई विभिन्न शेड्यूलर प्रदान करता है जो क्लस्टर संसाधनों के आवंटन को नियंत्रित करते हैं।

  • **FIFO Scheduler:** यह सबसे सरल शेड्यूलर है। यह एप्लिकेशन को सबमिशन के क्रम में संसाधित करता है।
  • **Capacity Scheduler:** यह क्लस्टर संसाधनों को विभिन्न कतारों में विभाजित करता है। प्रत्येक कतार को एक निश्चित मात्रा में संसाधन आवंटित किया जाता है।
  • **Fair Scheduler:** यह क्लस्टर संसाधनों को सभी एप्लिकेशन के बीच समान रूप से वितरित करता है।

YARN और MapReduce YARN के आने से पहले, MapReduce ही Hadoop क्लस्टर पर चलने वाला एकमात्र फ्रेमवर्क था। YARN ने Hadoop को अधिक बहुमुखी बनाया और अन्य प्रोसेसिंग फ्रेमवर्क, जैसे कि स्पार्क, फ्लिंक, और तेज़, को Hadoop क्लस्टर पर चलने की अनुमति दी।

MapReduce अब YARN के ऊपर चलता है। इसका मतलब है कि MapReduce एप्लिकेशन Resource Manager से संसाधनों के लिए अनुरोध करते हैं और Node Manager को निर्देश देते हैं। यह Hadoop क्लस्टर के संसाधनों का अधिक कुशल उपयोग करने में मदद करता है।

अन्य फ्रेमवर्क के साथ YARN YARN विभिन्न प्रकार के प्रोसेसिंग फ्रेमवर्क का समर्थन करता है, जिनमें शामिल हैं:

  • स्पार्क: यह एक तेज़ और सामान्य-उद्देश्यीय क्लस्टर कंप्यूटिंग सिस्टम है।
  • फ्लिंक: यह एक स्ट्रीम प्रोसेसिंग फ्रेमवर्क है।
  • टेज़: यह एक डेटाफ्लो प्रोग्रामिंग फ्रेमवर्क है।
  • ड्रिल: यह एक वितरित SQL क्वेरी इंजन है।
  • पिग: यह एक उच्च-स्तरीय डेटाफ्लो भाषा है।
  • Hive: यह एक डेटा वेयरहाउसिंग सिस्टम है।

YARN का उपयोग करने के फायदे YARN का उपयोग करने के कई फायदे हैं, जिनमें शामिल हैं:

  • **स्केलेबिलिटी:** YARN Hadoop क्लस्टर को बड़े पैमाने पर स्केल करने की अनुमति देता है।
  • **लचीलापन:** YARN विभिन्न प्रकार के प्रोसेसिंग फ्रेमवर्क का समर्थन करता है।
  • **संसाधन उपयोग:** YARN क्लस्टर संसाधनों का अधिक कुशल उपयोग करने में मदद करता है।
  • **बहु-किरायेदारी:** YARN एक ही क्लस्टर पर कई एप्लिकेशन को एक साथ चलाने की अनुमति देता है।
  • **रियल-टाइम प्रोसेसिंग:** YARN रियल-टाइम प्रोसेसिंग के लिए उपयुक्त है।

YARN कॉन्फ़िगरेशन YARN को कॉन्फ़िगर करने के लिए कई प्रमुख पैरामीटर हैं जिन पर ध्यान देने की आवश्यकता है।

  • **yarn.resourcemanager.hostname:** यह Resource Manager का होस्टनाम निर्दिष्ट करता है।
  • **yarn.nodemanager.aux-services:** यह Node Manager द्वारा प्रदान की जाने वाली सहायक सेवाओं को निर्दिष्ट करता है।
  • **yarn.scheduler.capacity.maximum-allocation-mb:** यह एक कंटेनर को आवंटित की जा सकने वाली अधिकतम मेमोरी को निर्दिष्ट करता है।
  • **yarn.scheduler.capacity.maximum-allocation-vcores:** यह एक कंटेनर को आवंटित किए जा सकने वाले अधिकतम वर्चुअल कोर को निर्दिष्ट करता है।

YARN मॉनिटरिंग YARN क्लस्टर की निगरानी के लिए कई उपकरण उपलब्ध हैं।

  • **YARN Web UI:** यह YARN क्लस्टर की स्थिति और प्रदर्शन की निगरानी के लिए एक वेब-आधारित इंटरफ़ेस है।
  • **Ganglia:** यह एक वितरित निगरानी प्रणाली है।
  • **Nagios:** यह एक लोकप्रिय निगरानी प्रणाली है।

YARN सुरक्षा YARN सुरक्षा के लिए कई तंत्र प्रदान करता है, जिनमें शामिल हैं:

  • **Authentication:** यह उपयोगकर्ताओं की पहचान को प्रमाणित करता है।
  • **Authorization:** यह उपयोगकर्ताओं को क्लस्टर संसाधनों तक पहुंचने की अनुमति देता है।
  • **Encryption:** यह डेटा को एन्क्रिप्ट करता है।

YARN के भविष्य की दिशा YARN का विकास जारी है और भविष्य में कई नई सुविधाएँ और सुधार आने की उम्मीद है। कुछ महत्वपूर्ण दिशाओं में शामिल हैं:

  • **बेहतर स्केलेबिलिटी:** YARN को और भी बड़े क्लस्टर को संभालने के लिए स्केलेबल बनाने पर काम चल रहा है।
  • **बेहतर संसाधन प्रबंधन:** YARN के संसाधन प्रबंधन एल्गोरिदम को बेहतर बनाने पर काम चल रहा है।
  • **बेहतर सुरक्षा:** YARN की सुरक्षा सुविधाओं को बेहतर बनाने पर काम चल रहा है।
  • **क्लाउड इंटीग्रेशन:** YARN को क्लाउड वातावरण के साथ अधिक गहराई से एकीकृत करने पर काम चल रहा है।

निष्कर्ष YARN Hadoop इकोसिस्टम का एक महत्वपूर्ण घटक है जो क्लस्टर संसाधनों का प्रभावी ढंग से प्रबंधन करने में मदद करता है। यह Hadoop को अधिक बहुमुखी और लचीला बनाता है और विभिन्न प्रकार के प्रोसेसिंग फ्रेमवर्क का समर्थन करने में सक्षम बनाता है। यदि आप बिग डेटा प्रोसेसिंग में रुचि रखते हैं, तो YARN को समझना आवश्यक है।

संबंधित विषय

अभी ट्रेडिंग शुरू करें

IQ Option पर रजिस्टर करें (न्यूनतम जमा $10) Pocket Option में खाता खोलें (न्यूनतम जमा $5)

हमारे समुदाय में शामिल हों

हमारे Telegram चैनल @strategybin से जुड़ें और प्राप्त करें: ✓ दैनिक ट्रेडिंग सिग्नल ✓ विशेष रणनीति विश्लेषण ✓ बाजार की प्रवृत्ति पर अलर्ट ✓ शुरुआती के लिए शिक्षण सामग्री

Баннер