HBase के फायदे, नुकसान और प्रदर्शन संबंधी अड़चनें

HBase आर्किटेक्चर में हमेशा “असफलता की एक भी वजह” सुविधा है, और इसके साथ कोई अपवाद हैंडलिंग तंत्र संबद्ध नहीं है।

यहां, हम सीखेंगे कि HBase के फायदे और नुकसान क्या हैं और प्रदर्शन संबंधी बाधाएं क्या हैं:

HBase में प्रदर्शन संबंधी अड़चनें

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

HBase लाभ, सीमाएँ और प्रदर्शन बाधाएँ

HBase के लाभ

यहां हम जानेंगे कि HBase के क्या फायदे हैं:

  • HDFS फ़ाइल भंडारण के शीर्ष पर बड़े डेटा सेट को संग्रहीत कर सकता है और HBase तालिकाओं में मौजूद अरबों पंक्तियों को एकत्रित और विश्लेषित करेगा
  • HBase में, डेटाबेस को साझा किया जा सकता है
  • Operaडेटा पढ़ने और प्रसंस्करण जैसे कार्यों में पारंपरिक संबंधपरक मॉडल की तुलना में कम समय लगेगा
  • यादृच्छिक पढ़ने और लिखने के कार्य
  • ऑनलाइन विश्लेषणात्मक कार्यों के लिए, HBase का व्यापक रूप से उपयोग किया जाता है।
  • उदाहरण के लिए: एटीएम मशीनों में वास्तविक समय डेटा अपडेट जैसे बैंकिंग अनुप्रयोगों में, HBase का उपयोग किया जा सकता है।

HBase के नुकसान

HBase की महत्वपूर्ण कमियां/सीमाएं इस प्रकार हैं:

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