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