2013-06-05 8 views
101

के बीच अंतर यह एक बेवकूफ सवाल है लेकिन मैं नोएसक्यूएल प्रतिमान के लिए नया हूं और इसके बारे में बहुत कुछ नहीं जानता। तो अगर कोई मुझे एचबीएएस और हाडोप के बीच अंतर को स्पष्ट रूप से समझने में मदद कर सकता है या यदि कुछ पॉइंटर्स दे जो मुझे अंतर को समझने में मदद कर सकता है।एचबीएएस और हाडोप/एचडीएफएस

अभी तक, मैंने कुछ शोध और acc किया था। मेरी समझ के लिए हैडोप एचडीएफएस में डेटा (फाइलों) के कच्चे हिस्से के साथ काम करने के लिए ढांचा प्रदान करता है और एचबीएएस हैडोप के ऊपर डेटाबेस इंजन है, जो मूल रूप से कच्चे डेटा खंड के बजाय संरचित डेटा के साथ काम करता है। एसबीएस के रूप में एचबीएफएस पर एचबीएएस एक तार्किक परत प्रदान करता है। क्या यह सही है?

Pls मुझे सही करने के लिए स्वतंत्र महसूस करते हैं।

धन्यवाद।

+7

शायद प्रश्न शीर्षक "एचबीएएस और एचडीएफएस के बीच अंतर" होना चाहिए? –

+0

ऐसा क्यों है? –

उत्तर

208

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

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

Hadoop

  1. बड़ी फ़ाइलों की पहुँच स्ट्रीमिंग के लिए अनुकूलित।
  2. अनुयायी लिखते हैं-एक बार पढ़ने-कई विचारधाराएं।
  3. यादृच्छिक पढ़ने/लिखने का समर्थन नहीं करता है। स्तंभ फैशन में

HBase

  1. स्टोर कुंजी/मान जोड़े (स्तंभ परिवारों के रूप में एक साथ जोड़ दिया जाता है)।
  2. बड़े डेटा सेट के भीतर से डेटा की थोड़ी मात्रा में कम विलंबता पहुंच प्रदान करता है।
  3. लचीला डेटा मॉडल प्रदान करता है।

हैडोप ऑफ़लाइन बैच-प्रोसेसिंग किडा सामान के लिए सबसे उपयुक्त है, जबकि वास्तविक समय की आवश्यकता होने पर एचबीएस का उपयोग किया जाता है।

एक समान तुलना MySQL और Ext4 के बीच होगी।

+0

डेटा की बहुत बड़ी मात्रा (छोटी फाइलों) के लिए hatalase के रूप में datalake के रूप में उपयोग करने के बारे में क्या? क्या वह एचडीएफएस के रूप में ज्यादा डेटा प्रबंधित कर सकता है? –

+0

@MehdiTAZI निश्चित रूप से। एचबीएफएस एचडीएफएस के शीर्ष पर चलता है इसलिए स्केलेबिलिटी के बारे में चिंता करने की ज़रूरत नहीं है। आपको बस यह सुनिश्चित करने की ज़रूरत है कि आप एचबीएएस का उपयोग कर रहे हैं क्योंकि इसे अधिकतम प्रदर्शन – Tariq

+0

प्राप्त करने के लिए उपयोग किया जाना चाहिए परिचालन समस्याओं के बारे में क्या? –

1

संदर्भ: 1) HDFS: http://www.quora.com/What-is-the-difference-between-HBASE-and-HDFS-in-Hadoop

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

असल में इसका अर्थ है ऑफ़लाइन सिस्टम - आप एचडीएफएस पर डेटा स्टोर करते हैं और आप इसे नौकरी चलाकर संसाधित कर सकते हैं।

दूसरी ओर HBase कॉलम आधारित डेटाबेस में। यह एचडीएफएस का भंडारण के रूप में उपयोग करता है - जो बैकअप \ redundency \ आदि का ख्याल रखता है लेकिन यह एक "ऑनलाइन स्टोर" है - जिसका अर्थ है कि आप इसे विशिष्ट पंक्ति \ पंक्तियों आदि के लिए पूछ सकते हैं और तत्काल मूल्य प्राप्त कर सकते हैं।

4

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

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

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

16

अपाचे Hadoop परियोजना चार प्रमुख मॉड्यूल

  1. Hadoop आम भी शामिल है।
  2. हाडोप वितरित फ़ाइल सिस्टम (एचडीएफएस ™): एक वितरित फ़ाइल सिस्टम जो एप्लिकेशन डेटा तक उच्च-थ्रूपुट पहुंच प्रदान करता है।
  3. हाडोप यार्न: नौकरी शेड्यूलिंग और क्लस्टर संसाधन प्रबंधन के लिए एक ढांचा।
  4. हैडोप मैपराइडस: यार्न - बड़े डेटा सेट के समानांतर प्रसंस्करण के लिए आधारित प्रणाली।

HBase मापनीय, वितरित डेटाबेस है कि बड़े तालिकाओं के लिए संरचित डेटा भंडारण का समर्थन है। जैसे ही Bigtable Google फ़ाइल सिस्टम द्वारा प्रदत्त वितरित डेटा संग्रहण का लाभ उठाता है, अपाचे एचबेस, हैडोप और एचडीएफएस के शीर्ष पर बिगटेबल जैसी क्षमताओं को प्रदान करता है।

HBase जब उपयोग करने के लिए:

  1. आपके आवेदन एक चर स्कीमा जहां प्रत्येक पंक्ति थोड़ा अलग
  2. है आप पाते हैं कि आपके डेटा संग्रह में संग्रहीत है, तो है, कि सभी keyed है उसी मान पर
  3. यदि आपको यादृच्छिक, वास्तविक समय को पढ़ने और लिखने के लिए आपके बड़े डेटा की आवश्यकता है।
  4. यदि आपको संग्रहीत या पुनर्प्राप्त करते समय डेटा पर कुंजी आधारित पहुंच की आवश्यकता है।
  5. आप मौजूदा Hadoop क्लस्टर

के साथ डेटा की बड़ी राशि है लेकिन HBase कुछ सीमाएं

  1. यह क्लासिक लेन-देन संबंधी आवेदनों या यहाँ तक कि रिलेशनल विश्लेषण के लिए नहीं किया जा सकता है, तो।
  2. बड़े बैच MapReduce करते समय यह एचडीएफएस के लिए एक पूर्ण विकल्प भी नहीं है।
  3. यह एसक्यूएल से बात नहीं करता है, एक अनुकूलक है, क्रॉस रिकॉर्ड लेनदेन का समर्थन करता है या जुड़ता है।
  4. यह जटिल पहुँच पैटर्न के साथ नहीं किया जा सकता (मिलती है जैसे)

सारांश:

HBase पर विचार करें जब आप कुंजी के द्वारा डेटा लोड कर रहे हैं, कुंजी के द्वारा डेटा खोज (या रेंज), कुंजी द्वारा डेटा की सेवा करना, कुंजी से पूछताछ डेटा या पंक्ति द्वारा डेटा संग्रहीत करते समय जो स्कीमा के अनुरूप नहीं है।

cloudera ब्लॉग से एचबीएस की डू और डॉट न करें।

+0

डेटा की बहुत बड़ी मात्रा (छोटी फाइलों) के लिए hatalase के रूप में datalake के रूप में उपयोग करने के बारे में क्या? क्या वह एचडीएफएस के रूप में ज्यादा डेटा प्रबंधित कर सकता है? –

+1

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

संबंधित मुद्दे