डेटा-इंटेंसिव कंप्यूटिंग
डेटा-इंटेंसिव कंप्यूटिंग पैरेलल कंप्यूटिंग अनुप्रयोगों का वर्ग है जो डेटा की बड़ी मात्रा को संसाधित करने के लिए डेटा पैरेलल दृष्टिकोण का उपयोग करता है, सामान्यतः टेराबाइट या पेटाबाइट आकार में और सामान्यतः बड़े डेटा के रूप में जाना जाता है। कंप्यूटिंग अनुप्रयोग जो अपने अधिकांश निष्पादन समय को कम्प्यूटेशनल आवश्यकताओं के लिए समर्पित करते हैं, उन्हें कंप्यूट इंटेंसिव माना जाता है, जबकि कंप्यूटिंग अनुप्रयोगों को बड़ी मात्रा में डेटा की आवश्यकता होती है और उनके अधिकांश प्रसंस्करण समय को 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] पैरेलल प्रसंस्करण के इस दृष्टिकोण को अधिकांशतः "साझा कुछ भी नहीं" दृष्टिकोण के रूप में जाना जाता है क्योंकि प्रोसेसर, स्थानीय मेमोरी और डिस्क संसाधनों से युक्त प्रत्येक नोड क्लस्टर में अन्य नोड्स के साथ कुछ भी साझा नहीं करता है। पैरेलल कंप्यूटिंग में यह दृष्टिकोण डेटा-इंटेंसिव कंप्यूटिंग और उन समस्याओं के लिए उपयुक्त माना जाता है जो "शर्मनाक रूप से पैरेलल" हैं, यानी जहां समस्या को विभिन्न पैरेलल कार्यों में भिन्न करना अपेक्षाकृत आसान है और अन्य कार्यों के बीच कोई निर्भरता या संचार की आवश्यकता नहीं है कार्यों के समग्र प्रबंधन की तुलना में। इस प्रकार की डेटा प्रोसेसिंग समस्याएं क्लस्टर, डेटा ग्रिड और क्लाउड कम्प्यूटिंग सहित वितरित कंप्यूटिंग के विभिन्न रूपों के लिए स्वाभाविक रूप से अनुकूलनीय हैं।
विशेषताएँ
डेटा-इंटेंसिव कंप्यूटिंग सिस्टम की विभिन्न सामान्य विशेषताएं उन्हें कंप्यूटिंग के अन्य रूपों से भिन्न करती हैं:
- गणना करने के लिए डेटा और प्रोग्राम या एल्गोरिदम के संग्रह के सिद्धांत का उपयोग किया जाता है। डेटा-इंटेंसिव कंप्यूटिंग में उच्च प्रदर्शन प्राप्त करने के लिए, डेटा की गति को कम करना महत्वपूर्ण है।[19] यह विशेषता प्रसंस्करण एल्गोरिदम को उन नोड्स पर निष्पादित करने की अनुमति देती है जहां डेटा सिस्टम ओवरहेड को कम करता है और प्रदर्शन बढ़ाता है।[20] InfiniBand जैसी नई प्रौद्योगिकियाँ डेटा को भिन्न भंडार में संग्रहीत करने की अनुमति देती हैं और एकत्रित डेटा के तुलनीय प्रदर्शन प्रदान करती हैं।
- उपयोग किया गया प्रोग्रामिंग मॉडल. डेटा-इंटेंसिव कंप्यूटिंग सिस्टम मशीन-स्वतंत्र दृष्टिकोण का उपयोग करते हैं जिसमें अनुप्रयोगों को डेटा पर उच्च-स्तरीय संचालन के संदर्भ में व्यक्त किया जाता है, और रनटाइम सिस्टम पारदर्शी रूप से प्रोग्राम और डेटा के शेड्यूलिंग, निष्पादन, लोड संतुलन, संचार और आंदोलन को नियंत्रित करता है। वितरित कंप्यूटिंग क्लस्टर।[21] प्रोग्रामिंग एब्स्ट्रैक्शन और भाषा उपकरण प्रसंस्करण को डेटा प्रवाह और परिवर्तनों के संदर्भ में व्यक्त करने की अनुमति देते हैं जिसमें नई डेटाफ्लो प्रोग्रामिंग भाषाओं और सॉर्टिंग जैसे सामान्य डेटा परिवर्तन एल्गोरिदम की साझा लाइब्रेरी सम्मिलित होती हैं।
- विश्वसनीयता और उपलब्धता पर ध्यान। सैकड़ों या हजारों प्रोसेसिंग नोड्स वाले बड़े पैमाने के सिस्टम स्वाभाविक रूप से हार्डवेयर विफलताओं, संचार त्रुटियों और सॉफ़्टवेयर बग के प्रति अधिक संवेदनशील होते हैं। डेटा-इंटेंसिव कंप्यूटिंग सिस्टम को दोष प्रतिरोधी होने के लिए डिज़ाइन किया गया है। इसमें सामान्यतः डिस्क पर सभी डेटा फ़ाइलों की अनावश्यक प्रतियां, डिस्क पर मध्यवर्ती प्रसंस्करण परिणामों का संग्रहण, नोड या प्रसंस्करण विफलताओं का स्वचालित पता लगाना और परिणामों की चयनात्मक पुन: गणना सम्मिलित है।
- अंतर्निहित हार्डवेयर और सॉफ़्टवेयर वास्तुशिल्प की अंतर्निहित मापनीयता। डेटा-इंटेंसिव कंप्यूटिंग सिस्टम को सामान्यतः डेटा की किसी भी मात्रा को समायोजित करने के लिए, या केवल अतिरिक्त प्रोसेसिंग नोड्स जोड़कर समय-महत्वपूर्ण प्रदर्शन आवश्यकताओं को पूरा करने के लिए रैखिक फैशन में बढ़ाया जा सकता है। किसी विशिष्ट एप्लिकेशन के लिए निर्दिष्ट नोड्स और प्रोसेसिंग कार्यों की संख्या हार्डवेयर, सॉफ्टवेयर, संचार और वितरित फ़ाइल सिस्टम आर्किटेक्चर के आधार पर परिवर्तनीय या निश्चित हो सकती है।
प्रणाली आर्किटेक्चर
डेटा-इंटेंसिव कंप्यूटिंग और बड़े पैमाने पर डेटा विश्लेषण अनुप्रयोगों के लिए विभिन्न प्रकार के सिस्टम आर्किटेक्चर प्रयुक्त किए गए हैं, जिनमें पैरेलल और वितरित संबंधपरक डेटाबेस प्रबंधन प्रणाली सम्मिलित हैं जो दो दशकों से अधिक समय से प्रोसेसिंग नोड्स के साझा कुछ भी नहीं क्लस्टर पर चलने के लिए उपलब्ध हैं।[22] हालाँकि अधिकांश डेटा वृद्धि असंरचित रूप में डेटा के साथ होती है और अधिक लचीले डेटा मॉडल के साथ नए प्रसंस्करण प्रतिमानों की आवश्यकता थी। Google द्वारा अग्रणी MapReduce आर्किटेक्चर सहित विभिन्न समाधान सामने आए हैं और अब यह Yahoo, Facebook और अन्य द्वारा उपयोग किए जाने वाले Hadoop नामक ओपन-सोर्स कार्यान्वयन में उपलब्ध है। LexisNexis ने डेटा-इंटेंसिव कंप्यूटिंग के लिए स्केलेबल प्लेटफ़ॉर्म भी विकसित और कार्यान्वित किया है जिसका उपयोग LexisNexis द्वारा किया जाता है।
MapReduce
Google द्वारा अग्रणी MapReduce आर्किटेक्चर और प्रोग्रामिंग मॉडल डेटा-इंटेंसिव कंप्यूटिंग के लिए डिज़ाइन किए गए आधुनिक सिस्टम आर्किटेक्चर का उदाहरण है।[23] MapReduce आर्किटेक्चर प्रोग्रामर्स को मैप फ़ंक्शन बनाने के लिए कार्यात्मक प्रोग्रामिंग शैली का उपयोग करने की अनुमति देता है जो मध्यवर्ती विशेषता-मूल्य जोड़ी | कुंजी-मूल्य जोड़े का सेट उत्पन्न करने के लिए इनपुट डेटा से जुड़े विशेषता-मूल्य जोड़ी | कुंजी-मूल्य जोड़ी को संसाधित करता है, और कम करने वाला फ़ंक्शन जो ही मध्यवर्ती कुंजी से जुड़े सभी मध्यवर्ती मानों को मर्ज करता है। चूँकि सिस्टम स्वचालित रूप से इनपुट डेटा को विभाजित करने, प्रोसेसिंग क्लस्टर में कार्यों को शेड्यूल करने और निष्पादित करने और नोड्स के बीच संचार को प्रबंधित करने जैसे विवरणों का ध्यान रखता है, पैरेलल प्रोग्रामिंग में कोई अनुभव नहीं रखने वाले प्रोग्रामर आसानी से बड़े वितरित प्रोसेसिंग वातावरण का उपयोग कर सकते हैं।
MapReduce आर्किटेक्चर के लिए प्रोग्रामिंग मॉडल सरल अमूर्त है जहां गणना इनपुट डेटा से जुड़े इनपुट कुंजी-मूल्य जोड़े का सेट लेती है और आउटपुट कुंजी-मूल्य जोड़े का सेट तैयार करती है। मैप चरण में, इनपुट डेटा को इनपुट स्प्लिट्स में विभाजित किया जाता है और क्लस्टर में प्रोसेसिंग नोड्स से जुड़े मैप कार्यों को सौंपा जाता है। मानचित्र कार्य सामान्यतः उसी नोड पर निष्पादित होता है जिसमें क्लस्टर में डेटा का निर्दिष्ट विभाजन होता है। ये मानचित्र कार्य कार्य को सौंपे गए इनपुट डेटा के विभाजन से प्रत्येक इनपुट कुंजी-मूल्य जोड़ी पर उपयोगकर्ता-निर्दिष्ट गणना करते हैं, और प्रत्येक कुंजी के लिए मध्यवर्ती परिणामों का सेट उत्पन्न करते हैं। फेरबदल और सॉर्ट चरण पुनः प्रत्येक मानचित्र कार्य द्वारा उत्पन्न मध्यवर्ती डेटा लेता है, इस डेटा को अन्य नोड्स से मध्यवर्ती डेटा के साथ सॉर्ट करता है, इस डेटा को कम कार्यों द्वारा संसाधित किए जाने वाले क्षेत्रों में विभाजित करता है, और इस डेटा को आवश्यकतानुसार नोड्स में वितरित करता है जहां कम करें कार्य निष्पादित होंगे. रिड्यूस कार्य मध्यवर्ती डेटा पर अतिरिक्त उपयोगकर्ता-निर्दिष्ट संचालन करते हैं, संभवतः आउटपुट डेटा उत्पन्न करने के लिए कुंजी से जुड़े मानों को मानों के छोटे सेट में विलय कर देते हैं। अधिक जटिल डेटा प्रोसेसिंग प्रक्रियाओं के लिए, एकाधिक MapReduce कॉल को क्रम में साथ जोड़ा जा सकता है।
हडूप
अपाचे Hadoop अपाचे सॉफ्टवेयर फाउंडेशन द्वारा प्रायोजित ओपन सोर्स सॉफ्टवेयर प्रोजेक्ट है जो MapReduce आर्किटेक्चर को प्रयुक्त करता है। Hadoop में अब बेस कोर, MapReduce और HDFS वितरित फ़ाइल सिस्टम के अतिरिक्त विभिन्न उपप्रोजेक्ट सम्मिलित हैं। ये अतिरिक्त उपप्रोजेक्ट बेस Hadoop कार्यान्वयन के लिए उन्नत एप्लिकेशन प्रोसेसिंग क्षमताएं प्रदान करते हैं और वर्तमान में इसमें एवरो, पिग_(प्रोग्रामिंग_लैंग्वेज), HBase, अपाचे ज़ूकीपर, अपाचे हाइव और चुकवा सम्मिलित हैं। Hadoop MapReduce आर्किटेक्चर कार्यात्मक रूप से Google कार्यान्वयन के समान है, सिवाय इसके कि Hadoop के लिए आधार प्रोग्रामिंग भाषा C++ के बजाय Java (प्रोग्रामिंग भाषा) है। कार्यान्वयन का उद्देश्य कमोडिटी प्रोसेसर के समूहों पर अमल करना है।
Hadoop MapReduce नौकरियों के लिए वितरित डेटा प्रोसेसिंग शेड्यूलिंग और निष्पादन वातावरण और ढांचे को प्रयुक्त करता है। Hadoop में HDFS नामक वितरित फ़ाइल सिस्टम सम्मिलित है जो Google MapReduce कार्यान्वयन में Google फ़ाइल सिस्टम के अनुरूप है। Hadoop निष्पादन वातावरण अतिरिक्त वितरित डेटा प्रोसेसिंग क्षमताओं का समर्थन करता है जिन्हें Hadoop MapReduce आर्किटेक्चर का उपयोग करके चलाने के लिए डिज़ाइन किया गया है। इनमें HBase सम्मिलित है, वितरित कॉलम-उन्मुख डेटाबेस जो रैंडम एक्सेस पढ़ने/लिखने की क्षमता प्रदान करता है; हाइव जो Hadoop के शीर्ष पर निर्मित डेटा वेयरहाउस सिस्टम है जो डेटा सारांश, तदर्थ क्वेरी और बड़े डेटासेट के विश्लेषण के लिए SQL जैसी क्वेरी क्षमताएं प्रदान करता है; और पिग - डेटा-इंटेंसिव कंप्यूटिंग के लिए उच्च-स्तरीय डेटा-प्रवाह प्रोग्रामिंग भाषा और निष्पादन ढांचा।
Pig_(प्रोग्रामिंग_भाषा) Yahoo! में विकसित किया गया था। डेटा विश्लेषण अनुप्रयोगों के लिए विशिष्ट भाषा संकेतन प्रदान करने और Hadoop MapReduce वातावरण का उपयोग करते समय प्रोग्रामर उत्पादकता में सुधार और विकास चक्र को कम करने के लिए। निष्पादन परिवेश में आवश्यकता पड़ने पर पिग प्रोग्राम स्वचालित रूप से MapReduce प्रोग्राम के अनुक्रमों में अनुवादित हो जाते हैं। पिग भाषा में डेटा को लोड करने, संग्रहीत करने, फ़िल्टर करने, समूह बनाने, डी-डुप्लीकेशन, ऑर्डर देने, सॉर्ट करने, एकत्रीकरण और संचालन में सम्मिलित होने की क्षमता प्रदान करता है।[24]
एचपीसीसी
एचपीसीसी (हाई-परफॉर्मेंस कंप्यूटिंग क्लस्टर) को लेक्सिसनेक्सिस रिस्क सॉल्यूशंस द्वारा विकसित और कार्यान्वित किया गया था। इस कंप्यूटिंग प्लेटफ़ॉर्म का विकास 1999 में शुरू हुआ और 2000 के अंत तक एप्लिकेशन उत्पादन में थे। एचपीसीसी दृष्टिकोण लिनक्स ऑपरेटिंग सिस्टम चलाने वाले हार्डवेयर के कमोडिटी क्लस्टर का भी उपयोग करता है। डेटा-इंटेंसिव कंप्यूटिंग के लिए आवश्यक निष्पादन वातावरण और वितरित फ़ाइल सिस्टम समर्थन प्रदान करने के लिए कस्टम सिस्टम सॉफ़्टवेयर और मिडलवेयर घटकों को बेस लिनक्स ऑपरेटिंग सिस्टम पर विकसित और स्तरित किया गया था। लेक्सिसनेक्सिस ने डेटा-इंटेंसिव कंप्यूटिंग के लिए नई उच्च-स्तरीय भाषा भी प्रयुक्त की।
ईसीएल (डेटा-केंद्रित प्रोग्रामिंग भाषा) उच्च-स्तरीय, घोषणात्मक, डेटा-केंद्रित, अंतर्निहित समानता भाषा है जो प्रोग्रामर को यह परिभाषित करने की अनुमति देती है कि डेटा प्रोसेसिंग परिणाम क्या होना चाहिए और परिणाम प्राप्त करने के लिए डेटा प्रवाह और परिवर्तन आवश्यक हैं। ईसीएल भाषा में डेटा परिभाषा, फ़िल्टरिंग, डेटा प्रबंधन और डेटा परिवर्तन के लिए व्यापक क्षमताएं सम्मिलित हैं, और डेटासेट में रिकॉर्ड पर काम करने के लिए अंतर्निहित कार्यों का व्यापक सेट प्रदान करता है जिसमें उपयोगकर्ता-परिभाषित परिवर्तन फ़ंक्शन सम्मिलित हो सकते हैं। ईसीएल कार्यक्रमों को अनुकूलित सी++ स्रोत कोड में संकलित किया जाता है, जिसे बाद में निष्पादन योग्य कोड में संकलित किया जाता है और प्रोसेसिंग क्लस्टर के नोड्स में वितरित किया जाता है।
डेटा-इंटेंसिव कंप्यूटिंग अनुप्रयोगों के बैच और ऑनलाइन दोनों पहलुओं को संबोधित करने के लिए, एचपीसीसी में दो भिन्न-भिन्न क्लस्टर वातावरण सम्मिलित हैं, जिनमें से प्रत्येक को इसके पैरेलल डेटा प्रोसेसिंग उद्देश्य के लिए स्वतंत्र रूप से अनुकूलित किया जा सकता है। थोर प्लेटफ़ॉर्म क्लस्टर है जिसका उद्देश्य डेटा सफाई और स्वच्छता, एक्सट्रैक्ट, ट्रांसफॉर्म, लोड (ईटीएल), रिकॉर्ड लिंकिंग और इकाई रिज़ॉल्यूशन, बड़े पैमाने पर विज्ञापन जैसे अनुप्रयोगों के लिए कच्चे डेटा की भारी मात्रा में प्रसंस्करण के लिए डेटा रिफाइनरी बनना है। डेटा का हॉक विश्लेषण, और उच्च-प्रदर्शन संरचित प्रश्नों और डेटा वेयरहाउस अनुप्रयोगों का समर्थन करने के लिए कुंजीबद्ध डेटा और अनुक्रमित का निर्माण। थोर सिस्टम अपने हार्डवेयर कॉन्फ़िगरेशन, फ़ंक्शन, निष्पादन वातावरण, फ़ाइल सिस्टम और क्षमताओं में Hadoop MapReduce प्लेटफ़ॉर्म के समान है, लेकिन समकक्ष कॉन्फ़िगरेशन में उच्च प्रदर्शन प्रदान करता है। रॉक्सी प्लेटफ़ॉर्म ऑनलाइन उच्च-प्रदर्शन संरचित क्वेरी और विश्लेषण प्रणाली या डेटा वेयरहाउस प्रदान करता है जो वेब सेवाओं के इंटरफेस के माध्यम से ऑनलाइन अनुप्रयोगों की पैरेलल डेटा एक्सेस प्रोसेसिंग आवश्यकताओं को पूरा करता है, जो साथ हजारों प्रश्नों और उप-सेकंड प्रतिक्रिया समय वाले उपयोगकर्ताओं का समर्थन करता है। रॉक्सी सिस्टम अपने कार्य और क्षमताओं में HBase और Apache Hive क्षमताओं के साथ Hadoop के समान है, लेकिन उच्च-प्रदर्शन ऑनलाइन प्रसंस्करण के लिए अनुकूलित निष्पादन वातावरण और फ़ाइल सिस्टम प्रदान करता है। थोर और रॉक्सी दोनों सिस्टम अनुप्रयोगों को प्रयुक्त करने, प्रोग्रामर उत्पादकता बढ़ाने के लिए ही ईसीएल प्रोग्रामिंग भाषा का उपयोग करते हैं।
यह भी देखें
- निहित समानता
- बड़े पैमाने पर पैरेलल
- सुपर कंप्यूटर
- ग्राफ500
संदर्भ
- ↑ Handbook of Cloud Computing, "Data-Intensive Technologies for Cloud Computing," by A.M. Middleton. Handbook of Cloud Computing. Springer, 2010.
- ↑ An Information Avalanche, by Vinton Cerf, IEEE Computer, Vol. 40, No. 1, 2007, pp. 104-105.
- ↑ 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.
- ↑ How Much Information? 2003, by P. Lyman, and H.R. Varian, University of California at Berkeley, Research Report, 2003.
- ↑ 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.
- ↑ Models and languages for parallel computation, by D.B. Skillicorn, and D. Talia, ACM Computing Surveys, Vol. 30, No. 2, 1998, pp. 123-169.
- ↑ 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.
- ↑ High-Speed, Wide Area, Data Intensive Computing: A Ten Year Retrospective, by W.E. Johnston, IEEE Computer Society, 1998.
- ↑ 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.
- ↑ 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.
- ↑ 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.
- ↑ 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
- ↑ 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
- ↑ Information Extraction to Large Document Collections by E. Agichtein, "Scaling Information Extraction to Large Document Collections," Microsoft Research, 2004
- ↑ "डेटा-सघन कंप्यूटिंग". Program description. NSF. 2009. Retrieved 24 April 2017.
- ↑ Data Intensive Computing by PNNL. "Data Intensive Computing," 2008
- ↑ 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
- ↑ 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
- ↑ Distributed Computing Economics by J. Gray, "Distributed Computing Economics," ACM Queue, Vol. 6, No. 3, 2008, pp. 63-68.
- ↑ 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.
- ↑ Data Intensive Scalable Computing by R.E. Bryant. "Data Intensive Scalable Computing," 2008
- ↑ 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.
- ↑ 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.
- ↑ 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