क्या CouchDB और Couchbase के बीच कोई आवश्यक अंतर हैं ।
क्या CouchDB और Couchbase के बीच कोई आवश्यक अंतर हैं ।
जवाबों:
मुझे लगता है कि CouchDB और Couchbase सर्वर के बीच कुछ आवश्यक अंतर हैं जिन्हें इंगित करने की आवश्यकता है।
मैं CouchDB से Couchbase सर्वर पर स्विच करने के फायदों के बारे में नहीं लिखूंगा क्योंकि उन सभी जगहों पर बहुत अधिक वर्णन किया गया है ( Couchbase द्वारा Couchbase बनाम डेमियन काट्ज़ या Couchbase द्वारा भविष्य का काउचबेस देखें)। इसके बजाय, मैं CouchDB की उन विशेषताओं की गणना करने की कोशिश करूँगा जो आपको Couchbase सर्वर में नहीं मिलेंगी ।
CouchDB और Couchbase से संबंधित सभी नाम वास्तव में भ्रामक हो सकते हैं, इसलिए मैंने सबसे महत्वपूर्ण लोगों के संक्षिप्त विवरण के साथ शुरू करने के लिए, इस उत्तर को अपडेट किया है।
CouchDB, CouchIO, CouchOne, Couchbase, Couchbase Server, Couchbase Mobile, Couchbase Lite, CouchApps, BigCouch, Touchbase, Membase, Memcached, MemcacheDB ... सभी अलग और अभी तक एक तरह से संबंधित हैं जो केवल नाम से ही स्पष्ट नहीं हैं।
सबसे पहले, CouchDB, डेमियन काट्ज़ द्वारा बनाया गया एक डेटाबेस था, जो एक पूर्व आईबीएम डेवलपर था। इसका अपाचे प्रोजेक्ट बनने के बाद इसका आधिकारिक नाम अपाचे काउचडीबी में बदल दिया गया।
CouchIO नाम की एक कंपनी को Apache CouchDB पर काम करने के लिए स्थापित किया गया था और बाद में इसका नाम बदलकर CouchOne कर दिया गया ("इसका नाम" से मेरा मतलब है कंपनी का नाम - डेटाबेस का नाम नहीं)।
CouchOne (पूर्व में CouchIO), Cbbase नामक एक नई कंपनी बनाने के लिए मेम्बेस (पूर्व में नॉर्थस्केल) के साथ विलय कर दिया गया था। मेम्बेस (कंपनी) ने मेम्बेस (उसी नाम का एक उत्पाद) विकसित किया। मेम्बेस को मेमकेड प्रोजेक्ट के कई नेताओं द्वारा बनाया गया था और इसने मेम्केडेड प्रोटोकॉल का उपयोग किया था। CouchOne और Membase के विलय के बाद, Couchbase ने Membase सॉफ्टवेयर का विकास जारी रखा और बाद में इसका नाम बदलकर Couchbase Server कर दिया।
आज मुझे लगता है कि ज्यादातर लोग मानते हैं कि काउचबेस सर्वर काउचडीबी का एक नया संस्करण है, लेकिन वास्तव में, यह मेम्बेस का एक नया संस्करण है। यह अभी भी मेमेकैच्ड प्रोटोकॉल का उपयोग करता है न कि काउचडबाय का RESTful API। इस बीच, CouchDB अभी भी CouchDB है, अपाचे परियोजना के रूप में सक्रिय रूप से बनाए रखा और बढ़ाया गया है।
अब प्रासंगिक अंतरों के लिए:
काउचबेस सर्वर पूरी तरह से ओपन-सोर्स / फ्री सॉफ्टवेयर नहीं है । दो संस्करण हैं: कम्युनिटी एडिशन (फ्री लेकिन कोई लेटेस्ट बग फिक्स नहीं) और एंटरप्राइज एडिशन (काउचबेस इंक द्वारा उपयोग, गोपनीयता प्रावधानों, ऑडिट पर प्रतिबंध है कि "लाइसेंसधारी की सुविधाओं पर नियमित रूप से व्यावसायिक घंटों के दौरान आयोजित किया जाएगा" और अन्य विशिष्ट शब्द मालिकाना सॉफ्टवेयर है कि कई लोगों को अस्वीकार्य मिल सकता है)।
CouchDB अपाचे सॉफ्टवेयर फाउंडेशन का एक ओपन-सोर्स / फ्री सॉफ्टवेयर (कोई तार जुड़ा हुआ) प्रोजेक्ट नहीं है और अपाचे लाइसेंस, संस्करण 2.0 (DFSG- संगत, FSF- अनुमोदित, OSI- अनुमोदित, GPL- संगत, गैर-कॉपीलेफ़्ट के तहत जारी किया गया है) , वाणिज्यिक के अनुकूल)।
मैंने इसे कभी भी सीधे तौर पर नहीं देखा है लेकिन यह वास्तव में उन दो डेटाबेस के बीच सबसे महत्वपूर्ण अंतर हो सकता है क्योंकि यह वितरित कंप्यूटिंग मॉडल के अंतर्निहित दर्शन के बारे में है और न केवल कुछ विशेषताओं, एपीआई या लाइसेंस के बारे में है। CouchDB और Couchbase सर्वर पूरी तरह से वितरित सिस्टम और डेटाबेस के निर्माण के अपने दर्शन में भिन्न होते हैं।
सीएपी प्रमेय के अनुसार एक वितरित डेटाबेस के लिए एक साथ स्थिरता, उपलब्धता और विभाजन सहिष्णुता प्रदान करना असंभव है।
CouchDB एक एपी प्रकार की प्रणाली है ( उपलब्धता और विभाजन सहिष्णुता प्रदान करता है )।
Couchbase Server एक CP प्रकार प्रणाली ( विकिपीडिया के अनुसार ) या एक CA प्रकार प्रणाली ( Couchbase तकनीकी अद्यतन के अनुसार ) है - जो कि इस सही है? कृपया टिप्पणी करें।
यह वह है जो मुझे CouchDB सुविधाओं की एक सूची के रूप में मिला जो Couchbase सर्वर द्वारा समर्थित नहीं हैं:
CouchDB की वे विशेषताएं आपके लिए महत्वपूर्ण हो सकती हैं या नहीं भी हो सकती हैं, भले ही उनमें से कमी एक नुकसान है या नहीं यह सख्ती से व्यक्तिपरक है, लेकिन मुझे लगता है कि CouchDB से Couchbase सर्वर पर स्विच करने का निर्णय या उन मतभेदों के आधार पर नहीं होना चाहिए अपने वर्तमान CouchDB तैनाती में उन सुविधाओं पर निर्भरता।
उदाहरण के लिए यदि आप काउचबीडी में बदलाव देखने के बाद काउचडीबी में रुचि रखते हैं, तो मिकाइल रोजर्स या एन क्रिस एंडरसन द्वारा महान काउच एप ट्यूटोरियल में से एक में नोडकैंप टॉक फीड करें, तो आपको यह महसूस करना होगा कि यदि आप कोस्बेस सर्वर पर स्विच करना चाहते हैं तो आप सब कुछ के बारे में बात कर रहे थे के बारे में भूल करने के लिए होगा।
उसके कारण, मैं कहूंगा कि Couchbase Server, Memcached और Membase (CouchDB का विकास नहीं) के विकास की तरह दिखता है और जैसा कि आप वर्तमान में Memchached या Membase का उपयोग कर रहे हैं, तो यह एक महान उत्पाद की तरह दिखता है। यदि आप सबसे बुनियादी तरीके से CouchDB का उपयोग कर रहे हैं, तो आप समान चीज़ों के लिए Couchbase सर्वर का उपयोग करने पर विचार कर सकते हैं और यह बेहतर प्रदर्शन कर सकता है (यदि आपके पास लाइसेंस प्रतिबंधों का बुरा नहीं है)। लेकिन अगर आप वास्तव में CouchDB में अद्वितीय विशेषताओं में से किसी का उपयोग कर रहे हैं (जैसे परिवर्तन फ़ीड, CouchApps, दो स्तरीय वास्तुकला, सहकर्मी से सहकर्मी प्रतिकृति आदि) तो आप या तो उन सुविधाओं के बारे में भूल सकते हैं या CouchDB के बारे में रह सकते हैं। किसी भी स्थिति में, स्विचिंग के बारे में सोचने से पहले CouchDB उपयोगकर्ता ट्यूटोरियल के लिए काउचबेस के माइग्रेशन को पढ़ना और समझना सुनिश्चित करें ।
लोगों को अक्सर गलत धारणा मिलती है (हो सकता है कि "CouchDB का भविष्य क्या है? Couchbase।" ) जैसी चीजों को पढ़ने के बाद , CouchDB को Couchbase सर्वर द्वारा किसी तरह का पालन किया जाता है, या यह कि Couchbase का एक पुराना, विरासत संस्करण है। इस बीच CouchDB एक सक्रिय रूप से बनाए रखा ओपन-सोर्स प्रोजेक्ट है, Couchbase सर्वर एक पूरी तरह से अलग परियोजना है (यह एक नई परियोजना है लेकिन यह CouchDB का एक नया संस्करण नहीं है - वे भी संगत नहीं हैं) और CouchbApp बनाने के लिए नए उपकरण अभी भी बनाए रखें विकसित किया जा रहा है (उदाहरण के लिए कान्सो परियोजना देखें ) तब काउचबडी जल्द ही कहीं नहीं जा रही है।
मुझे आशा है कि यह भ्रम को स्पष्ट करता है। कृपया मुझे सही करें अगर मैं यहाँ कुछ भी गलत हूँ।
काउचबेस सर्वर वास्तव में मेम्बेस सर्वर का एक नया नाम है (मेम्बेस सर्वर का नाम बदलकर Couchbase सर्वर को संस्करण 1.8 के आसपास कहीं रखा गया था)। 2011 में Couchbase की समीक्षा में देखें :
दुर्भाग्य से, हमने अपने कई संभावित उपयोगकर्ताओं से बाहर होने की बात कुबूल कर ली। मेम्बेस सर्वर और हमारे नए मोबाइल उत्पादों के अलावा, हमने काउचबेस सिंगल सर्वर की भी पेशकश की, जो अपाचे काउचडीबी का एक "वितरण" पैक था। उसके ऊपर हमने Couchbase Server 2.0 के डेवलपर पूर्वावलोकन जारी करना शुरू किया, जिसमें CouchDB तकनीक को मेम्बेस सर्वर में शामिल किया गया - लेकिन यह उत्पाद Couchbase Single Server (या CouchDB) के साथ संगत नहीं था। [...] मेम्बेस सर्वर का नाम बदलकर काउचबेस सर्वर 1.8 जनवरी में इसकी अगली रिलीज पर रखा जाएगा - एक छोटा कदम जो कि केवल "नाम" भ्रम को दूर करता है। जैसा कि शुरू से ही योजना बनाई गई है, काउचबेस सर्वर 2.0 रिलीज़ (वर्तमान में डेवलपर पूर्वावलोकन 3) सूचकांक और क्वेरी कार्यक्षमता को जोड़ देगा। जबकि Couchbase सर्वर 2.0 CouchDB परियोजना से पर्याप्त प्रौद्योगिकी को शामिल करेगा,यह CouchDB के साथ संगत नहीं होगा और इसे "CouchDB के संस्करण" के रूप में नहीं देखा जाना चाहिए। [महत्व दिया]
वे सॉफ्टवेयर के समान अलग-अलग टुकड़े हैं। मैंने एक तस्वीर में शीर्ष उत्तर से उस सामग्री को हटा दिया है जो "अंतर" के साथ-साथ सामान्य चीजों को स्पष्ट करने में मदद कर सकती है:
मैट इनजेनट्रॉन की एक टिप्पणी इसमें शामिल है:
कुछ संदर्भ / सुधार जोड़ने के लिए: नॉर्थस्केल के संस्थापक स्टीव येन और डस्टिन सैलिंग हैं। मैंने स्थापना के कुछ समय बाद ही उन्हें ज्वाइन कर लिया। इसके अलावा, डेमियन बाद में काउचबेस में शामिल नहीं हुआ, वह विलय से पहले काउचियो / काउच वन का हिस्सा था। एक मजेदार, ऐतिहासिक स्रोत का हवाला देते हुए: https://youtube.com/watch?v=aZ_JOnU8tkI
मुझे लगता है कि CouchBase को CouchDB के 'एंटरप्राइज' विकल्प के रूप में माना जाता है। जो एक तरह से सत्य प्रतीत होता है। CouchDB की तुलना में रिकॉर्ड्स (दस्तावेजों) और 'आउट-ऑफ-द-बॉक्स' REST के एंडपॉइंट्स में फाइल अटैच करने की क्षमता के अलावा, CouchBase में भाषा की तरह sql है (N1QL (कभी-कभी निकेल उच्चारण)। यह एक कारण है कि मुझे 'NoSQL' शब्द का उपयोग करना वास्तव में पसंद नहीं है। मुझे व्यक्तिगत रूप से 'गैर-संबंधपरक' शब्द पसंद है।