MongoDB बनाम कैसेंड्रा के बारे में बात करते समय "दस्तावेज़-उन्मुख" बनाम कुंजी-मूल्य का क्या मतलब है?


जवाबों:


153

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

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

अन्य प्रकार के NoSQL डेटाबेस में स्तंभ-उन्मुख स्टोर , ग्राफ़ डेटाबेस और यहां तक ​​कि ऑब्जेक्ट डेटाबेस शामिल हैं । लेकिन यह सवाल से परे है।

यह सभी देखें


2
कुंजी-मूल्य स्टोर को डिस्क एक्सेस के साथ नहीं करना पड़ता है और उन्हें गैर-वाष्पशील कहना कुछ कार्यान्वयन में गलत है। आप बिना किसी वाष्पशील भंडारण माध्यम के राइट-थ्रू या राइट-बैक के साथ मेमोरी में की-वैल्यू स्टोर बना सकते हैं। डेटा को लंबे समय तक जीवित रखना भ्रामक है, क्योंकि डेटा के जीवनकाल का उस तरीके से कोई लेना-देना नहीं है, जिससे आप इसे पुनः प्राप्त करते हैं।
एंथनी

17

ठीक है, मैं पिछले महीने या तो खुद NoSQL की जांच कर रहा हूं। मुझे लगता है कि इसे आम तौर पर कुछ कहा जा सकता है

  • केवी स्टोर वास्तव में एक कुंजी के लिए संग्रहीत मूल्य सामग्री का पता नहीं है
  • दस्तावेज़ आधारित आपको मूल्य सामग्री के भीतर द्वितीयक अनुक्रमित परिभाषित करने देता है, क्योंकि db दस्तावेज़ संरचना (जैसे ब्लॉग पोस्ट के टैग) को जानता है।
  • NoSQL समाधान में प्रत्येक विशिष्ट विशेषताएं हैं जिन्हें ध्यान में रखा जाना चाहिए, जैसे कि
    • एक KV स्टोर में विशेष डेटाटाइप्स (उदाहरण के लिए लेफ्ट / राइट पॉप / रेडिस की तरह पुश के साथ सेट)
    • आसान पैमाने पर ऊपर / नीचे क्लस्टर के रूप में riak कहते हैं, यह है (मैं इसे करने की कोशिश की ... अभी तक)
    • वोल्डेमॉर्ट के रूप में प्लग करने योग्य डेटा स्टोर
    • CouchDB / couchapp में बिल्ड-इन वेब कॉन्फ़िगरेशन और वेब ऐप समर्थन

2

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

अगर हम MOngoDb और Cassandra के बीच अंतर के बारे में बताते हैं। MongoDB एक रिलेशनल डेटाबेस की तरह काम करता है। इसके डेटा मॉडल में शीर्ष स्तर पर एक डेटाबेस होता है, फिर संग्रह जो MySQL में टेबल की तरह होते हैं (उदाहरण के लिए) और फिर दस्तावेज़ जो संग्रह में शामिल होते हैं, जैसे MySQL में पंक्तियाँ। प्रत्येक दस्तावेज़ में एक फ़ील्ड और एक मान होता है जहां यह MySQL के कॉलम और मान के समान होता है। फ़ील्ड सरल कुंजी / मान हो सकते हैं जैसे {'नाम': 'डेविड मायटन'}, लेकिन वे अन्य दस्तावेज भी शामिल कर सकते हैं जैसे {'नाम': {'प्रथम': डेविड, 'अंतिम': 'मायटन'}}। कैसांद्रा में दस्तावेजों को "कॉलम" के रूप में जाना जाता है जो वास्तव में सिर्फ एक ही कुंजी और मूल्य हैं। उदा {'कुंजी': 'नाम', 'मूल्य': 'डेविड मायटन'}। एक टाइमस्टैम्प क्षेत्र भी है जो आंतरिक प्रतिकृति और स्थिरता के लिए है। मान एकल मान हो सकता है लेकिन इसमें एक और "कॉलम" भी हो सकता है। ये स्तंभ तब स्तंभ परिवारों में मौजूद होते हैं, जो एक कुंजी द्वारा संदर्भित कॉलम में एक विशिष्ट मूल्य के आधार पर डेटा का आदेश देते हैं।

लेकिन, शीर्ष स्तर पर एक कीस्पेस है, जो MongoDB डेटाबेस के समान है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.