डेटा प्रतिकृति और संगति
डेटा प्रतिकृति उपलब्धता और प्रदर्शन के लिए डेटा की कई प्रतियां रखती है, और संगति प्रोटोकॉल यह नियंत्रित करते हैं कि उन प्रतियों में पढ़े और लिखे गए डेटा का समाधान कैसे किया जाता है।
Definition
डेटा प्रतिकृति कई नोड्स पर एक डेटा आइटम की प्रतियां बनाए रखती है; एक संगति मॉडल उन मानों के बारे में गारंटी निर्दिष्ट करता है जो लिखे गए डेटा के इतिहास को देखते हुए पढ़े जा सकते हैं, जो मजबूत (प्रत्येक रीड नवीनतम राइट देखता है) से लेकर अंतिम (यदि अपडेट बंद हो जाते हैं तो प्रतिकृतियां अभिसरण करती हैं) तक होते हैं।
Scope
यह विषय प्रतिकृति रणनीतियों (प्राथमिक-बैकअप, बहु-मास्टर, कोरम), कोरम-आधारित रीड/राइट प्रोटोकॉल और उनकी प्रतिच्छेदन आवश्यकताओं, अंतिम अभिसरण के लिए एंटी-एंट्रॉपी और गॉसिप, संस्करण वैक्टर और संघर्ष-मुक्त प्रतिकृति डेटा प्रकारों (CRDTs) के साथ संघर्ष का पता लगाने, और लीनियराइजेबल से लेकर अंतिम तक संगति के स्पेक्ट्रम को शामिल करता है। यह स्टेट-मशीन प्रतिकृति के डेटा-स्तर के समकक्ष को मानता है।
Core questions
- रीड और राइट के लिए कोरम आकार कैसे गारंटी देते हैं कि रीड नवीनतम राइट को देखते हैं?
- अंतिम संगति के तहत प्रतिकृतियां कैसे अभिसरण करती हैं, और संघर्षों का समाधान कैसे किया जाता है?
- किसी एप्लिकेशन को उसकी विलंबता और उपलब्धता की जरूरतों को देखते हुए किस संगति स्तर का चयन करना चाहिए?
Key theories
- प्रतिकृति डेटा के लिए कोरम सहमति
- प्रतिकृतियों को वोट असाइन करके और रीड और राइट कोरम की आवश्यकता करके जिनके आकार कुल से अधिक होते हैं, प्रत्येक रीड कोरम नवीनतम राइट कोरम को प्रतिच्छेद करता है, यह गारंटी देता है कि रीड अद्यतन डेटा को देखते हैं।
- अंतिम संगति और एंटी-एंट्रॉपी
- अत्यधिक उपलब्ध स्टोर किसी भी प्रतिकृति पर राइट स्वीकार करते हैं और गॉसिप और संस्करण वैक्टर के माध्यम से अतुल्यकालिक रूप से समाधान करते हैं, केवल यह गारंटी देते हैं कि जब अपडेट बंद हो जाते हैं तो प्रतिकृतियां अभिसरण करती हैं, जैसा कि डायनेमो डिज़ाइन द्वारा उदाहरण दिया गया है।
- संघर्ष-मुक्त प्रतिकृति डेटा प्रकार
- CRDTs डेटा प्रकार हैं जिनके संचालन को कम्यूट करने के लिए डिज़ाइन किया गया है या जिनकी स्थितियाँ एक जॉइन-सेमिलैटिस बनाती हैं, इसलिए समवर्ती अपडेट समन्वय के बिना नियतात्मक रूप से विलय हो जाते हैं, जिससे मजबूत अंतिम संगति मिलती है।
Clinical relevance
ये तकनीकें वास्तविक भंडारण प्रणालियों की गारंटी को परिभाषित करती हैं: कोरम प्रोटोकॉल दृढ़ता से सुसंगत कुंजी-मूल्य स्टोरों को रेखांकित करते हैं, जबकि अंतिम संगति और CRDTs अत्यधिक उपलब्ध स्टोरों, शॉपिंग कार्टों और सहयोगी संपादकों को शक्ति प्रदान करते हैं जहां उपलब्धता तत्काल समझौते से अधिक महत्वपूर्ण होती है।
History
गिफोर्ड की 1979 की भारित-मतदान योजना ने कोरम प्रतिकृति की स्थापना की; अमेज़ॅन के 2007 के डायनेमो पेपर ने अत्यधिक उपलब्ध अंतिम संगति को लोकप्रिय बनाया; और CRDTs के 2011 के औपचारिककरण ने समन्वय-मुक्त अभिसरण के लिए एक सैद्धांतिक आधार दिया, जिससे आधुनिक प्रतिकृति-डेटा डिज़ाइन को आकार मिला।
Debates
- प्रतिकृति डेटा को डिफ़ॉल्ट रूप से कितनी संगति प्रदान करनी चाहिए?
- मजबूत संगति एप्लिकेशन विकास को आसान बनाती है लेकिन उपलब्धता को सीमित करती है और विलंबता बढ़ाती है, जबकि अंतिम संगति अस्थायी विचलन को उजागर करने की लागत पर उपलब्धता को अधिकतम करती है; ट्यूनेबल कोरम और CRDTs अनुप्रयोगों को प्रति ऑपरेशन चुनने देने के प्रयास हैं।
Key figures
- David Gifford
- Werner Vogels
- Marc Shapiro
- Andrew S. Tanenbaum
Related topics
Seminal works
- gifford1979
- decandia2007
- shapiro2011
Frequently asked questions
- रीड और राइट कोरम ताज़ा रीड की गारंटी कैसे देते हैं?
- यदि एक राइट को W प्रतिकृतियों तक पहुंचना चाहिए और एक रीड को R प्रतिकृतियों से परामर्श करना चाहिए, और R प्लस W प्रतिकृतियों की कुल संख्या से अधिक है, तो कोई भी रीड कोरम कम से कम एक प्रतिकृति में सबसे हाल के राइट कोरम को ओवरलैप करता है, इसलिए रीड नवीनतम मान का अवलोकन कर सकता है।