इसलिए मैंने 16 HDD के 2 RAID6 समूह या 8 HDD के 4 बनाने का फैसला किया।
यह चीजें करने का सबसे अच्छा तरीका नहीं है। यह काफी अच्छा काम कर सकता है, लेकिन आपकी प्रदर्शन आवश्यकताओं के आधार पर, यह नहीं हो सकता है।
एक RAID5 / 6 सरणी के लिए आदर्श आकार ऐसा होगा जिसमें डेटा की मात्रा का एक सटीक एकाधिक "स्पैन" सरणी उसके ऊपर बनी फ़ाइल सिस्टम के ब्लॉक आकार से मेल खाती है।
RAID5 / 6 सरणियाँ ब्लॉक डिवाइस के रूप में काम करती हैं - डेटा का एक एकल ब्लॉक डिस्क में डिस्क को फैलाता है, और उस ब्लॉक में पार्स डेटा भी होता है। अधिकांश RAID नियंत्रक सरणी में प्रत्येक डिस्क पर डेटा का एक दो-हिस्सा आकार लिखेंगे - जिसका सटीक मान बेहतर RAID सिस्टम में विन्यास योग्य है - और आपकी डॉट हिल इकाई उन "बेहतर RAID प्रणालियों" में से एक है। वह महत्वपूर्ण है।
तो यह एन एक्स लेता है (डिस्क के प्रति डेटा संग्रहित राशि), सरणी को फैलाने के लिए, जहां एन डेटा डिस्क की संख्या है। एक 5-डिस्क RAID5 सरणी में 4 "डेटा" डिस्क हैं, और 10-ड्राइव वाले RAID6 सरणी में 8 डेटा डिस्क हैं।
क्योंकि जब डेटा को एक RAID5 / 6 सरणी में लिखा जाता है, यदि डेटा का ब्लॉक ऐसा है, जो पूरे सरणी को फैलाने के लिए काफी बड़ा है, तो उस डेटा के लिए समता की गणना की जाती है - आमतौर पर नियंत्रक की मेमोरी में - फिर संपूर्ण पट्टी को लिखा जाता है डिस्क। सरल, और तेज।
लेकिन अगर डेटा के बारे में लिखा जा रहा है, तो पूरे सरणी को भरने के लिए पर्याप्त बड़ा नहीं है, नए नियंत्रक डेटा की गणना करने के लिए RAID नियंत्रक को क्या करना है? इसके बारे में सोचें - नए समता डेटा को फिर से जोड़ने के लिए इसे पूरे स्ट्राइप में सभी डेटा की आवश्यकता होती है ।
इसलिए यदि आप 512kb के डिफॉल्ट प्रति डिस्क चंक के साथ 16-ड्राइव RAID6 सरणी बनाते हैं, तो इसका मतलब है कि यह सरणी को "स्पैन" करने के लिए 7 एमबी लेता है।
ZFS 128kb ब्लॉक्स में काम करता है, आम तौर पर।
तो ZFS एक 128kB ब्लॉक लिखता है - 16-ड्राइव RAID6 सरणी के लिए। आपके द्वारा प्रस्तावित कॉन्फ़िगरेशन में, इसका मतलब है कि RAID नियंत्रक को सरणी से लगभग 7 एमबी पढ़ने और उन 7 एमबी में समता को फिर से स्थापित करने की आवश्यकता है। फिर उस पूरे 7 एमबी को डिस्क पर फिर से लिखें।
यदि आप भाग्यशाली हैं, तो यह सब कैश में है और आप एक बड़ा प्रदर्शन हिट नहीं लेते हैं। (यह एक प्रमुख कारण है कि "RAID5 / 6 का उपयोग न करें" स्थिति में इस तरह के निम्नलिखित हैं - RAID1 [0] इससे पीड़ित नहीं होंगे।)
यदि आप अशुभ हैं और आपने अपने फाइलसिस्टम विभाजन को ठीक से संरेखित नहीं किया है, तो 128kB ब्लॉक दो RAID स्ट्रिप जो कैश में नहीं है, और नियंत्रक को 14 एमबी पढ़ने की जरूरत है, समता को पुनः प्राप्त करें, फिर 14 एमबी लिखें। सभी को एक 128kB ब्लॉक लिखना है।
अब, यही तार्किक रूप से होने की जरूरत है । वहाँ अनुकूलन नहीं है जो अच्छा RAID नियंत्रक, इस तरह के आईओ पैटर्न के आईओ और कम्प्यूटेशनल भार को कम करने तो यह ले जा सकते हैं की एक बहुत कुछ कर रहे हैं हो सकता है कि बुरा नहीं हो।
लेकिन यादृच्छिक स्थानों पर 128kB ब्लॉक लिखने के भारी भार के तहत, एक बहुत अच्छा मौका है कि 7-एमबी स्ट्राइप आकार के साथ 16-ड्राइव RAID6 सरणी का प्रदर्शन बिल्कुल भयानक होगा।
ZFS के लिए, एक सामान्य प्रयोजन फ़ाइल सिस्टम के लिए "आदर्श" अंतर्निहित RAID5 / 6 LUN , जहां अधिकांश एक्सेस प्रभावी रूप से यादृच्छिक होते हैं, एक स्ट्राइप साइज होता है जो 128kB, जैसे 32kB, 64kB, या 128kB का भी विभाजक होता है। इस स्थिति में, जो एक RAID5 / 6 सरणी में डेटा डिस्क की संख्या को 1 तक सीमित करता है (जो निरर्थक है - भले ही कॉन्फ़िगर करना संभव हो, यह सिर्फ RAID1 [0] का उपयोग करने के लिए बेहतर है), 2, 4, या 8. सर्वश्रेष्ठ प्रदर्शन सबसे अच्छी स्थिति में RAID5 / 6 सरणियों के लिए 128kB धारी के आकार का उपयोग करना होगा, लेकिन सबसे अच्छा मामला सामान्य-उद्देश्य फ़ाइल सिस्टम में अक्सर नहीं होता है - अक्सर क्योंकि फ़ाइल सिस्टम मेटाडेटा को समान रूप से संग्रहीत नहीं करते हैं। फ़ाइल डेटा स्टोर करें।
मैं 5-डिस्क RAID5 सरणियों या 10-डिस्क RAID6 सरणियों को स्थापित करने की सलाह देता हूं, प्रति-डिस्क चंक आकार के साथ काफी छोटा सेट है कि पूरे सरणी स्ट्रिप को प्राप्त करने के लिए डेटा की मात्रा 64kB है (हाँ, मैंने यह किया है ZFS के लिए पहले - कई बार)। 4 डेटा डिस्क के साथ एक RAID सरणी के लिए इसका मतलब है, प्रति-डिस्क चंक आकार 16kB होना चाहिए, जबकि 8-डेटा-डिस्क RAID सरणी के लिए, प्रति-डिस्क चंक आकार 8kB होना चाहिए।
फिर ZFS को संपूर्ण सरणी का उपयोग करने की अनुमति दें - इसे विभाजित न करें । ZFS खुद को पूरी तरह से ड्राइव में ठीक से संरेखित करेगा, चाहे ड्राइव एक साधारण सिंगल डिस्क हो या RAID कंट्रोलर द्वारा प्रस्तुत RAID सरणी।
इस स्थिति में, और आपकी सही जगह और प्रदर्शन की आवश्यकताओं को जाने बिना, मैं 64kB स्ट्राइप साइज़ के साथ तीन 10-ड्राइव RAID6 सरणी या छह 5-ड्राइव RAID5 सरणियों को स्थापित करने की सलाह दूंगा, कुछ हॉट स्पेयर्स को कॉन्फ़िगर करें, और अपने चार को बचाएं। भविष्य में जो भी आएगा उसके लिए डिस्क। क्योंकि कुछ होगा।
मैं निश्चित रूप से जेबीओडी मोड में उस डिस्क सिस्टम का उपयोग नहीं करूंगा - यह पूरी तरह से एनईबीएस स्तर 3-संगत डिवाइस है जो हार्डवेयर में निर्मित महत्वपूर्ण विश्वसनीयता और उपलब्धता सुरक्षा प्रदान करता है। "ZFS !!!!" की वजह से उसे दूर न फेंकें। यदि यह कमोडिटी हार्डवेयर का एक सस्ता टुकड़ा है जिसे आपने भागों से एक साथ रखा है? हाँ, जेडएफएस के साथ जेबीओडी मोड RAID को संभालना सबसे अच्छा है - लेकिन यह आपके पास हार्डवेयर नहीं है। उन सुविधाओं का उपयोग करें जो हार्डवेयर प्रदान करता है।