एक (RAID- नियंत्रक) BBU क्या है?


13

मैं सोच रहा हूं कि एक BBU का उद्देश्य क्या है। मेरी पहली समझ यह थी कि यह कैश को बिजली की विफलता के दौरान डिस्क पर डेटा लिखने में सक्षम बनाता है। लेकिन कुछ विशिष्टताओं का कहना है कि एक बीबीयू 72h तक के लिए अपना डेटा रख सकता है। मुझे उम्मीद है कि डेटा मिलीसेकंड के भीतर डिस्क को लिखा जाएगा (यह देखते हुए, कि डिस्क में अभी भी शक्ति है)।

तो क्या बीबीयू को कैश की सुरक्षा नहीं करनी चाहिए, लेकिन कुछ सेकंड के लिए पूरी डिस्क भी? क्या यह और भी अधिक सुरक्षित नहीं होगा, क्योंकि कैश डेटा कैश में इधर-उधर होने के बजाय डिस्क पर लिखा जाता है और फिर से बिजली का इंतजार करता है? एक-दूसरे के बाद, डिस्क बंद हो सकती है।


यद्यपि RAID बैटरी वास्तविक ड्राइव को बिजली नहीं देती है, लेकिन हमारी दुनिया में कुछ ऐसा है जो मूल रूप से आपने कल्पना की थी: कुछ सर्वर-ग्रेड SSDs में "सुपरकैपेसिटर" होते हैं जो बिजली की विफलता के बाद मिलीसेकंड के दौरान कैशेड कमिट करने के लिए बैकअप पावर प्रदान करते हैं।
स्काईवॉक

जवाबों:


17

यह डिस्क को शक्ति नहीं देता है, यह मशीन को लाइन में वापस लाने तक 72 घंटों तक (इस मामले में) डेटा रखता है। जब आप मशीन को वापस पावर देते हैं तो यह कैश की सामग्री को डिस्क पर वापस लिख देगा।

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

यह डिस्क के लिए एक यूपीएस नहीं है, क्योंकि डिस्क बाहरी डिस्क सरणी में हो सकती है, या एक अलग बिजली सर्किट पर भी हो सकती है। यहां तक ​​कि एक यूपीएस भी फेल हो सकता है।


1
तो डिस्क के लिए यूपीएस में अंतर यह है कि यह एक ऐसे परिदृश्य के लिए डिज़ाइन किया गया है जहां डिस्क समान पावर सर्किट पर नहीं हैं? अन्य सभी मामलों में (एक सर्किट में नियंत्रक और डिस्क) एक यूपीएस बेहतर होगा? मैं अभी भी पसंद करूंगा कि अंतिम आदेश डिस्क पर बिजली की विफलता के दौरान कैश में इंतजार करने के बजाय लिखा जाए।
tanascius

तो अपने सर्वर के लिए भी एक यूपीएस खरीदें! एक BBU में ड्राइव की एक सरणी चलाने के लिए पर्याप्त शक्ति नहीं है। यह आपको शक्ति प्रदान करने और परिवर्तनों को सहेजने के लिए एक बड़ी पर्याप्त खिड़की देता है। अधिकांश आउटेज बहुत कम हैं और अधिकांश लोगों को गैर-महत्वपूर्ण मशीनों के लिए यूपीएस के अतिरिक्त खर्च की आवश्यकता नहीं है।
जेम्सरैन

1
सभी BBU कंप्यूटर को पुनरारंभ करने तक डेटा को कैश में रखता है। नियंत्रक जानता है कि डिस्क से क्या निकला है (डिस्क संकेत देता है कि ऑपरेशन समाप्त हो गया है)। जब तक मशीन को फिर से चालू नहीं किया जाता है तब तक डिस्क से फ्लश नहीं किया जाता है।
चिंता का

13

यह इस तरह काम करता है:

अधिकांश ऑपरेटिंग सिस्टम में एक सिस्टम कॉल होता है जो तथाकथित "सिंक्रोनस राइट" की अनुमति देता है। इसका मतलब यह है कि एक लेखन ऑपरेशन के दौरान, यदि कोई लेखन पूरा हो गया है, तो यह गारंटी है कि यह डिस्क के लिए प्रतिबद्ध था।

तुल्यकालिक लेखन इसलिए गैर-कैश किया गया है। यह एप्लिकेशन को तब तक ब्लॉक करता है जब तक वह पूरा नहीं हो जाता। इस तरह का ऑपरेशन स्पष्ट रूप से कैश किए गए लेखन की तुलना में धीमा है जो ओएस मेमोरी में डेटा रखता है जब तक कि डिस्क पर्याप्त रूप से निष्क्रिय न हो और फिर डेटा लिखता है।

कुछ महत्वपूर्ण सॉफ़्टवेयर, जैसे डेटाबेस सॉफ़्टवेयर, महत्वपूर्ण डेटा के लिए समकालिक लिखते हैं क्योंकि बिजली की हानि के मामले में आधा-लिखित अद्यतन डेटाबेस की अखंडता के लिए हानिकारक हो सकता है।

RAID कंट्रोलर RAID -5 के साथ कुख्यात रूप से धीमा होता है, इसलिए यह एक समस्या बन जाती है यदि आपका एप्लिकेशन सॉफ़्टवेयर बहुत सारे सिंक्रोनस राइट्स का उपयोग करता है। इस कारण से, RAID-5 नियंत्रक अपने स्वयं के कैश से लैस हैं।

RAID नियंत्रक क्या करता है, यह इसके बजाय डेटा को इसके कैश में लिखता है और OS को LIES करता है, यह बताकर कि उसने डेटा को डिस्क के लिए प्रतिबद्ध किया है जबकि डेटा वास्तव में अभी भी RAID कैश में है।

लेकिन अगर डेटा RAID कंट्रोलर के बफर में था तब भी क्या हुआ था? आपके पास अपने डिस्क पर एक आधा-लिखित और संभवतः असंगत डेटा होगा।

आप कह सकते हैं कि यह व्यवहार एक समकालिक लेखन के उद्देश्य को पराजित करता है ... यदि कैश्ड लिखना ठीक था, तो ऐप सॉफ़्टवेयर पहले स्थान पर सिंक लिखने के लिए नहीं कहेगा।

समझौता यह है: RAID नियंत्रक अभी भी ओएस पर टिका हुआ है कि उसने डेटा को डिस्क के लिए प्रतिबद्ध किया है, लेकिन बिजली की विफलता के मामले में इस महत्वपूर्ण डेटा को बचाने के लिए, RAID नियंत्रक में एक बैटरी होती है जो कैश को कुछ समय तक जीवित रखती है जब तक कि बिजली नहीं हो सकती बहाल।

इसलिए जब बिजली वापस आती है और डिस्क स्पिन हो जाती है और प्रारंभिक हो जाती है, तो नियंत्रक के पास अभी भी बैटरी के लिए इसके कैश में डेटा होता है और डिस्क पर अपना लेन-देन लिख सकता है।

सबकी ख़ुशी।

यही कारण है कि RAID नियंत्रक आमतौर पर आपको कैश लिखने में सक्षम नहीं करते हैं जब तक कि आपके पास एक कार्यात्मक और चार्ज की गई बैटरी इकाई न हो।


मैं नियंत्रक के स्थान के बारे में पूछूंगा। क्या यह मदर बोर्ड का हिस्सा है या हार्ड ड्राइव में बनाया गया है?
वैलेंटाइन तिहोमिरोव

इसके अलावा, मैं यह जानना चाहूंगा कि proper shutdownअगर ओएस फ्लश जारी करने के दौरान RAID झूठ बोलता है तो ओएस अनुरोध कैसे भेज सकता है?
वैलेंटाइन तिहोमिरोव

@ValentinTihomirov के रूप में ऐसी कोई चीज नहीं है properया improperबंद। ओएस पावरडाउन सिग्नल जारी करता है और पीएसयू ऐसा करता है, इसके बाद बिजली बंद कर दी जाती है। चूंकि बिजली बंद है, इसलिए अस्थिर स्मृति है और इसकी सभी सामग्री खो गई है!
PF4Public

4

यह उल्लेखनीय है कि कुछ नए डिस्क कंट्रोलर अब हाई-स्पीड-फ्लैश कैश के साथ आते हैं जो कि डेटा को 72 घंटों से अधिक समय तक बनाए रखता है, यह अक्सर बहुत अधिक बड़ा होता है (~ 1 जीबी)। यदि आपको आंशिक विवरण चाहिए तो मुझे बताएं।


इस जानकारी के लिए धन्यवाद, लेकिन मैं कोई Sysadmin नहीं हूँ और शायद कभी भी एक पेशेवर RAID डिजाइन नहीं करूँगा ... मैं बस BBU के बारे में उत्सुक हूँ :)
tanascius

3

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


लेकिन जब मेरे पास ड्राइव + नियंत्रक के लिए एक यूपीएस है - तो मुझे बीबीयू के लिए क्या चाहिए? केवल एक scneario के लिए जहां UPS विफल रहता है, भी?
tanascius

अच्छा प्रश्न। यदि आप जानते हैं कि सर्वर हमेशा बंद हो जाएगा तो मैं बीबीयू की आवश्यकता के बारे में आश्वस्त नहीं हूं।
जॉन गार्डनियर्स

2
एक BBU आमतौर पर राइट-बैक कॉन्फ़िगरेशन के लिए होता है। कुछ RAID नियंत्रक बिना BBU उपस्थित किए राइट-बैक सक्षम नहीं करेंगे। हालाँकि, मुझे लगता है कि यह मान लेना एक बुरा विचार है कि आपका सर्वर हमेशा ठीक से बंद रहेगा।
कंसर्नडऑफटुनब्रिजवेल्स

2

$ 100 की बैटरी प्राप्त करना आवश्यक है, विशेष रूप से DB सर्वर पर, भले ही बिजली की विफलता दुर्लभ हो। यहां तक ​​कि अगर आपके पास लेन-देन सक्षम है , और आपके सर्वर ने उन परिवर्तनों को कैश छोड़ने और डिस्क के लिए प्रतिबद्ध होने से पहले शक्ति खो दी है, तो आपको एक अधूरा क्वेरी, या दूषित डेटा के साथ छोड़ दिया जाएगा।


1

यदि आपका सर्वर क्रैश हो जाता है, हैंग हो जाता है या कोई पावर केबल खींचता है, तो बीबीयू आपको दूषित या खोए हुए डेटा से बचाएगा, यदि आप राइट-कैश का उपयोग कर रहे हैं। यूएसवी का उपयोग केवल आपको बिजली की विफलता से बचाता है।

यदि आप राइट-कैश का उपयोग नहीं करना चाहते हैं, तो आपको BBU की आवश्यकता नहीं है।


1

एक RAID कार्ड में 1 जीबी कैश हो सकता है; भले ही यह आमतौर पर राइट कैश के लिए उपयोग नहीं किया जाता है, आप मान सकते हैं कि यह अलिखित डेटा की लंबी कतार को संग्रहीत करेगा।

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

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

एक यूपीएस मानती है कि निर्बाध शक्ति भोली है; क्या होगा अगर मशीन दुर्घटनाग्रस्त हो जाए और आपको पावर कॉर्ड खींचने की आवश्यकता हो, या कोई व्यक्ति उस पर यात्रा करे?

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

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.