कैप प्रमेय बनाम आधार (NoSQL)
नमस्ते, मैं NoSQL के बारे में अपने काम के लिए एक छोटा सा पेपर लिखने की कोशिश कर रहा हूं और CAP प्रमेय का वर्णन किया है, यदि सभी नहीं, तो अधिकांश NoSQL डेटाबेस का पालन करता है। मैंने बाद में NoSQL और RDBMS के बीच अंतर के बारे में एक पेपर पढ़ा, जिसमें कहा गया था कि NoSQL डेटाबेस ACID समकक्ष आधार का उपयोग करते हैं।
मैं BASE, ACID और CAP के गुणों को जानता हूं, लेकिन मुझे लगता है कि CAP प्रमेय और BASE का एक-दूसरे के साथ क्या संबंध है, यह पता लगाने में कठिन समय है। जैसा कि मैंने इसे समझा है, CAP प्रमेय BASE संक्षिप्त नाम है लेकिन क्या यह सही निष्कर्ष है? या क्या यह दो अलग-अलग तरीकों से "बनाया" एक डेटाबेस है जिसके चारों ओर कुछ समान गुण हैं?
इस ब्लॉग पोस्ट में (http://www.johndcook.com/blog/2009/07/06/brewer-cap-theorem-base/) लेखक लिखते हैं:
यह कठिन सहिष्णु ACID दुनिया की तुलना में गलती-सहिष्णु BASE दुनिया में सॉफ्टवेयर विकसित करने के लिए कठिन है, लेकिन Brewer's CAP theorem का कहना है कि अगर आपके पास कोई विकल्प नहीं है तो आप इसे बढ़ाना चाहते हैं। हालाँकि, जैसा कि ब्रूवर इस प्रस्तुति में बताते हैं, ACID और BASE के बीच एक निरंतरता है। आप यह तय कर सकते हैं कि आप अपनी प्राथमिकताओं के अनुसार निरंतरता के एक छोर या दूसरे के कितने करीब होना चाहते हैं।
एक अन्य लेख में लेखक लिखते हैं:
सभी से ऊपर NOSQL डेटाबेस में से कई बेहतर उपलब्धता और विभाजन को प्राप्त करने के लिए निरंतरता पर आवश्यकताओं को ढीला कर दिया है। इसके परिणामस्वरूप सिस्टम को बेस (मूल रूप से उपलब्ध, सॉफ्ट-स्टेट, अंततः सुसंगत) के रूप में जाना जाता है। शास्त्रीय अर्थों में इनका कोई लेन-देन नहीं है और बेहतर विभाजन योजनाओं (जैसे डायनामो सिस्टम आदि) को सक्षम करने के लिए डेटा मॉडल पर बाधाओं का परिचय दिया जाता है। इस प्रस्ताव में CAP, ACID और BASE की अधिक व्यापक चर्चा उपलब्ध है।
यह स्पष्ट रूप से बताता है कि CAP का परिणाम BASE है।
मुझे आशा है कि कोई मुझे यह स्पष्ट कर सकता है और मेरा भ्रम दूर कर सकता है।
धन्यवाद
- Mestika