डेटा-इंटेंसिव कंप्यूटिंग

From Vigyanwiki

डेटा-इंटेंसिव कंप्यूटिंग पैरेलल कंप्यूटिंग अनुप्रयोगों का वर्ग है जो डेटा की बड़ी मात्रा को संसाधित करने के लिए डेटा पैरेलल एप्रोच का उपयोग करता है, सामान्यतः टेराबाइट या पेटाबाइट आकार में और सामान्यतः बड़े डेटा के रूप में जाना जाता है। इस प्रकार कंप्यूटिंग अनुप्रयोग जो अपने अधिकांश एक्सेक्यूशन समय को कम्प्यूटेशनल आवश्यकताओं के लिए समर्पित करते हैं, उन्हें कंप्यूट इंटेंसिव माना जाता है, जबकि कंप्यूटिंग अनुप्रयोगों को बड़ी मात्रा में डेटा की आवश्यकता होती है और उनके अधिकांश प्रोसेसिंग समय को I/O और डेटा के परिवर्तन के लिए समर्पित किया जाता है, उन्हें डेटा-इंटेंसिव माना जाता है।[1]

परिचय

इस प्रकार इंटरनेट और वर्ल्ड वाइड वेब के तेजी से विकास के कारण बड़ी मात्रा में सूचना ऑनलाइन उपलब्ध हो गई थी। इसके अतिरिक्त, व्यवसाय और सरकारी संगठन बड़ी मात्रा में संरचित और असंरचित सूचना बनाते हैं जिन्हें संसाधित, विश्लेषण और लिंक करने की आवश्यकता होती है। विंटन सेर्फ़ ने इसे "इनफार्मेशन अवालांचे" के रूप में वर्णित किया और कहा कि "हमें इंटरनेट की ऊर्जा का दोहन करना चाहिए, इससे पहले कि इससे प्राप्त सूचना हमें समाप्त कर दे"।[2] इस प्रकार ईएमसी कॉर्पोरेशन द्वारा प्रायोजित अंतर्राष्ट्रीय डेटा कॉर्पोरेशन श्वेत पत्र में अनुमान लगाया गया है कि 2007 में डिजिटल रूप में संग्रहीत सूचना की मात्रा 281 एक्साबाइट थी और समग्र चक्रवृद्धि दर 57% थी और संगठनों में सूचना और भी तेज दर से बढ़ रही थी।[3] तथाकथित सूचना विस्फोट के 2003 के अध्ययन में यह अनुमान लगाया गया था कि सभी वर्तमान सूचनाओं का 95% संरचित सूचना की तुलना में बढ़ी हुई डेटा प्रोसेसिंग आवश्यकताओं के साथ असंरचित रूप में उपस्थित है।[4] इस विशाल मात्रा में डेटा का संग्रहण, मैनेजमेंट, पहुंच और प्रोसेसिंग मूलभूत आवश्यकता और इस डेटा को सूचना के रूप में देखने, विश्लेषण करने, खनन करने और कल्पना करने की आवश्यकताओ को पूरा करने के लिए बड़ी चुनौती का प्रतिनिधित्व करता है।[5] डेटा-इंटेंसिव कंप्यूटिंग का उद्देश्य इस आवश्यकता को पूरा करना है।

इस प्रकार पैरेलल कंप्यूटिंग एप्रोच को सामान्यतः या तो कंप्यूट इंटेंसिव, या डेटा-इंटेंसिव के रूप में वर्गीकृत किया जा सकता है।[6][7][8] कंप्यूट-इंटेंसिव का उपयोग उन एप्लिकेशन प्रोग्रामों का वर्णन करने के लिए किया जाता है जो कंप्यूट बाउंड हैं। इस प्रकार ऐसे एप्लिकेशन अपना अधिकांश एक्सेक्यूशन समय I/O के विपरीत कम्प्यूटेशनल आवश्यकताओं के लिए समर्पित करते हैं, और सामान्यतः कम मात्रा में डेटा की आवश्यकता होती है। कंप्यूट इंटेंसिव अनुप्रयोगों के पैरेलल प्रोसेसिंग में सामान्यतः आवेदन प्रक्रिया के अन्दर भिन्न-भिन्न एल्गोरिदम को पैरेलल करना और समग्र अनुप्रयोग प्रक्रिया को भिन्न-भिन्न कार्यों में विघटित करना सम्मिलित होता है, जिसे सीरियल प्रोसेसिंग की तुलना में समग्र उच्च प्रदर्शन प्राप्त करने के लिए उपयुक्त कंप्यूटिंग प्लेटफॉर्म पर पैरेलल में निष्पादित किया जा सकता है। कंप्यूट इंटेंसिव अनुप्रयोगों में, विभिन्न ऑपरेशन एक साथ किए जाते हैं, प्रत्येक ऑपरेशन समस्या के विशेष भाग को संबोधित करता है। इसे अधिकांशतः टास्क परललिस्म के रूप में जाना जाता है।

डेटा-इंटेंसिव का उपयोग उन अनुप्रयोगों का वर्णन करने के लिए किया जाता है जो I/O बाध्य हैं या जिन्हें बड़ी मात्रा में डेटा संसाधित करने की आवश्यकता है।[9] ऐसे एप्लिकेशन अपना अधिकांश प्रोसेसिंग समय I/O और डेटा के संचलन और परिवर्तन में लगाते हैं। डेटा-इंटेंसिव अनुप्रयोगों की पैरेलल कंप्यूटिंग में सामान्यतः डेटा को विभिन्न खंडों में विभाजित करना या उप-विभाजित करना सम्मिलित होता है, जिसे उपयुक्त कंप्यूटिंग प्लेटफ़ॉर्म पर पैरेलल में एक ही एक्सेक्यूशन योग्य एप्लिकेशन प्रोग्राम का उपयोग करके स्वतंत्र रूप से संसाधित किया जा सकता है, पुनः पूर्ण आउटपुट डेटा का उत्पादन करने के लिए परिणामों को पुनः से एकत्र किया जा सकता है।[10] डेटा का समग्र वितरण जितना अधिक होगा, डेटा के पैरेलल प्रोसेसिंग में उतना ही अधिक लाभ होगा। इस प्रकार डेटा-इंटेंसिव प्रोसेसिंग आवश्यकताएं सामान्यतः डेटा के आकार के अनुसार रैखिक रूप से मापी जाती हैं और सीधे समानांतरीकरण के लिए बहुत उपयुक्त होती हैं। डेटा-इंटेंसिव कंप्यूटिंग के लिए मूलभूत चुनौतियाँ तेजी से बढ़ती डेटा मात्रा का मैनेजमेंट और प्रोसेसिंग करना, व्यावहारिक, समय पर अनुप्रयोगों का समर्थन करने के लिए संबंधित डेटा विश्लेषण चक्रों को महत्वपूर्ण रूप से कम करना और नए एल्गोरिदम विकसित करना है जो बड़ी मात्रा में डेटा को खोजने और संसाधित करने के लिए स्केल कर सकते हैं। इस प्रकार शोधकर्ताओं ने रिकॉर्ड प्रोसेसिंग गति को मापने के लिए प्रति सेकंड अरबों रिकॉर्ड के लिए बीओआरपीएस शब्द लिखा, ठीक उसी प्रकार जैसे एमआईपीएस शब्द कंप्यूटर की प्रोसेसिंग गति का वर्णन करने के लिए प्रयुक्त होता है।[11]

डेटा-परललिस्म

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

यूएस नेशनल साइंस फाउंडेशन (एनएसएफ) ने 2009 से 2010 तक शोध प्रोग्राम को वित्त पोषित किया था।[15] फोकस के क्षेत्र थे:

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

पैसिफिक नॉर्थवेस्ट नेशनल लैब्स ने डेटा-इंटेंसिव कंप्यूटिंग को "मात्रा और दर पर डेटा को कैप्चर करना, प्रबंधित करना, विश्लेषण करना और समझना जो वर्तमान प्रौद्योगिकियों की सीमाओं को आगे बढ़ाता है" के रूप में परिभाषित किया है।[16][17]

एप्रोच

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

विशेषताएँ

डेटा-इंटेंसिव कंप्यूटिंग सिस्टम की विभिन्न सामान्य विशेषताएं उन्हें कंप्यूटिंग के अन्य रूपों से भिन्न करती हैं:

  1. गणना करने के लिए डेटा और प्रोग्राम या एल्गोरिदम के संग्रह के सिद्धांत का उपयोग किया जाता है। डेटा-इंटेंसिव कंप्यूटिंग में उच्च प्रदर्शन प्राप्त करने के लिए, डेटा की गति को कम करना महत्वपूर्ण है।[19] यह विशेषता प्रोसेसिंग एल्गोरिदम को उन नोड्स पर निष्पादित करने की अनुमति देती है जहां डेटा सिस्टम ओवरहेड को कम करता है और इन्फिनीबैंड प्रदर्शन बढ़ाता है।[20] जैसी नई प्रौद्योगिकियाँ डेटा को भिन्न संग्रह में संग्रहीत करने की अनुमति देती हैं और एकत्रित डेटा के तुलनीय प्रदर्शन प्रदान करती हैं।
  2. उपयोग किया गया प्रोग्रामिंग मॉडल. डेटा-इंटेंसिव कंप्यूटिंग सिस्टम मशीन-स्वतंत्र एप्रोच का उपयोग करते हैं जिसमें अनुप्रयोगों को डेटा पर उच्च-स्तरीय संचालन के संदर्भ में व्यक्त किया जाता है, और रनटाइम सिस्टम पारदर्शी रूप से प्रोग्राम और डेटा के शेड्यूलिंग, एक्सेक्यूशन, लोड संतुलन, संचार और आंदोलन को नियंत्रित करता है। डिस्ट्रिब्यूटेड कंप्यूटिंग क्लस्टर [21] प्रोग्रामिंग एब्स्ट्रैक्शन और लैंग्वेज उपकरण प्रोसेसिंग को डेटा फ्लो और परिवर्तनों के संदर्भ में व्यक्त करने की अनुमति देते हैं इस प्रकार जिसमें नई डेटाफ्लो प्रोग्रामिंग लैंग्वेज और सॉर्टिंग जैसे सामान्य डेटा परिवर्तन एल्गोरिदम की शेयर लाइब्रेरी सम्मिलित होती हैं।
  3. विश्वसनीयता और उपलब्धता पर ध्यान सैकड़ों या हजारों प्रोसेसिंग नोड्स वाले बड़े मापदंड के सिस्टम स्वाभाविक रूप से हार्डवेयर विफलताओं, संचार त्रुटियों और सॉफ़्टवेयर बग के प्रति अधिक संवेदनशील होते हैं। इस प्रकार डेटा-इंटेंसिव कंप्यूटिंग सिस्टम को दोष प्रतिरोधी होने के लिए डिज़ाइन किया गया है। इस प्रकार इसमें सामान्यतः डिस्क पर सभी डेटा फ़ाइलों की अनावश्यक प्रतियां, डिस्क पर मध्यवर्ती प्रोसेसिंग परिणामों का संग्रहण, नोड या प्रोसेसिंग विफलताओं का स्वचालित पता लगाना और परिणामों की चयनात्मक पुन: गणना सम्मिलित है।
  4. इस प्रकार इन्हेरेंट हार्डवेयर और सॉफ़्टवेयर आर्किटेक्चर की इन्हेरेंट मापनीयता डेटा-इंटेंसिव कंप्यूटिंग सिस्टम को सामान्यतः डेटा की किसी भी मात्रा को समायोजित करने के लिए, या केवल अतिरिक्त प्रोसेसिंग नोड्स जोड़कर समय-महत्वपूर्ण प्रदर्शन आवश्यकताओं को पूरा करने के लिए रैखिक फैशन में बढ़ाया जा सकता है। किसी विशिष्ट एप्लिकेशन के लिए निर्दिष्ट नोड्स और प्रोसेसिंग कार्यों की संख्या हार्डवेयर, सॉफ्टवेयर, संचार और डिस्ट्रिब्यूटेड फ़ाइल सिस्टम आर्किटेक्चर के आधार पर परिवर्तनीय या निश्चित हो सकती है।

सिस्टम आर्किटेक्चर

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

मैपरेड्युस

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

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

हडूप

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

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

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

एचपीसीसी

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

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

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

यह भी देखें

संदर्भ

  1. Handbook of Cloud Computing, "Data-Intensive Technologies for Cloud Computing," by A.M. Middleton. Handbook of Cloud Computing. Springer, 2010.
  2. An Information Avalanche, by Vinton Cerf, IEEE Computer, Vol. 40, No. 1, 2007, pp. 104-105.
  3. The Expanding Digital Universe Archived June 27, 2013, at the Wayback Machine, by J.F. Gantz, D. Reinsel, C. Chute, W. Schlichting, J. McArthur, S. Minton, J. Xheneti, A. Toncheva, and A. Manfrediz, IDC, White Paper, 2007.
  4. How Much Information? 2003, by P. Lyman, and H.R. Varian, University of California at Berkeley, Research Report, 2003.
  5. Got Data? A Guide to Data Preservation in the Information Age Archived 2011-07-18 at the Wayback Machine, by F. Berman, Communications of the ACM, Vol. 51, No. 12, 2008, pp. 50-56.
  6. Models and languages for parallel computation, by D.B. Skillicorn, and D. Talia, ACM Computing Surveys, Vol. 30, No. 2, 1998, pp. 123-169.
  7. Computing in the 21st Century[permanent dead link], by I. Gorton, P. Greenfield, A. Szalay, and R. Williams, IEEE Computer, Vol. 41, No. 4, 2008, pp. 30-32.
  8. High-Speed, Wide Area, Data Intensive Computing: A Ten Year Retrospective, by W.E. Johnston, IEEE Computer Society, 1998.
  9. IEEE: Hardware Technologies for High-Performance Data-Intensive Computing, by M. Gokhale, J. Cohen, A. Yoo, and W.M. Miller, IEEE Computer, Vol. 41, No. 4, 2008, pp. 60-68.
  10. IEEE: A Design Methodology for Data-Parallel Applications Archived 2011-07-24 at the Wayback Machine, by L.S. Nyland, J.F. Prins, A. Goldberg, and P.H. Mills, IEEE Transactions on Software Engineering, Vol. 26, No. 4, 2000, pp. 293-314.
  11. Handbook of Cloud Computing Archived 2010-11-25 at the Wayback Machine, "Data-Intensive Technologies for Cloud Computing," by A.M. Middleton. Handbook of Cloud Computing. Springer, 2010, pp. 83-86.
  12. The terascale challenge by D. Ravichandran, P. Pantel, and E. Hovy. "The terascale challenge," Proceedings of the KDD Workshop on Mining for and from the Semantic Web, 2004
  13. Dynamic adaptation to available resources for parallel computing in an autonomous network of workstations Archived 2011-07-20 at the Wayback Machine by U. Rencuzogullari, and S. Dwarkadas. "Dynamic adaptation to available resources for parallel computing in an autonomous network of workstations," Proceedings of the Eighth ACM SIGPLAN Symposium on Principles and Practices of Parallel Programming, 2001
  14. Information Extraction to Large Document Collections by E. Agichtein, "Scaling Information Extraction to Large Document Collections," Microsoft Research, 2004
  15. "डेटा-सघन कंप्यूटिंग". Program description. NSF. 2009. Retrieved 24 April 2017.
  16. Data Intensive Computing by PNNL. "Data Intensive Computing," 2008
  17. The Changing Paradigm of Data-Intensive Computing by R.T. Kouzes, G.A. Anderson, S.T. Elbert, I. Gorton, and D.K. Gracio, "The Changing Paradigm of Data-Intensive Computing," Computer, Vol. 42, No. 1, 2009, pp. 26-3
  18. Cloud computing and emerging IT platforms by R. Buyya, C.S. Yeo, S. Venugopal, J. Broberg, and I. Brandic, "Cloud computing and emerging IT platforms: Vision, hype, and reality for delivering computing as the 5th utility," Future Generation Computer Systems, Vol. 25, No. 6, 2009, pp. 599-616
  19. Distributed Computing Economics by J. Gray, "Distributed Computing Economics," ACM Queue, Vol. 6, No. 3, 2008, pp. 63-68.
  20. Computing in the 21st Century[permanent dead link], by I. Gorton, P. Greenfield, A. Szalay, and R. Williams, IEEE Computer, Vol. 41, No. 4, 2008, pp. 30-32.
  21. Data Intensive Scalable Computing by R.E. Bryant. "Data Intensive Scalable Computing," 2008
  22. A Comparison of Approaches to Large-Scale Data Analysis by A. Pavlo, E. Paulson, A. Rasin, D.J. Abadi, D.J. Dewitt, S. Madden, and M. Stonebraker. Proceedings of the 35th SIGMOD International conference on Management of Data, 2009.
  23. MapReduce: Simplified Data Processing on Large Clusters Archived 2009-12-23 at the Wayback Machine by J. Dean, and S. Ghemawat. Proceedings of the Sixth Symposium on Operating System Design and Implementation (OSDI), 2004.
  24. as a First-Class Citizen Pig Latin: A Not-So-Foreign Language for Data Processing Archived 2011-07-20 at the Wayback Machine by C. Olston, B. Reed, U. Srivastava, R. Kumar, and A. Tomkins. (Presentation at SIGMOD 2008)," 2008