यदि आप एक हार्ड-ड्राइव में सुधार करने जा रहे हैं, तो क्या ऐसा कुछ है जो बाद में 'प्रदर्शन में सुधार' करेगा या यह ऐसा कुछ है जिसके बारे में आपको चिंता भी नहीं करनी चाहिए? आज के सुपरयूजर क्यू एंड ए पोस्ट में एक जिज्ञासु पाठक के सवालों के जवाब हैं।
आज का प्रश्न और उत्तर सत्र सुपरयूज़र के सौजन्य से आता है - स्टैक एक्सचेंज का एक उपखंड, जो कि क्यू एंड ए वेब साइटों का एक समुदाय-संचालित समूह है।
की फोटो सौजन्य क्रिस बैनिस्टर (फ़्लिकर) .
प्रश्न
सुपरयूज़र रीडर ब्रेटेटेट जानना चाहता है कि क्या जीरो के साथ हार्ड-ड्राइव भरने से लेखन प्रदर्शन में सुधार होगा:
मेरे पास एक 2TB हार्ड-ड्राइव है जो 99 प्रतिशत पूर्ण था। मैंने के साथ विभाजन हटा दिए हैं fdisk और इसे स्वरूपित किया ext4 । जहां तक मुझे पता है, हार्ड-ड्राइव पर वास्तविक डेटा अभी भी मौजूद है, फिर भी विभाजन तालिका को फिर से असाइन किया गया था।
मेरा प्रश्न यह है: क्या हार्ड ड्राइव साफ था, तो क्या आगे के कार्यों के लिए लेखन प्रदर्शन में सुधार होगा? 'क्लीन' से मेरा मतलब है कि हार्ड-ड्राइव को जीरो से भरें? कुछ इस तरह:
- dd if = / dev / zero of = / dev / sdx bs = 1 काउंट = 4503599627370496
जीरो के साथ हार्ड-ड्राइव भरने से लेखन प्रदर्शन में सुधार होगा?
उत्तर
SuperUser योगदानकर्ता माइकल Kjörling हमारे लिए जवाब है:
नहीं, यह प्रदर्शन में सुधार नहीं करेगा। एचडीडी उस तरह काम नहीं करते हैं।
सबसे पहले, जब आप किसी दिए गए डेटा को एक घूर्णी ड्राइव पर लिखते हैं, तो यह हो जाता है तब्दील में चुंबकीय डोमेन यह वास्तव में आप लिख रहे बिट पैटर्न से बहुत अलग दिख सकते हैं। यह आंशिक रूप से किया जाता है क्योंकि सिंक्रनाइज़ेशन को बनाए रखना बहुत आसान है जब पैटर्न को वापस पढ़ा जाता है, जिसमें निश्चित मात्रा में परिवर्तनशीलता होती है। उदाहरण के लिए, ’शून्य’ या values वन ’मानों की एक लंबी स्ट्रिंग सिंक्रनाइज़ेशन को बनाए रखने के लिए बहुत कठिन बना देगी। क्या आपने 26,393 बिट्स या 26,394 बिट्स पढ़े हैं? आप बिट्स के बीच की सीमा को कैसे पहचानते हैं?
ऐसा करने की तकनीक समय के साथ विकसित हुई है। उदाहरण के लिए, ऊपर देखें संशोधित आवृत्ति मॉड्यूलेशन , MMFM, समूह कोड रिकॉर्डिंग , और अधिक सामान्य प्रौद्योगिकी रन-लंबाई सीमित एन्कोडिंग .
दूसरा, जब आप किसी क्षेत्र में नया डेटा लिखते हैं, तो प्लेटर के संबंधित भागों के चुंबकीय डोमेन केवल वांछित मान पर सेट होते हैं। यह उस विशेष भौतिक स्थान पर पिछले चुंबकीय डोमेन that की परवाह किए बिना किया गया था। लिखने वाले के सिर के नीचे पहले से ही कताई घूम रही है; पहले वर्तमान मूल्य को पढ़ना, फिर नया मान लिखना यदि और केवल अगर यह अलग है। यह प्रत्येक लेखन को दो क्रांतियों (या प्रत्येक प्लैटर के लिए एक अतिरिक्त सिर) की आवश्यकता का कारण होगा, जिससे लेखन की विलंबता बढ़ जाती है या ड्राइव की जटिलता को बढ़ाती है, बदले में बढ़ती लागत।
चूंकि हार्ड-ड्राइव अनुक्रमिक I / O प्रदर्शन में सीमित कारक यह है कि रीड / राइट हेड के तहत प्रत्येक बिट कितनी जल्दी गुजरता है, इससे उपयोगकर्ता को कोई लाभ भी नहीं मिलेगा। एक तरफ, यादृच्छिक I / O प्रदर्शन में सीमित कारक कितना तेजी से पढ़ा / लिखा सिर वांछित सिलेंडर पर तैनात किया जा सकता है और फिर वांछित क्षेत्र सिर के नीचे आता है। SSDs यादृच्छिक I / O वर्कलोड में इतना तेज क्यों हो सकता है, इसका कारण यह है कि वे इन दोनों कारकों को पूरी तरह से समाप्त कर देते हैं।
जैसा कि बताया गया है JakeGould , एक कारण तुम क्यों चाहते हो सकता है अधिलेखित कुछ निश्चित पैटर्न (जैसे कि सभी शून्य) के साथ ड्राइव यह सुनिश्चित करने के लिए होगी कि पहले संग्रहीत डेटा के कोई अवशेष नहीं हो सकते हैं बरामद , या तो जान - बूझकर या गलती से। लेकिन ऐसा करने से ऊपर बताए गए कारणों से हार्ड-ड्राइव के प्रदर्शन पर कोई प्रभाव नहीं पड़ेगा।
स्पष्टीकरण में कुछ जोड़ना है? टिप्पणियों में विचार व्यक्त करो। अन्य टेक-सेवी स्टैक एक्सचेंज उपयोगकर्ताओं से अधिक जवाब पढ़ना चाहते हैं? पूरी चर्चा धागा यहाँ देखें .