2011-06-09 9 views
5

मेरी कंपनी का उत्पाद प्रत्येक वर्ष हमारे ग्राहक साइटों पर डेटा के पेटबाइट्स का उत्पादन करेगा। मैं एक बहु-पेटबाइट NAS को एक ऐसे सिस्टम को अनुकरण करने के लिए भरना चाहता हूं जो लंबे समय तक चल रहा है (3 महीने, 6 महीने, एक वर्ष, आदि)। हम लोड के तहत स्टोरेज सिस्टम पर चल रहे हैं, जबकि हम अपने सॉफ्टवेयर का विश्लेषण करना चाहते हैं।मैं जल्दी से बहु-पेटबाइट NAS कैसे भरूं?

मैं एक ऐसी स्क्रिप्ट लिख सकता हूं जो इस डेटा को बनाता है (एक स्क्रिप्ट को निष्पादित करने में सप्ताह या महीने लग सकते हैं)। क्या स्क्रिप्ट को बाहर निकालने के बारे में सिफारिशें हैं (एकाधिक मशीनें, एकाधिक धागे)? NAS में 3 भार संतुलित आने वाले लिंक हैं ... क्या मुझे सीधे NAS डिवाइस पर चलाना चाहिए?

क्या तीसरे पक्ष के उत्पाद हैं जिनका उपयोग मैं लोड बनाने के लिए कर सकता हूं? मैं यह भी नहीं जानता कि इस तरह के उत्पादों की खोज कैसे शुरू करें।

क्या इससे कोई फर्क पड़ता है कि डेटा यथार्थवादी है? क्या किसी को NAS/संग्रहण आर्किटेक्चर के बारे में कुछ पता है? क्या यह सिर्फ यादृच्छिक बिट्स हो सकता है या डेटा की नियमितता हो सकती है? हम डेटा इस प्रारूप

x:\<year>\<day-of-year>\<hour>\<minute>\<guid-file-name>.ext 
+0

तो आप तेजी से कि NAS अपनी डिस्क के लिए लिख करने में सक्षम है की तुलना में एक NAS पर डेटा प्राप्त करना चाहते है? ऐसा लगता है कि यह अजीब है, कप्तान। –

+0

मुझे लगता है कि NAS और उसकी डिस्क की लिंक गति अधिकतम होगी। यह ठीक है, मैं कुल संतृप्ति प्राप्त करना पसंद करूंगा। प्रश्न में NAS में तीन अलग-अलग भार संतुलित आने वाले कनेक्शन हैं। मैं समस्या के रचनात्मक समाधान के लिए पूछ रहा हूँ। Snarky जवाब के लिए नहीं। –

+0

आप पहले ही समाधान जानते हैं: डिस्क स्क्रिप्ट को अधिकतम करने वाली एक स्क्रिप्ट लिखें। इसे NAS के करीब के रूप में चलाएं क्योंकि आपको पर्याप्त I/O बैंडविड्थ प्राप्त करने की आवश्यकता है। यदि आपको उच्च गति पर लिखने के लिए विचारों की आवश्यकता है, तो बोनी ++ बेंचमार्क आज़माएं। परिभाषा के अनुसार, यह डिस्क से तेज़ी से लिखने में सक्षम है। –

उत्तर

3

आप NAS/डिस्क की लिखने की गति द्वारा सीमित किया जा जा रहे हैं में डिस्क पर बाहर हवा देने - मैं दौर है कि होने का कोई रास्ता नहीं है के बारे में सोच सकते हैं।

तो चुनौती तब तक लिखने के लिए है जब तक आवश्यकतानुसार डिस्क को संतृप्त करें। एक उचित मशीन पर चल रही स्क्रिप्ट या स्क्रिप्ट का सेट बिना किसी कठिनाई के ऐसा करने में सक्षम होना चाहिए।

प्रारंभ करने के लिए, बोनी ++ जैसे कुछ का उपयोग करके पता लगाएं कि आपकी डिस्क कितनी तेज़ी से लिख सकती है। फिर आप लिखने को संतृप्त करने के लिए बोनी से शुरुआती बिंदु के रूप में कोड का उपयोग कर सकते हैं - आखिरकार, एक डिस्क बेंचमार्क करने के लिए बोनी को NAS से तेज़ी से लिखने में सक्षम होना चाहिए।

मान लें कि आपके पास 3x1GB ईथरनेट कनेक्शन हैं, बॉक्स में अधिकतम नेटवर्क इनपुट लगभग 300 एमबी/एस है। एक पीसी एक 1 जीबी ईथरनेट कनेक्शन को संतृप्त करने में सक्षम है, इसलिए 3 पीसी काम करना चाहिए। प्रत्येक पीसी को पेड़ और वॉयला के एक हिस्से को लिखने के लिए प्राप्त करें।

बेशक, 300 एमबी/एस में एक पेटबाइट भरने के लिए लगभग एक महीने लगेंगे।

वैकल्पिक रूप से, आप NAS के राज्य के बारे में अपने कोड से झूठ बोल सकते हैं। लिनक्स पर, आप एक उपयोगकर्ता-स्पेस फाइल सिस्टम लिख सकते हैं जो फाइलों के लायकबाइट्स के लिए फ्लाई मेटाडेटा (फ़ाइल नाम, लंबाई इत्यादि) बनाकर डेटा के कई पेटबाइट्स का दावा करता है। जब उत्पाद पढ़ता है, तो यादृच्छिक डेटा उत्पन्न करें। जब आप उत्पाद लिखते हैं, तो इसे वास्तविक डिस्क पर लिखें और याद रखें कि आपको फिर से पढ़ा जाने पर "असली" डेटा मिल गया है।

चूंकि आपका उत्पाद संभावित रूप से इस परीक्षण के दौरान पूरे पेटबाइट को नहीं पढ़ेगा, न ही इसमें से अधिकतर लिखेंगे, आप तुरंत मनमाने ढंग से पूर्ण NAS को अनुकरण कर सकते हैं।

इस कम या ज्यादा विकसित करने के लिए ले जाता है चाहे एक महीने से भी एक खुला प्रश्न :)

संबंधित मुद्दे