RAID 0 दो अलग-अलग आकार के डिस्क पर सभी डिस्क स्थान का उपयोग क्यों नहीं कर सकता है?


10

RAID पर विकिपीडिया लेख उद्धृत करने के लिए :

एक RAID 0 विभिन्न आकारों के डिस्क के साथ बनाया जा सकता है, लेकिन प्रत्येक डिस्क द्वारा सरणी में जोड़ा गया भंडारण स्थान सबसे छोटी डिस्क के आकार तक सीमित है। उदाहरण के लिए, यदि 100 जीबी डिस्क एक साथ 350 जीबी डिस्क के साथ पट्टी की जाती है, तो सरणी का आकार 200 जीबी (100 जीबी डिस्क) होगा।

हालांकि, लेख यह नहीं बताता है कि यह उन्हें एक साथ RAID क्यों नहीं कर सकता है और पूरे डिस्क स्थान का उपयोग कर सकता है। मैं समझता हूं कि स्ट्रिपिंग दोनों के बीच लिखता है, लेकिन निश्चित रूप से इसे दूसरी डिस्क के बाद के सेक्टरों में लिखने से नहीं रोकना चाहिए , जबकि अपमानजनक प्रदर्शन चल रहा है? क्या कोई वैकल्पिक RAID प्रणाली (जैसे सॉफ्टवेयर RAID) है जो इस तरह की सुविधा प्रदान करती है?


Im यकीन है कि अगर यह कुछ हार्डवेयर छापे के साथ काम करेगा, लेकिन सॉफ्टवेयर छापे के साथ, छापे के कुछ पहलुओं का लाभ लेने के लिए 0 में दो अलग-अलग आकार के उपलब्ध स्थान का उपयोग करते समय एक 100GB और एक 350GB की तरह आप 3 बनाने की कोशिश कर सकते हैं बड़े ड्राइव पर 100GB विभाजन, और पहले पर 100KB विभाजन और दूसरी ड्राइव पर 3 100GB विभाजन। छापे का स्तर 0 आपको कुछ पढ़ने / लिखने के प्रदर्शन में वृद्धि प्रदान करते हुए उपयोग करने के लिए 400 गिग्स देगा, लेकिन यह संभवतया कम होगा यदि आपने दो 200GB ड्राइव को छीन लिया।
कीथ रेनॉल्ड्स

आम तौर पर आप ऐसा नहीं करना चाहेंगे, प्रदर्शन प्रयोजनों के लिए मैंने एक 1G और 16G फ्लैश ड्राइव का उपयोग करके एक RAID0 स्थापित किया। मैंने प्रत्येक डिस्क को भरने के लिए एक विस्तारित विभाजन बनाया। तब मैंने प्रत्येक ड्राइव पर 981MB विभाजन बनाया जब तक कि वे भरे नहीं थे। फिर मैंने लिनक्स पर कमांड के साथ 16 विभाजन का उपयोग करके एक छापा बनाया mdadm --create --verbose /dev/md0 --chunk=512 -l0 -n16 /dev/sdd5 /dev/sde5 /dev/sde6 /dev/sde7 /dev/sde8 /dev/sde9 /dev/sde10 /dev/sde11 /dev/sde12 /dev/sde13 /dev/sde14 /dev/sde15 /dev/sde16 /dev/sde17 /dev/sde18 /dev/sde19। मैं कम जगह के साथ समाप्त हो गया था की तुलना में मैं सिर्फ 16GB ड्राइव
कीथ रेनॉल्ड्स

जवाबों:


11

सबसे छोटी डिस्क के आकार तक सीमित होने का कारण इस तथ्य के साथ करना है कि धारियों को "वैकल्पिक रूप से" लिखा गया है और समान आकार होना चाहिए।

दो डिस्क सिस्टम में, सभी विषम धारियां एक डिस्क पर होती हैं, यहां तक ​​कि दूसरे पर भी। डिस्क, विषम / सम / विषम / सम / के बीच वैकल्पिक लिखता है ...

चूँकि धारियों का आकार समान होना चाहिए, और युग्मित (दो डिस्क के लिए), आप अधिकतम 2 * (सबसे छोटी डिस्क का आकार) के प्रयोग करने योग्य स्थान तक सीमित हैं।


3

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

आप इस अतिरिक्त स्थान को मूल RAID में क्यों नहीं जोड़ सकते? ठीक है, बहुत विस्तार में जाने के बिना, इसकी वजह से एल्गोरिदम RAID का उपयोग करते हैं। RAID 0 RAID में पहले डिस्क के लिए और फिर अगले में लिखता है। यह प्रदर्शन को बढ़ाता है, क्योंकि इसे पढ़ने या लिखने के लिए पिछली डिस्क का इंतजार नहीं करना पड़ता है। यदि आपकी पोस्ट में 250 GB का उपयोग किया गया था, तो लेखन का अधिकांश भाग पहली डिस्क पर होगा, जो किसी भी प्रदर्शन लाभ को समाप्त कर देगा।

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


यह इस बात की व्याख्या नहीं करता है कि यह सभी दो ड्राइव का एक वॉल्यूम में उपयोग क्यों नहीं कर सकता है। इसके अलावा, अलग-अलग वॉल्यूम का हिस्सा बिल्कुल भी प्रदर्शन का कारण नहीं बनेगा - निम्न स्तर पर डिस्क IO नियंत्रण को disk.sys के माध्यम से बाधित किया जाता है, इसलिए पढ़ने / लिखने के अनुरोधों को वैसे भी पाइपलाइन किया जाता है, और Windows ओवरलैप्ड IO का भी समर्थन करता है।
बहुपद

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

1
क्योंकि RAID कैसे काम करता है। यदि आप वास्तव में चाहते थे, तो आप RAID 0 जो आप कर सकते थे, फिर मुक्त स्थान के साथ एक वॉल्यूम बनाएं, फिर RAID और अतिरिक्त वॉल्यूम बढ़ाएं। लेकिन मुझे नहीं लगता कि कोई भी RAID नियंत्रक आपको ऐसा करने देगा। आप हार्डवेयर और सॉफ़्टवेयर RAID के संयोजन के साथ ऐसा करने में सक्षम हो सकते हैं।
केल्टरी

1
-1 "यह प्रदर्शन को बढ़ाता है, क्योंकि इसे पढ़ने या लिखने के लिए पिछली डिस्क के लिए इंतजार नहीं करना पड़ता" वही कहा जा सकता है RAID 0 में विभिन्न आकारों के दो हार्ड डिस्क
Celeritas

2
@Polynomial यह RAID 0. नहीं होगा। आपने पूछा कि RAID 0 सभी डिस्क स्थान का उपयोग क्यों नहीं कर सकता है और फिर आप "क्यों नहीं कर सकते ..." का जवाब देते हैं। ऐसा नहीं हो सकता क्योंकि यह RAID 0. अगर यह कुछ और था, तो यह कुछ और होगा।
डेविड श्वार्ट्ज

0

RAID एक छद्म मानक है जो बताता है कि डेटा को डिस्क की एक सरणी पर कैसे संग्रहीत किया जा सकता है। मानक डेटा को संग्रहीत करने के चार अलग-अलग तरीकों का वर्णन करता है (तकनीकी रूप से अधिक, लेकिन ज्यादातर किसी को दूसरों की परवाह नहीं है):

छापा -०: पट्टी करना। RAID डिवाइस के प्रत्येक सदस्य में डेटा का प्रत्येक ब्लॉक विभाजित होता है। कोई अतिरेक नहीं है, इसलिए यह सस्ती डिस्क के सिर्फ एक ऐरे की अधिक है, न कि सस्ती डिस्क की अनावश्यक सरणी।

छापे -1: दर्पण। सरणी में प्रत्येक डिस्क पर डेटा का प्रत्येक ब्लॉक संग्रहीत किया जाता है। यह केवल वास्तव में दो डिस्क के साथ बनाता है। RAID 1/0 या सिर्फ RAID 10 मिररिंग और स्ट्रिपिंग का एक संयोजन है और इसका उपयोग दो से अधिक डिस्क का लाभ उठाने के लिए किया जा सकता है।

छापा -5: समानता। डेटा के प्रत्येक ब्लॉक को RAID डिवाइस के प्रत्येक सदस्य में विभाजित किया गया है + एक डिस्क समता के लिए समर्पित है।

छापे -6: डबल समानता: छापे -5 के रूप में भी, लेकिन दो समानता के साथ।

बस। RAID वर्णन नहीं करता कि आकार के गलत मिलान या किसी भी चीज़ के बारे में क्या करना है, लेकिन स्ट्रिपिंग केवल वास्तव में समान आकार के डिस्क के साथ काम करती है। आमतौर पर इसके आसपास पहुंचने का तरीका यह है कि आप बाईं जगह को एक अलग डिस्क ड्राइव के रूप में उपयोग कर सकते हैं।

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

पूर्व प्रौद्योगिकियां वॉल्यूम मैपिंग (यानी एलवीएम, या यह विंडोज़ समतुल्य) जैसी चीजें हैं, जो मैपिंग ब्लॉक को डिस्क से उच्च स्तर तक ले जाने के विचार को सार करती हैं। LVM के साथ आप डिस्क भर में, विभाजन का विस्तार कर सकते हैं, गैर-सन्निहित विभाजन और इतने पर हो सकते हैं। वॉल्यूम मैपिंग RAID नहीं है, और प्रदर्शन को बढ़ाने के बजाय आप डिस्क को बढ़ाते हैं, बस एक डिस्क या दूसरे को लिखने के लिए चुनेंगे जहां आप फ़ाइल सिस्टम में हैं। इसे फैले हुए के रूप में संदर्भित किया जाता है और आमतौर पर RAID से बेहतर होता है यदि आप IOPS के लिए जा रहे हैं तो कच्चे प्रदर्शन के लिए।


0
A RAID 0 can be created with disks of differing sizes, but the storage
space added to the array by each disk is limited to the size of the
smallest disk.

यह सच हो सकता है और अधिकांश RAID0 कार्यान्वयनों के लिए सही होगा। हालाँकि सभी के लिए नहीं।

RAID 0 का उपयोग करने के दो कारण हैं:

  1. एक बड़ी मात्रा में कई डिस्क समेटें।
  2. प्रदर्शन।

विकल्प 2 सबसे आम है और मुझे लगता है कि इसका उपयोग लगभग सभी वर्तमान RAID 0 कार्यान्वयन में किया जाता है। टेचीनिकल स्पष्टीकरण यह है कि जानकारी को डिस्क के बीच बारी-बारी से लिखा जाता है।

एक गैर तकनीकी तरीके से: दो पुस्तकों के रूप में डिस्क के बारे में सोचें। इन पुस्तकों की सीमित पहुंच (पढ़ने / लिखने) की गति है। इसलिए इसके बजाय दो 100 पेज की किताबें हम उन्हें दो किताबों में सुधारते हैं लेकिन उन पन्नों को फिर से जारी करते हैं ताकि सभी संख्याएँ एक किताब में लिखी जाएँ और दूसरी किताब में सभी विषम संख्याएँ।

अब हमारी नई 'आर 0 बुक' का व्यवहार यह है कि क्या यह एक एकल पुस्तक है जिसमें पृष्ठों की संख्या और दोगुनी गति है।


विकल्प 1 'किताबों के लिए गोंद से लेकर बैक टू बैक' तक सरल हो सकता है। जिस स्थिति में आपको कोई गति प्राप्त नहीं होती है, लेकिन आप पुस्तकों को अलग-अलग पृष्ठ गणना के साथ गोंद कर सकते हैं। मुझे लगता है कि 1990 के आसपास कुछ 'RAID0' कार्यान्वयन याद हैं। लेकिन ऐसा नहीं है कि ज्यादातर लोग 'उचित RAID 0' पर विचार करेंगे।

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