बड़ी संख्या में फ़ाइलों के साथ NTFS ड्राइव पर सुस्त प्रदर्शन


12

मैं इस सेटअप को देख रहा हूँ:

  • विंडोज सर्वर 2012
  • 1 टीबी एनटीएफएस ड्राइव, 4 केबी क्लस्टर, ~ 90% पूर्ण
  • ~ 10M फ़ाइलें 10,000 फ़ोल्डरों में संग्रहीत = ~ 1,000 फ़ाइलें / फ़ोल्डर
  • फाइलें ज्यादातर काफी छोटी <50 केबी
  • वर्चुअल ड्राइव डिस्क डिस्क पर होस्ट की गई

जब कोई एप्लिकेशन रैंडम फ़ोल्डरों में संग्रहीत फाइलों तक पहुंचता है तो प्रत्येक फाइल को पढ़ने के लिए 60-100 ms लगते हैं। एक परीक्षण उपकरण के साथ ऐसा लगता है कि फ़ाइल खोलने पर विलंब होता है। डेटा पढ़ना तब केवल कुछ समय लेता है।

सारांश में इसका मतलब है कि 50 फ़ाइलों को पढ़ने में आसानी से 3-4 सेकंड लग सकते हैं जो उम्मीद से बहुत अधिक है। लेखन बैच में किया जाता है इसलिए प्रदर्शन यहां कोई मुद्दा नहीं है।

मैंने पहले से ही एसओ और एसएफ को इन नंबरों पर आने के लिए सलाह दी थी।

पढ़ने के समय के बारे में क्या करना है?

  • 60-100 एमएस प्रति फ़ाइल पर विचार करें ठीक है (यह नहीं है, यह है?)
  • किसी भी विचार कैसे सेटअप में सुधार किया जा सकता है?
  • क्या निम्न-स्तरीय निगरानी उपकरण हैं जो बता सकते हैं कि वास्तव में किस समय पर खर्च किया जाता है?

अपडेट करें

  1. जैसा कि टिप्पणियों में उल्लेख किया गया है कि सिस्टम सिमेंटेक एंडपॉइंट सुरक्षा चलाता है। हालांकि, इसे अक्षम करने से रीड टाइम में बदलाव नहीं होता है।

  2. परफ्यूमॉन प्रति रीड 10-20 एमएस मापता है। इसका मतलब यह होगा कि कोई भी फ़ाइल पढ़ने में ~ 6 I / O रीड ऑपरेशंस, राइट है? क्या यह एमएफटी लुकअप और एसीएल चेक होगा?

  3. एमएफटी का आकार ~ 8.5 जीबी है जो मुख्य मेमोरी से अधिक है।


कुछ बाहर शासन करने के लिए, क्या आप RAMMap का स्क्रीनशॉट साझा करना चाहेंगे ?
टॉमस डबासिंस्कस

क्या आपका मतलब फ़ाइल सारांश तालिका है? अब जब आप इसका उल्लेख करते हैं तो मुझे 900 एमबी की मेमोरी में SYMEFA.DB फाइल दिखाई देती है जो मुझे याद दिलाती है कि सिमेंटेक एंडपॉइंट सुरक्षा सिस्टम पर स्थापित है। शायद वह अपराधी है? मैं और जानने की कोशिश करूंगा।
पॉल बी।

वास्तव में, मुझे मेटाफ़ाइल के उपयोग में अधिक दिलचस्पी थी
टॉमस डबासिंस्कस

ठीक मिल गया। मेटाफ़ाइल 250 एमबी कुल, 40 सक्रिय, 210 स्टैंडबाय दिखाता है। सामान्य लगता है या नहीं?
पॉल बी।

हां, ऐसा लगता है
टॉमस डाबासिंस्क

जवाबों:


5

सर्वर में पर्याप्त मेमोरी नहीं थी। NTFS मेटाफ़ाइल डेटा को मेमोरी में कैशिंग करने के बजाय हर फ़ाइल एक्सेस के लिए कई डिस्क रीड की आवश्यकता होती है। हमेशा की तरह, मुद्दा स्पष्ट है कि आप इसे देख लेंगे। मुझे अपने परिप्रेक्ष्य को साझा करने दें:

  • सर्वर ने टास्क मैनेजर और रैमपैम दोनों में उपलब्ध 2 जीबी मेमोरी को दिखाया। इसलिए या तो विंडोज ने फैसला किया कि उपलब्ध मेमोरी मेटाफ़ाइल डेटा का एक सार्थक हिस्सा रखने के लिए पर्याप्त नहीं थी। या कुछ आंतरिक प्रतिबंध मेटाफ़ाइल डेटा के लिए अंतिम बिट मेमोरी का उपयोग करने की अनुमति नहीं देते हैं।

  • राम टास्क प्रबंधक को अपग्रेड करने के बाद अधिक मेमोरी का उपयोग नहीं किया जाएगा। हालांकि, रामपाइप ने कई जीबी मेटाफ़ाइल डेटा को स्टैंडबाय डेटा के रूप में रखे जाने की सूचना दी। जाहिरा तौर पर, स्टैंडबाय डेटा का पर्याप्त प्रभाव हो सकता है।

विश्लेषण के लिए प्रयुक्त उपकरण:

  • fsutil fsinfo ntfsinfo driveletter:NTFS MFT आकार (या NTFSInfo ) दिखाने के लिए
  • स्मृति आबंटन दिखाने के लिए रामपुर
  • प्रक्रिया मॉनिटर यह दिखाने के लिए कि हर फ़ाइल पढ़ा गया है ड्राइव करने के लिए लगभग 4 रीड ऑपरेशन से पहले: \ $ Mft और ड्राइव: \ $ निर्देशिका। हालाँकि मुझे $ निर्देशिका की सही परिभाषा नहीं मिल पाई है लेकिन ऐसा लगता है कि यह एमएफटी से भी संबंधित है

तो बढ़ती भौतिक स्मृति ने प्रतिक्रिया समय में सुधार किया? आपने किसी भी रजिस्ट्री सेटिंग को कॉन्फ़िगर नहीं किया है?
D-Klotz

1
हाँ। मैंने पहले रजिस्ट्री सेटिंग्स के साथ खेला था। लेकिन अंत में स्मृति को जोड़ने के बाद किसी बदलाव की आवश्यकता नहीं थी।
पॉल बी।

स्टैंडबाय मेमोरी मेमोरी क्षेत्र हैं जो उपयोग करने के लिए कार्यक्रमों के लिए तैयार हैं। लेकिन चूंकि वे अभी तक उपयोग नहीं किए गए हैं, ओएस उन्हें कैश के रूप में उपयोग करेगा। एक बार जब किसी भी कार्यक्रम को उस मेमोरी की आवश्यकता होती है, तो उसे तुरंत जारी किया जाएगा
phuclv
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.