MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

डेटा की तरह स्पैस टाइम सीरीज़ के लिए किस नोएसक्यूएल डीबी का उपयोग करना है?

मेरा मानना ​​है कि सभी प्रमुख NoSQL डेटाबेस उस आवश्यकता का समर्थन करेंगे, खासकर यदि आपके पास वास्तव में बड़ी मात्रा में डेटा नहीं है (जो सवाल पूछता है, NoSQL क्यों?)।

उस ने कहा, मुझे हाल ही में समय श्रृंखला डेटा के लिए नोएसक्यूएल डेटाबेस के साथ डिजाइन और काम करना पड़ा है ताकि उस डिज़ाइन पर कुछ इनपुट दे सकें, जिसे अन्य सभी के लिए एक्सट्रपलेशन किया जा सकता है।

हमारा चुना हुआ डेटाबेस था Cassandra , और हमारा डिज़ाइन इस प्रकार था:

  • सभी 'प्रतीकों' के लिए एक सिंगल कीस्पेस
  • प्रत्येक प्रतीक एक नई पंक्ति थी
  • हर बार प्रविष्टि उस प्रासंगिक पंक्ति के लिए एक नया कॉलम था
  • प्रत्येक मान (एक मान से अधिक हो सकता है) समय प्रविष्टि का मान भाग था

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

इसके अलावा, यहाँ एक टाइम सीरीज़ स्टोर के लिए MongoDB (और यदि आवश्यक हो तो कैप्ड संग्रह) का उपयोग करने के बारे में कुछ जानकारी दी गई है:MongoDB टाइम सीरीज़ डेटाबेस के रूप में

अंत में, यहाँ समय श्रृंखला के लिए SQL बनाम NoSQL की चर्चा है:https://dba.stackexchange.com/questions/7634/timeseries-sql-or-nosql

मैं उस चर्चा में निम्नलिखित जोड़ सकता हूं:

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


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. $unionWith - MongoDB के UNION ALL . के बराबर

  2. एंड्रॉइड पर मोंगोडीबी

  3. मोंगोडब कुल क्वेरी, या बहुत जटिल?

  4. MongoDB संबंध:एम्बेड या संदर्भ?

  5. मोंगो में बड़े अक्षरों को ऊंट केसिंग में बदलें?