2011-10-26 13 views
22

मैं डेटा की बड़ी मात्रा को संभालने के लिए अवधारणा के सबूत पर विचार कर रहा हूं जैसे कि 10 जी जिसमें प्रति सेकंड कम से कम 200+ लिखने की आवश्यकता होती है और लगभग 50+ स्थानिक संबंधित डेटा के प्रति सेकंड पढ़ते हैं। यह एक बढ़ती प्रणाली भी है। वर्तमान में मैं प्रदर्शन के कारणों के लिए इस बड़े वॉल्यूम डेटा को नोएसक्ल बड़ी टेबल प्रकार डीबी में ले जाने पर विचार कर रहा हूं।मोंगोडब या कैसंड्रा के साथ स्थानिक डेटा

मैंने मोंगोडीबी और कैसंद्रा पर कुछ नजदीकी नजर डाली है और लिया है। जहाँ तक मेरी पढ़ने चला जाता है,

MongoDB: - अगर वहाँ कई सर्वरों के लिए कोई जरूरत नहीं है stackoverflow में पदों में से एक इस डाटाबेस का सुझाव दिया - - एक लेखक ताला समस्या है लगता है अनुक्रमित स्मृति पर रखा। तो बड़ा सूचकांक विकास, प्रदर्शन खराब करने कहा जाता है - लाभ MongoDB आसपास के स्थानों आदि खोजने जैसी सुविधाओं के साथ-साथ & अनुक्रमण स्थानिक डेटा के लिए प्रत्यक्ष समर्थन है, - मैं इस पोस्ट सबसे अच्छा विकल्प के रूप में

Cassandra Or MongoDB For Our Location Based Application सुझाव MongoDB देखना

कैसेंड्रा:
- संबंधित डीबीएस के बीच का सबसे अच्छा होना करने के लिए लगता है - महान लिखने के साथ-साथ पढ़ प्रदर्शन है लगता है - मूल रूप से स्थानिक अनुक्रमण का समर्थन नहीं करता, लेकिन इस

geohashing के माध्यम से बढ़ाया जा सकता है मेरे दिल वास्तव में इसके कारण mongodb के लिए बाहर चला जाता है स्थानिक डेटा के लिए अच्छा दस्तावेज और प्रत्यक्ष समर्थन। क्या इस तरह के बड़े सिस्टम के लिए मोंगोडब का उपयोग करके किसी भी शरीर को बुरा अनुभव है? मैं वास्तव में प्रदर्शन के लिए mongodb iostat पर बहुत सी पोस्ट देखता हूं।

यदि मोंगोडब उपयुक्त नहीं है, तो क्या कोई कैसंड्रा का उपयोग करके भू-ताप पर कुछ पॉइंटर्स दे सकता है? मैंने हैश बनाने के लिए लिंक http://code.google.com/p/geospatialweb/ देखा। लेकिन प्रश्न पूछने के सवाल हैं आदि?

+1

NoSQL spartial भंडारण पर कोई विचार, 1 + साल बाद? –

+4

वास्तव में हमने कुछ कारणों से सरलता का उपयोग नहीं किया लेकिन कैसंद्रा रखा। हमने अंततः अक्षांश, देशांतर के साथ अलग-अलग मानों के रूप में इसे सरल रखना चुना और सही कुंजी रखने का चयन किया। हमारे पास 8 सर्वरों के साथ इसे वितरित करने की सफलता की उचित मात्रा है और दैनिक प्रश्नों के लिए दूसरे प्रकार के प्रदर्शन से कम परिणाम प्राप्त होते हैं और हम खुश हैं। – Muthu

+0

महान जानकारी, धन्यवाद मुथू। –

उत्तर

4

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

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

+0

सच है। इसके लिए धन्यवाद। मैं लोचदार खोज की जांच करूंगा। निश्चित रूप से उपयोगी। – Muthu

0

हम इस समय कैसंद्रा का भी उपयोग करते हैं और स्थानिक इंडेक्स समाधान की तलाश करते हैं। हम पूर्ण पाठ और जिम्मेदार खोज प्रदान करने के लिए लुसीन के साथ जाते हैं और इसके साथ-साथ स्पार्टियल इंडेक्सिंग के लिए समर्थन आता है। शायद आप इसे भी देखना चाहते हैं।

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

0

कैसंड्रा + सौर का प्रयास करें। यह उपयोगी हो सकता है: http://digbigdata.com/geospatial-search-cassandra-datastax-enterprise/

सादर, गौथम कुमार

+0

जबकि यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, [यह बेहतर होगा] (http://meta.stackoverflow.com/q/8259) यहां उत्तर के आवश्यक हिस्सों को शामिल करने के लिए, और संदर्भ के लिए लिंक प्रदान करें। –

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