2016-03-03 12 views
5

मुझे लगता है कि बहुत नया सवाल है .. मैंने ईएस और मोंगोडीबी के साथ खेलना शुरू कर दिया और मैं एक एसक्यूएल डीबी को एक अभ्यास के रूप में डेटा स्थानांतरित करने की कोशिश कर रहा हूं। मैं मदद नहीं कर सकता लेकिन आश्चर्यचकित हूं, मैं मोंगो में किस डेटा और ईएस में स्टोर करूंगा? क्या मैं ईएस में सबकुछ स्टोर कर सकता हूं? मूल्य रुझानों के रूप में बड़े डेटा लोड मानें।लोचदार खोज और मोंगो

+0

वैसे यह वास्तव में आप जो चाहते हैं उस पर निर्भर करता है, आमतौर पर लोचदार खोज बहुत सारी है और बहुत सारी सामग्री जो आप पाठ खोज करना चाहते हैं, इसे इसके लिए अनुकूलित किया गया था। आप लोचदार सीच में सदाबहार स्टोर कर सकते हैं, लेकिन मुझे यह सामान्य नहीं लगता है। यह आपकी मदद कर सकता है https://www.compose.io/articles/mongoosastic-the-power-of-mongodb-and-elasticsearch-together/ – dege

+0

धन्यवाद @dege, आलेख मदद करता है। – kozureookami

+0

मैंने Elasticsearch पर खोजने के लिए प्रासंगिक सामग्री के उस भाग को स्टोर करने और मोंगो पर विस्तारित डेटा रखने के लिए प्रतिबद्ध किया है। यह मुझे प्रस्तुति परत में उपयोगकर्ता को शीर्ष रैंकिंग हिट पेश करने की अनुमति देता है। मैं मोंगो से ब्योरा खींचता हूं जब उपयोगकर्ता हिट में से एक का चयन करता है जिसके लिए वह और विवरण प्रस्तुत करना चाहता है। –

उत्तर

4

आरंभ करने के लिए, मोंगोडीबी को एक दस्तावेज़ स्टोर तथाकथित कहा जाता है।

  • एक दस्तावेज़ संग्रह में प्रत्येक रिकॉर्ड में एक अलग संरचना
  • प्रत्येक रिकॉर्ड के प्रकार अलग
  • दस्तावेज़ गुण (स्तंभ) हो सकता है हो सकता है कर सकते हैं: इस तरह के अवधारणा की मुख्य विशेषता यह है कि दुकानों स्कीमा-गतिशील दस्तावेज है नेस्टेड संरचनाएं

यह स्कीमा-मुक्त नहीं है, यह स्कीमा-गतिशील (या लचीला स्कीमा) है। अवधारणा में शामिल होने के लिए, आप यहां एक महान ट्यूटोरियल पा सकते हैं: https://docs.mongodb.org/manual/data-modeling/

मोंगोडीबी सबसे व्यापक रूप से प्रयुक्त दस्तावेज़ स्टोर है - कृपया, http://db-engines.com/en/system/MongoDB देखें।

इसमें अधिकांश प्रोग्रामिंग भाषाओं के लिए "ड्राइवर" हैं, जो तेजी से विकास को सक्षम बनाता है। आप मोंगो में बहुत जल्दी जा सकते हैं, बहुत सारे ट्यूटोरियल और आधिकारिक मोंगो विश्वविद्यालय - डेवलपर्स और डीबीए के लिए एक शानदार कोर्स है।

संक्षेप में यह अनुक्रमण, एकत्रीकरण, फ़िल्टर, भार संतुलन, शेरिंग, प्रतिकृतियां (प्रतिकृति सेट) आदि का समर्थन करता है। डेटा को बीएसओएन प्रारूप (http://bsonspec.org/) में संग्रहीत और स्थानांतरित किया जाता है। https://docs.mongodb.org/manual/reference/sql-comparison/

क्या यह के लिए अच्छा है:

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

अब, Elasticsearch डेटाबेस नहीं है। यह कुछ महान समेकन क्षमताओं के साथ एक खोज इंजन है (https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html - सुनिश्चित करें कि आप मेट्रिक्स, बाल्टी और पाइपलाइन समेकन देखें)।

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

प्रदर्शन के संबंध में दोनों की तुलना में एक बहुत विस्तृत लेख है, तो आप इसे उपयोगी पा सकते हैं: http://blog.quarkslab.com/mongodb-vs-elasticsearch-the-quest-of-the-holy-performances.html

आप वास्तव में सफलतापूर्वक दोनों का उपयोग कर सकते हैं - मोंगोडीबी आपके डेटा को स्टोर करेगा, जहां ES को सेवा परत (खोज, एकत्रीकरण इत्यादि) के रूप में उपयोग किया जाएगा।

+0

tldr: ** Elasticsearch डेटाबेस नहीं है ** -> खोज के लिए मेटा इंडेक्सिंग का उपयोग करता है। एमबीओ जैसे डीबी के संयोजन के साथ प्रयोग किया जाता है। सबसे बढ़िया उत्तर। मुझे क्या पसंद नहीं है, आप प्रिक्सिंग और क्लाउड सिस्टम का भी उल्लेख क्यों करते हैं? अप्रासंगिक। – Pogrindis

+0

आप सही हैं, मूल्य निर्धारण अप्रासंगिक है। मैं इसे हटा दूंगा। चीयर्स। – wjp

0

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

संबंधित मुद्दे