क्लाउड के लिए वितरित फाइल सिस्टम

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

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

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

इतिहास
आज, वितरित फाइल सिस्टम के कई कार्यान्वयन हैं। पहला फ़ाइल सर्वर 1970 के दशक में शोधकर्ताओं द्वारा विकसित किया गया था। सन माइक्रोसिस्टम का नेटवर्क फ़ाइल सिस्टम 1980 के दशक में उपलब्ध हुआ। इससे पहले, जो लोग फ़ाइलें साझा करना चाहते थे, वे स्नीकर नेट विधि का उपयोग करते थे, भौतिक रूप से भंडारण मीडिया पर फ़ाइलों को स्थान से दूसरे स्थान पर ले जाते थे। बार जब कंप्यूटर नेटवर्क का प्रसार शुरू हो गया, तो यह स्पष्ट हो गया कि सम्मलित फ़ाइल सिस्टम की कई सीमाएँ थीं और बहु-उपयोगकर्ता वातावरण के लिए अनुपयुक्त थीं। उपयोगकर्ता प्रारंभ में फ़ाइलों को साझा करने के लिए एफटीपी का उपयोग करते थे। एफ़टीपी पहली बार 1973 के अंत में पीडीपी-10 पर चलाया गया था। एफ़टीपी के साथ फ़ाइलों को सोर्स कंप्यूटर से सर्वर पर और फिर सर्वर से गंतव्य कंप्यूटर पर कॉपी करने की आवश्यकता होती है। उपयोगकर्ताओं को फ़ाइल साझाकरण में सम्मलित सभी कंप्यूटरों के भौतिक पते को जानने की आवश्यकता पड़ती थी।

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

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

आर्किटेक्चर
अधिकांश वितरित फ़ाइल सिस्टम क्लाइंट-सर्वर आर्किटेक्चर पर बनाए गए हैं, लेकिन अन्य विकेंद्रीकृत समाधान भी सम्मलित हैं।

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

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

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

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


 * उच्च उपलब्धता: कंप्यूटर क्लस्टर में हजारों फ़ाइल सर्वर हो सकते हैं और उनमें से कुछ किसी भी समय बंद हो सकते हैं


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

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

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

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

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

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

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

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

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

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

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

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

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

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

वितरित सिस्टम में पारंपरिक रूप से पाई जाने वाली अड़चनों के विवाद से निपटने के लिए लस्टर फाइल सिस्टम को डिजाइन और कार्यान्वित किया गया है। चमक इसकी दक्षता, मापनीयता और अतिरेक की विशेषता है। GPFS को भी ऐसी अड़चनों को दूर करने के टार्गेटेड के साथ डिजाइन किया गया था।

संचार
वितरित फाइल सिस्टम के उच्च प्रदर्शन के लिए कंप्यूटिंग नोड्स और स्टोरेज सिस्टम तक तेजी से पहुंच के बीच कुशल संचार की आवश्यकता होती है। उस प्रदर्शन को सुनिश्चित करने के लिए ओपन, क्लोज, रीड, राइट, सेंड और रिसीव जैसे ऑपरेशन तेज होने चाहिए। उदाहरण के लिए, प्रत्येक पढ़ने या लिखने का अनुरोध डिस्क स्टोरेज तक पहुंचता है, जो खोज, घूर्णी और नेटवर्क विलंबता का परिचय देता है।

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

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

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

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

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

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

डेटा की भौगोलिक स्थिति गोपनीयता और गोपनीयता निर्धारित करने में मदद करती है। ग्राहकों के स्थान को ध्यान में रखा जाना चाहिए। उदाहरण के लिए, यूरोप के ग्राहक संयुक्त राज्य अमेरिका में स्थित डेटा केंद्रों का उपयोग करने में रुचि नहीं लेंगे, क्योंकि इससे डेटा की गोपनीयता की गारंटी प्रभावित होती है। उस समस्या से निपटने के लिए, कुछ क्लाउड कंप्यूटिंग विक्रेताओं ने ग्राहक के साथ किए गए सर्विस-लेवल एग्रीमेंट के पैरामीटर के रूप में होस्ट की भौगोलिक स्थिति को सम्मलित किया है, उपयोगकर्ताओं को स्वयं उन सर्वरों के स्थान चुनने की अनुमति देता है जो उनके डेटा को होस्ट करेंगे।

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

अखंडता
क्लाउड कंप्यूटिंग में अखंडता का तात्पर्य डेटा अखंडता के साथ-साथ कंप्यूटिंग अखंडता से है। इस प्रकार की अखंडता का मतलब है कि डेटा को क्लाउड सर्वर पर सही ढंग से संग्रहीत करना होगा और विफलता या गलत कंप्यूटिंग के स्थिति में समस्याओं का पता लगाना होगा।

डेटा अखंडता दुर्भावनापूर्ण घटनाओं या प्रशासन त्रुटियों से प्रभावित हो सकती है (उदाहरण के लिए बैकअप और पुनर्स्थापना के समय, आंकड़ों का विस्थापन, या पीयर टू पीयर सिस्टम में सदस्यता बदलना)।

क्रिप्टोग्राफी (सामान्यतः डेटा ब्लॉक पर संदेश-प्रमाणीकरण कोड, या एमएसीएस के माध्यम से) का उपयोग करके अखंडता हासिल करना आसान है।

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

उपलब्धता
उपलब्धता सामान्यतः प्रतिकृति (कंप्यूटिंग) द्वारा प्रभावित होती है।  इस बीच, निरंतरता की गारंटी होनी चाहिए। चूंकि, निरंतरता और उपलब्धता ही समय में प्राप्त नहीं की जा सकती है; प्रत्येक को दूसरे के कुछ बलिदान पर प्राथमिकता दी जाती है। संतुलन होना चाहिए। पहुंच योग्य होने के लिए डेटा की पहचान होनी चाहिए। उदाहरण के लिए, स्कूट कुंजी/मूल्य भंडारण पर आधारित तंत्र है जो कुशल विधियाँ से गतिशील डेटा आवंटन की अनुमति देता है। प्रत्येक सर्वर को महाद्वीप-देश-डेटासेंटर-रूम-रैक-सर्वर के रूप में लेबल द्वारा पहचाना जाना चाहिए। सर्वर कई वर्चुअल नोड्स को संदर्भित कर सकता है, प्रत्येक नोड में डेटा का चयन (या एकाधिक डेटा के कई विभाजन) होते हैं। डेटा के प्रत्येक टुकड़े को प्रमुख स्थान द्वारा पहचाना जाता है जो तरफ़ा क्रिप्टोग्राफ़िक हैश फ़ंक्शन (जैसे डब्ल्यू:MD5) द्वारा उत्पन्न होता है और इस कुंजी के हैश फ़ंक्शन मान द्वारा स्थानीयकृत होता है। कुंजी स्थान को डेटा के टुकड़े के संदर्भ में प्रत्येक विभाजन के साथ कई विभाजनों में विभाजित किया जा सकता है। प्रतिकृति करने के लिए, वर्चुअल नोड्स को अन्य सर्वरों द्वारा दोहराया और संदर्भित किया जाना चाहिए। डेटा स्थायित्व और डेटा उपलब्धता को अधिकतम करने के लिए, प्रतिकृतियों को अलग-अलग सर्वरों पर रखा जाना चाहिए और प्रत्येक सर्वर को अलग भौगोलिक स्थान पर होना चाहिए, क्योंकि डेटा की उपलब्धता भौगोलिक विविधता के साथ बढ़ती है। प्रतिकृति की प्रक्रिया में स्थान की उपलब्धता का मूल्यांकन सम्मलित है, जो प्रत्येक चंक सर्वर पर निश्चित न्यूनतम थ्रेश-होल्ड से ऊपर होना चाहिए। अन्यथा, डेटा को दूसरे चंक सर्वर पर दोहराया जाता है। प्रत्येक विभाजन, i, में उपलब्धता मान है जो निम्न सूत्र द्वारा दर्शाया गया है:

$$avail_i=\sum_{i=0}^{|s_i|}\sum_{j=i+1}^{|s_i|} conf_i.conf_j.diversity(s_i,s_j)$$ कहां $$ s_{i} $$ प्रतिकृतियों को होस्ट करने वाले सर्वर हैं, $$ conf_{i} $$ और $$ conf_{j} $$ सर्वर का विश्वास हैं $$ _{i} $$ और $$ _{j} $$ (किसी देश की आर्थिक और राजनीतिक स्थिति जैसे हार्डवेयर घटकों और गैर-विधिी जैसे विधिी कारकों पर निर्भर) और विविधता के बीच भौगोलिक दूरी है$$ s_{i} $$ और $$ s_{j} $$.

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

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

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

ग्रन्थसूची



 * 1) Architecture, structure, and design:
 * 2) Security
 * 1) Architecture, structure, and design:
 * 2) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security
 * 1) Security




 * 1) Synchronization
 * 2) Economic aspects
 * 1) Economic aspects