हैडोप डिफ़ॉल्ट रूप से ब्लॉक स्तर संतुलन नहीं करता है। ऐसे कुछ टूल हैं जिनका उपयोग आप हडोप में मैन्युअल रूप से संतुलन करने के लिए कर सकते हैं, अर्थात् https://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-common/CommandsManual.html#balancer। ध्यान दें कि एचडीएफएस को संतुलित करना वास्तव में काफी महंगा है यदि आपके पास पूरी तरह से खाली या नए नोड्स की एक छोटी संख्या है जिसे आपने अभी तक किसी अन्य पूर्ण क्लस्टर में जोड़ा है, और इसके साथ मेरा अनुभव यह है कि यह केवल एचडीएफएस ब्लॉक को संतुलित करने का एक अच्छा काम करता है । बैलेंसर कई बार चलाना समग्र संतुलन में सुधार कर सकता है। कुछ वैकल्पिक कार्यान्वयन भी हैं जो हडोप में अंतर्निहित एक से संतुलित संतुलन का बेहतर काम कर सकते हैं।
यदि आप "लाइव नोड्स" लिंक पर क्लिक करते हैं तो आप एचडीएफएस नेम नोड यूआई से ब्लॉक के संतुलन का निरीक्षण कर सकते हैं। इस उद्देश्य के लिए "ब्लॉक पूल प्रयुक्त" कॉलम उपयोगी कॉलम है। यदि आप विभिन्न मशीनों पर इस्तेमाल किए गए ब्लॉक के प्रतिशत में उच्च भिन्नता देखते हैं, तो आपको अपने एचडीएफएस क्लस्टर को पुनर्व्यवस्थित करने की आवश्यकता हो सकती है।
balancer_switch
केवल क्षेत्ररक्षक संतुलन को प्रभावित करता है। एचबीएस स्वचालित रूप से क्लस्टर में अपने क्षेत्रों को डिफ़ॉल्ट रूप से संतुलित कर देगा, लेकिन आप से किसी भी समय मैन्युअल रूप से balancer
चला सकते हैं।
आप "लोड" नामक कॉलम में "क्षेत्र सर्वर अनुभाग" के तहत एचबीएस मास्टर यूआई के मुख्य पृष्ठ से क्षेत्र संतुलन का निरीक्षण कर सकते हैं, "संख्याऑफऑनलाइन क्षेत्र" नामक एक मान है। आम तौर पर, एचबीएस इस संतुलित को बनाए रखने का एक बहुत अच्छा काम करता है। मैंने केवल कुछ बार देखा है जब मैंने प्रारंभ में टेबल बनाए हैं कि डिफ़ॉल्ट संतुलन एल्गोरिदम क्षेत्रों के एक skewed सेट के साथ आता है। भले ही, क्षेत्र balancer वास्तव में काफी सस्ते है और काफी जल्दी किया जा सकता है। इसे एक बार चलाना आम तौर पर आपको एक बहुत ही संतुलित स्थिति में लाने के लिए पर्याप्त होता है।
अनुमानित समय सीमा क्या है जिसके भीतर एचबीएएस नए नोड को शामिल करेगा? –
नया नोड क्लस्टर में लगभग तुरंत जोड़ा जाना चाहिए। हालांकि, यह वास्तव में अनुरोधों को तब तक शुरू नहीं करेगा जब तक कि क्षेत्र इसमें स्थानांतरित नहीं हो जाते। एचबीएस बैलेंसर को 'hbase.balancer.period' द्वारा नियंत्रित किया जाता है और 5 मिनट तक डिफ़ॉल्ट होता है। आप इसे HBase खोल में भी हाथ से बुला सकते हैं। –