हम वितरित कंप्यूटिंग के एकीकृत जटिलता सिद्धांत को विकसित करने में सक्षम क्यों नहीं हुए हैं?


41

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

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

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

एकमात्र संदर्भ जो मुझे मिल सकता है कि इस मुद्दे को संबोधित करता है: " फिशर और मेरिट डीओआई द्वारा" वितरित कंप्यूटिंग सिद्धांत अनुसंधान के दो दशकों का मूल्यांकन ": 10.1007 / s00446-003-0096-6

कोई संदर्भ या एक्सपोज़िशन वास्तव में सहायक होगा।

जवाबों:


26

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

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


7
संबंधित क्षेत्रों के परिभाषित प्रश्नों पर भी विचार करें। "मान लें कि आप पूरी तरह से गणना कर सकते हैं। आप क्या कर सकते हैं और क्या नहीं कर सकते हैं?" बनाम "मान लें कि आपके पास एक दोषपूर्ण चैनल, प्रोसेसर है, या मान लें कि आपके पास एक प्रतिकूल है। उन बाधाओं का सामना करने पर आप सफलतापूर्वक कैसे गणना कर सकते हैं?" पहला प्रश्न "स्वच्छ" उत्तरों को प्रस्तुत करने की अधिक संभावना है। दूसरा है, गन्दगी को वैज्ञानिक बनाने का अनुरोध।
हारून स्टर्लिंग

21

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

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

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

यह मॉडल वितरित कंप्यूटिंग के कई पहलुओं को एक एकीकृत दृष्टिकोण प्रदान करता है:

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

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


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


अगर मैं इसे सही ढंग से समझूं, तो मुद्दा यह है कि केवल सिंक्रोनस सिस्टम के लिए एक सुरुचिपूर्ण सिद्धांत है और बहुत कुछ नहीं। सिंक्रोनस के अलावा अन्य प्रणालियों के संबंध में, हम दो अलग-अलग समुदायों से समस्याओं / foci का सामना कर रहे हैं, और यह एकल सिद्धांत विकसित करने के साथ पद्धतिगत मुद्दों को प्रस्तुत करता है। क्या मैंने आपके तर्कों को सही ढंग से समझा है?
श्रीकांत शास्त्री

बहुत जानकारीपूर्ण उत्तर के लिए धन्यवाद। मैं इसे उत्तर के रूप में स्वीकार करूंगा।
मोहम्मद अल-तुर्कस्टनी

5

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


4

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


मैं समझता हूं कि वितरित स्थान में समस्याओं के 'व्यावहारिक' समाधान को समझने के लिए परिष्कृत मॉडल पेश किए गए थे। कोई इन सुव्यवस्थित मॉडलों से अपेक्षा करेगा कि वे एकांत, समय की जटिलता और संदेश की जटिलता के संबंध में बड़े करीने से खुद को व्यवस्थित रूप से व्यवस्थित कर सकें। दुर्भाग्य से, मामला यह नहीं है। यहाँ मेरा सवाल यह है कि इस गंजेपन का कारण क्या है? यदि यह वितरित कंप्यूटिंग के लिए निहित कुछ विशेषता है, तो वे क्या हैं?
श्रीकांत शास्त्री
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.