मैंने लोगों को उनके डेटा (बड़े डेटा वातावरण) को संसाधित करने में मदद करने के लिए कई उपकरणों / रूपरेखाओं के बारे में सुना।
एक को Hadoop और दूसरे को noSQL कॉन्सेप्ट कहा जाता है। प्रसंस्करण के बिंदु में क्या अंतर है?
क्या वे पूरक हैं?
मैंने लोगों को उनके डेटा (बड़े डेटा वातावरण) को संसाधित करने में मदद करने के लिए कई उपकरणों / रूपरेखाओं के बारे में सुना।
एक को Hadoop और दूसरे को noSQL कॉन्सेप्ट कहा जाता है। प्रसंस्करण के बिंदु में क्या अंतर है?
क्या वे पूरक हैं?
जवाबों:
हडूप एक डेटाबेस नहीं है , हडूप एक संपूर्ण पारिस्थितिकी तंत्र है।
अधिकांश लोगों को संदर्भित करेंगे mapreduce जबकि Hadoop के बारे में बात की नौकरियों। एक मैप्रेडिक जॉब डेटा के कुछ छोटे हिस्से में बड़े डेटासेट को विभाजित करता है और उन्हें आगे बढ़ने के लिए नोड्स के एक क्लस्टर में फैला देता है। अंत में प्रत्येक नोड से परिणाम को फिर से एक डाटासेट के रूप में एक साथ रखा जाएगा।
मान लेते हैं कि आपने <String, Integer>
एक शहर के भीतर कुछ मोहल्लों की आबादी के साथ हडूप में लोड किया था और आप प्रत्येक शहर के पूरे पड़ोस (आंकड़ा 1) पर औसत आबादी प्राप्त करना चाहते हैं।
आकृति 1
[new york, 40394]
[new york, 134]
[la, 44]
[la, 647]
...
अब हडूप कुंजी (चित्रा 2) का उपयोग करके प्रत्येक मूल्य को पहले मैप करेगा
चित्र 2
[new york, [40394,134]]
[la, [44,647]]
...
मैपिंग के बाद यह प्रत्येक कुंजी के मानों को एक नए मान में घटा देगा (इस उदाहरण में प्रत्येक कुंजी के मान सेट पर औसत) (आंकड़ा 3)
चित्र तीन
[new york, [20264]]
[la, [346]]
...
अब सब कुछ के साथ किया जाएगा। अब आप परिणाम को एचडीएफएस (हडॉप डिस्ट्रीब्यूटेड फाइल सिस्टम) या किसी डीबीएमएस या फाइल में लोड कर सकते हैं।
हैडूप क्या कर सकता है इसका सिर्फ एक बहुत ही मूल और सरल उदाहरण है। आप हडूप में बहुत अधिक जटिल कार्य चला सकते हैं।
जैसा कि आपने पहले ही अपने प्रश्न में उल्लेख किया था, हडूप और noSQL पूरक हैं। मुझे पता है कि कुछ सेटअप जहां सेंसर से अरबों डेटासेट HBase में संग्रहीत किए जाते हैं और तब हडूप के माध्यम से अंत में एक DBMS में संग्रहीत किया जाता है।
NoSQL डेटा स्टोर करने का एक तरीका है जिसके लिए किसी प्रकार के संबंध की आवश्यकता नहीं होती है। इसकी डिजाइन की सादगी और क्षैतिज पैमाने-क्षमता, डेटा को स्टोर करने का एक तरीका key : value
जोड़ी डिज़ाइन है। यह खुद को प्रसंस्करण के लिए उधार देता है जो हडोप के समान है। NoSQL db का उपयोग वास्तव में उस समस्या के प्रकार पर निर्भर करता है जो एक के बाद होती है।
यहाँ एक अच्छा विकिपीडिया लिंक NoSQL है
Hadoop एक प्रणाली है जो डेटा के विशाल भाग को संग्रहीत और संसाधित करने के लिए होती है। यह एक वितरित फ़ाइल सिस्टम dfs है। ऐसा करने का कारण यह है कि इसके डिजाइन के लिए केंद्रीय यह धारणा बनाता है कि हार्डवेयर विफलताएं आम हैं, इस प्रकार एक ही जानकारी की कई प्रतियां बनाकर इसे कई मशीनों और रैक में फैलाया जाता है, इसलिए यदि कोई नीचे जाता है, तो कोई समस्या नहीं है, हम दो और प्रतियां हैं। यहाँ विकिपीडिया से Hadoop के लिए एक बढ़िया लिंक दिया गया है, आप देखेंगे कि यह मेरी राय में, केवल भंडारण से अधिक है, बल्कि प्रसंस्करण भी है: Hadoop