अनुमापकता

अनुमापकता काम की बढ़ती मात्रा को संभालने के लिए प्रणाली का गुण है। सॉफ्टवेयर प्रणाली के लिए परिभाषा निर्दिष्ट करता है कि यह प्रणाली में संसाधनों को जोड़कर किया जा सकता है।

अर्थशास्त्र के संदर्भ में, अनुमापक व्यापार मॉडल का तात्पर्य है कि कंपनी बढ़ी हुई संसाधनों की बिक्री बढ़ा सकती है। उदाहरण के लिए, पैकेज वितरण प्रणाली मापनीय है क्योंकि अधिक वितरण वाहनों को जोड़कर अधिक पैकेज वितरित किए जा सकते हैं। हालाँकि, यदि सभी पैकेजों को पहले छँटाई के लिए एक ही गोदाम से गुजरना पड़ता है, तो प्रणाली अनुमापक नहीं होगा, क्योंकि गोदाम केवल सीमित संख्या में पैकेजों को ही संभाल सकता है। कंप्यूटिंग में, अनुमापकता कंप्यूटर, नेटवर्क, कलन विधि, प्रोटोकॉल (कंप्यूटिंग), कंप्यूटर प्रोग्राम और एप्लिकेशन की विशेषता है। उदाहरण एक खोज इंजन है, जिसे उपयोगकर्ताओं की बढ़ती संख्या और वेब अनुक्रमण के विषयों की संख्या का समर्थन करना चाहिए। वेबस्केल कंप्यूटर वास्तु दृष्टिकोण है जो बड़े पैमाने की क्लाउड कंप्यूटिंग कंपनियों की क्षमताओं को उद्यम डेटा केंद्रों में लाता है।

वितरित प्रणाली में, लेखकों के अनुसार कई परिभाषाएँ हैं, कुछ अनुमापकता की अवधारणाओं को लोच (प्रणाली संसाधन) का उप-भाग मानते हैं, अन्य अलग-अलग हैं।

गणित में, अनुमापकता ज्यादातर अदिश गुणन के अनुसार क्लोजर (गणित) को संदर्भित करती है।

औद्योगिक अभियांत्रिक और विनिर्माण में, मापनीयता प्रक्रिया, प्रणाली या संगठन की क्षमता को एक बढ़ते कार्यभार को संभालने, बढ़ती मांगों के अनुकूल होने और परिचालन दक्षता बनाए रखने के लिए संदर्भित करती है। अनुमापक प्रणाली गुणवत्ता या प्रदर्शन से समझौता किए बिना प्रभावी रूप से बढ़ी हुई उत्पादन मात्रा, नई उत्पाद लाइनों या बाजारों का विस्तार कर सकता है। इस संदर्भ में, ग्राहकों की अपेक्षाओं को पूरा करने, प्रतिस्पर्धी बने रहने और सतत विकास हासिल करने के लक्ष्य वाले व्यवसायों के लिए मापनीयता महत्वपूर्ण विचार है। अनुमापकता को प्रभावित करने वाले कारकों में उत्पादन प्रक्रिया का लचीलापन, कार्यबल की अनुकूलन क्षमता और उन्नत तकनीकों का एकीकरण सम्मिलित है। अनुमापक समाधानों को प्रायुक्त करके, कंपनियां संसाधन उपयोग का अनुकूलन कर सकती हैं, लागत कम कर सकती हैं और अपने संचालन को सुव्यवस्थित कर सकती हैं। औद्योगिक अभियांत्रिक और विनिर्माण में फलने-फूलने की क्षमता व्यवसायों को उतार-चढ़ाव वाली बाजार स्थितियों का जवाब देने में सक्षम बनाती है और उभरते अवसरों का लाभ उठाती है और सतत विकसित वैश्विक परिदृश्य में फलती-फूलती है।

नवाचारों का स्केलिंग

उदाहरण
घटना कमांड प्रणाली (आईसीएस) का उपयोग संयुक्त राज्य अमेरिका में आपातकालीन प्रतिक्रिया एजेंसियों द्वारा किया जाता है। आईसीएस संसाधन समन्वय को एकल-इंजन सड़क के किनारे ब्रशफायर से अंतरराज्यीय जंगल की आग तक बढ़ा सकता है। दृश्य पर पहला संसाधन संसाधनों को आदेश देने और जिम्मेदारी (पांच से सात अधिकारियों का प्रबंधन, जो फिर से सात तक प्रतिनिधि करेंगे, और जैसे ही घटना बढ़ती है) सौंपने के अधिकार के साथ आदेश स्थापित करता है। जैसे-जैसे घटना बढ़ती है, अधिक वरिष्ठ अधिकारी कमान संभालते हैं।

आयाम
अनुमापकता को कई आयामों पर मापा जा सकता है, जैसे:


 * प्रशासनिक मापनीयता: किसी प्रणाली तक पहुँचने के लिए संगठनों या उपयोगकर्ताओं की बढ़ती संख्या की क्षमता।
 * फंक्शनल अनुमापकता: वर्तमान गतिविधियों को बाधित किए बिना नई कार्यक्षमता जोड़कर प्रणाली को बढ़ाने की क्षमता।
 * भौगोलिक मापनीयता: स्थानीय क्षेत्र से बड़े क्षेत्र में विस्तार के दौरान प्रभावशीलता बनाए रखने की क्षमता।
 * लोड अनुमापकता: भारी या हल्के भार को समायोजित करने के लिए एक वितरित प्रणाली के विस्तार और अनुबंध की क्षमता, जिसमें आसानी से बदलते भार को समायोजित करने के लिए एक प्रणाली या घटक को संशोधित, जोड़ा या हटाया जा सकता है।
 * जनरेशन अनुमापकता: घटकों की नई पीढ़ियों को अपनाकर प्रणाली को स्केल करने की क्षमता।
 * ओपन आर्किटेक्चर विभिन्न विक्रेताओं से घटकों को अपनाने की क्षमता है।

डोमेन

 * नेटवर्क आकार के संबंध में एक रूटिंग प्रोटोकॉल को अनुमापक माना जाता है, यदि प्रत्येक नोड पर आवश्यक रूटिंग तालिका का आकार बिग O नोटेशन (log N) के रूप में बढ़ता है, जहां एन नेटवर्क में नोड्स की संख्या है। ग्नुटेला के कुछ प्रारंभिक पीयर-टू-पीयर (पी2पी) कार्यान्वयन में स्केलिंग उद्देश्य थे। प्रत्येक नोड क्वेरी क्वेरी सभी नोड्स के लिए अपने अनुरोधों को भरती है। साथियों की कुल संख्या के अनुपात में प्रत्येक सहकर्मी की मांग में वृद्धि हुई, जिससे उनकी क्षमता तेजी से बढ़ गई। बिटटोरेंट (प्रोटोकॉल) जैसे अन्य पी2पी प्रणाली अच्छी तरह से स्केल करते हैं क्योंकि प्रत्येक पीयर की मांग पीयर की संख्या से स्वतंत्र होती है। कुछ भी केंद्रीकृत नहीं है, इसलिए प्रणाली स्वयं साथियों के अलावा किसी भी संसाधन के बिना अनिश्चित काल तक विस्तार कर सकता है।
 * अनुमापक ऑनलाइन लेनदेन प्रसंस्करण प्रणाली या डेटाबेस प्रबंधन प्रणाली वह है जिसे नए प्रोसेसर, उपकरण और स्टोरेज जोड़कर अधिक लेनदेन को प्रोसेस करने के लिए अपग्रेड किया जा सकता है, और जिसे बंद किए बिना आसानी से और पारदर्शी रूप से अपग्रेड किया जा सकता है।
 * डोमेन की नामांकन प्रणाली (डीएनएस) की वितरित प्रकृति इसे दुनिया भर के इंटरनेट पर अरबों सर्वर (कंप्यूटिंग) की सेवा करते हुए कुशलता से काम करने की अनुमति देती है।

क्षैतिज (स्केल आउट) और लम्बवत स्केलिंग (स्केल अप)
संसाधन दो व्यापक श्रेणियों में आते हैं: क्षैतिज और लंबवत।

क्षैतिज या स्केल आउट
क्षैतिज रूप से स्केलिंग (बाहर/अंदर) का अर्थ है किसी प्रणाली में अधिक नोड्स जोड़ना (या नोड्स को हटाना), जैसे वितरित सॉफ़्टवेयर एप्लिकेशन में नया कंप्यूटर जोड़ना। उदाहरण में एक वेब सर्वर से तीन तक स्केलिंग सम्मिलित हो सकती है। भूकंपीय विश्लेषण और जैव प्रौद्योगिकी जैसे उच्च-प्रदर्शन कंप्यूटिंग अनुप्रयोग, क्षैतिज रूप से वर्कलोड को उन कार्यों का समर्थन करने के लिए स्केल करते हैं जिनके लिए एक बार महंगे सुपरकंप्यूटर की आवश्यकता होती थी। अन्य वर्कलोड, जैसे बड़े सामाजिक नेटवर्क, सबसे बड़े सुपर कंप्यूटर की क्षमता से अधिक हैं और केवल अनुमापक प्रणाली द्वारा नियंत्रित किया जा सकता है। इस मापनीयता का दोहन करने के लिए कुशल संसाधन प्रबंधन और रखरखाव के लिए सॉफ्टवेयर की आवश्यकता होती है।

लम्बवत या स्केल अप
लंबवत (ऊपर/नीचे) स्केलिंग का अर्थ है नोड में संसाधनों को जोड़ना (या संसाधनों को हटाना), सामान्यतः कंप्यूटर में सीपीयू, मेमोरी या स्टोरेज को सम्मिलित करना।

बड़ी संख्या में तत्व प्रबंधन की जटिलता को बढ़ाते हैं, संसाधनों के बीच कार्यों को आवंटित करने के लिए अधिक परिष्कृत प्रोग्रामिंग और नोड्स में थ्रूपुट और विलंबता जैसे मुद्दों को संभालते हैं, जबकि कुछ एप्लिकेशन क्षैतिज रूप से स्केल नहीं करते हैं।

नेटवर्क अनुमापकता
नेटवर्क फ़ंक्शन वर्चुअलाइजेशन इन शर्तों को अलग तरह से परिभाषित करता है: स्केलिंग आउट/इन संसाधन उदाहरणों (जैसे, वर्चुअल मशीन) को जोड़कर/हटाकर स्केल करने की क्षमता है, जबकि स्केलिंग/डाउन आवंटित संसाधनों (जैसे मेमोरी/सीपीयू/स्टोरेज क्षमता) को बदलकर स्केल करने की क्षमता है।

डेटाबेस अनुमापकता
डेटाबेस के लिए मापनीयता के लिए आवश्यक है कि डेटाबेस प्रणाली अतिरिक्त सर्वर, प्रोसेसर, मेमोरी और स्टोरेज जैसे अधिक हार्डवेयर संसाधनों को देखते हुए अतिरिक्त कार्य करने में सक्षम हो। काम का बोझ लगातार बढ़ता जा रहा है और डेटाबेस की मांग भी बढ़ती जा रही है।

एल्गोरिदमिक नवाचारों में पंक्ति-स्तरीय लॉकिंग और टेबल और इंडेक्स विभाजन सम्मिलित हैं। आर्किटेक्चरल इनोवेशन में मल्टी-सर्वर कॉन्फ़िगरेशन के प्रबंधन के लिए शेयर्ड-नथिंग और शेयर्ड-एवरीथिंग आर्किटेक्चर सम्मिलित हैं।

मजबूत बनाम अंतिम स्थिरता (भंडारण)
स्केल-आउट डेटा स्टोरेज के संदर्भ में, अनुमापकता को अधिकतम स्टोरेज क्लस्टर आकार के रूप में परिभाषित किया गया है जो पूर्ण डेटा स्थिरता की गारंटी देता है, जिसका अर्थ है कि पूरे क्लस्टर में संग्रहीत डेटा का केवल वैध संस्करण है, जो अनावश्यक भौतिक डेटा प्रतियों की संख्या से स्वतंत्र है। क्लस्टर जो एक अतुल्यकालिक फैशन में प्रतियों को अद्यतन करके "आलसी" अतिरेक प्रदान करते हैं, उन्हें 'अंततः सुसंगत' कहा जाता है। इस प्रकार का स्केल-आउट डिज़ाइन तब उपयुक्त होता है जब उपलब्धता और जवाबदेही को स्थिरता से अधिक रेट किया जाता है, जो कई वेब फ़ाइल-होस्टिंग सेवाओं या वेब कैश (यदि आप नवीनतम संस्करण चाहते हैं, तो इसके प्रचार के लिए कुछ सेकंड प्रतीक्षा करें) के लिए सही है। सभी शास्त्रीय लेन-देन-उन्मुख अनुप्रयोगों के लिए, इस डिज़ाइन से बचा जाना चाहिए।

कई ओपन-सोर्स और यहां तक ​​कि वाणिज्यिक स्केल-आउट स्टोरेज क्लस्टर, विशेष रूप से मानक पीसी हार्डवेयर और नेटवर्क के शीर्ष पर निर्मित, केवल अंतिम स्थिरता प्रदान करते हैं। काउच डीबी जैसे कुछ एनओएसक्यूएल डेटाबेस और ऊपर बताए गए अन्य का उपयोग करें। राइट ऑपरेशन अन्य प्रतियों को अमान्य कर देते हैं, किन्तु अधिकांश उनकी पावती की प्रतीक्षा नहीं करते हैं। रीड ऑपरेशंस सामान्यतः उत्तर देने से पहले हर अनावश्यक कॉपी की जांच नहीं करते हैं, संभावित रूप से पिछले राइट ऑपरेशन को याद कर रहे हैं। मेटाडेटा सिग्नल ट्रैफ़िक की बड़ी मात्रा के लिए विशेष हार्डवेयर और स्वीकार्य प्रदर्शन (अर्थात्, गैर-क्लस्टर स्टोरेज उपकरण या डेटाबेस की तरह कार्य) को संभालने के लिए कम दूरी की आवश्यकता होगी।

जब भी मजबूत डेटा स्थिरता की विश्वाश हो, तो इन संकेतकों को देखें:
 * बढ़ते क्लस्टर आकार और निरर्थक प्रतियों की संख्या के साथ प्रदर्शन में गिरावट से बचने के लिए इनफिनीबैंड, फाइबरचैनल या इसी तरह के कम-विलंबता नेटवर्क का उपयोग।
 * छोटी केबल लंबाई और सीमित भौतिक सीमा, सिग्नल रनटाइम प्रदर्शन में गिरावट से बचना।
 * बहुसंख्यक / कोरम तंत्र जब भी क्लस्टर के हिस्से दुर्गम हो जाते हैं, तो डेटा स्थिरता की गारंटी देता है।

अंततः सुसंगत डिजाइन के लिए संकेतक (लेनदेन संबंधी अनुप्रयोगों के लिए उपयुक्त नहीं!) हैं:
 * लेखन प्रदर्शन क्लस्टर में जुड़े उपकरणों की संख्या के साथ रैखिक रूप से बढ़ता है।
 * जब स्टोरेज क्लस्टर का विभाजन होता है, तो सभी भाग उत्तरदायी रहते हैं। परस्पर विरोधी अद्यतनों का जोखिम है।

प्रदर्शन ट्यूनिंग बनाम हार्डवेयर मापनीयता
यह अधिकांश सलाह दी जाती है कि प्रणाली डिजाइन को क्षमता के बजाय हार्डवेयर मापनीयता पर केंद्रित किया जाए। प्रत्येक नोड को संभालने की क्षमता में सुधार के लिए प्रदर्शन ट्यूनिंग में भाग लेने की तुलना में बेहतर प्रदर्शन प्राप्त करने के लिए प्रणाली में नया नोड जोड़ना सामान्यतः सस्ता होता है। किन्तु इस दृष्टिकोण में ह्रासमान वापस हो सकता है (जैसा कि प्रदर्शन अभियांत्रिक में चर्चा की गई है)। उदाहरण के लिए: मान लीजिए कि प्रोग्राम के 70% को समानांतर किया जा सकता है और एक के अतिरिक्त कई सीपीयू पर चलाया जा सकता है। अगर $$\alpha$$ एक गणना का अंश है जो अनुक्रमिक है, और $$1-\alpha$$ वह अंश है जिसे समानांतर किया जा सकता है, P प्रोसेसर का उपयोग करके प्राप्त किया जा सकने वाला अधिकतम गति बढ़ाना अमदहल के नियम के अनुसार दिया गया है:


 * $$\frac 1 {\alpha+\frac{1-\alpha} P}.$$

इस उदाहरण के लिए मान को प्रतिस्थापित करते हुए, 4 प्रोसेसर का उपयोग करके देता है


 * $$\frac 1 {0.3+\frac{1-0.3} 4} = 2.105.$$

कंप्यूटिंग पावर को दोगुना करके 8 प्रोसेसर देता है


 * $$\frac 1 {0.3+\frac{1-0.3} 8} = 2.581.$$

प्रसंस्करण शक्ति को दोगुना करने से प्रक्रिया में लगभग एक-पांचवां भाग ही तेजी आई है। यदि पूरी समस्या समानांतर होती, तो गति भी दोगुनी हो जाती। इसलिए, अधिक हार्डवेयर में फेंकना आवश्यक रूप से इष्टतम दृष्टिकोण नहीं है।

कमजोर बनाम मजबूत स्केलिंग
उच्च प्रदर्शन कंप्यूटिंग में मापनीयता की दो सामान्य धारणाएँ हैं:
 * मजबूत स्केलिंग को परिभाषित किया गया है कि निश्चित कुल समस्या आकार के लिए प्रोसेसर की संख्या के साथ समाधान समय कैसे भिन्न होता है।
 * कमजोर स्केलिंग को इस रूप में परिभाषित किया जाता है कि प्रति प्रोसेसर निश्चित समस्या आकार के लिए प्रोसेसर की संख्या के साथ समाधान समय कैसे भिन्न होता है।

यह भी देखें

 * कम्प्यूटेशनल जटिलता सिद्धांत
 * विस्तारशीलता
 * गुस्ताफसन का नियम
 * सिस्टम गुणवत्ता विशेषताओं की सूची
 * भार संतुलन (कंप्यूटिंग)
 * ताला (कंप्यूटर विज्ञान)
 * नोएसक्यूएल
 * स्केलेबल वीडियो कोडिंग (एसवीसी)
 * समानता (मॉडल)
 * स्केल (विश्लेषणात्मक उपकरण)

बाहरी संबंध

 * Links to diverse learning resources – page curated by the memcached project.
 * Scalable Definition – by The Linux Information Project (LINFO)
 * Scale in Distributed Systems B. Clifford Neuman, In: Readings in Distributed Computing Systems, IEEE Computer Society Press, 1994