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