2012-10-31 14 views
7

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

मैं पोस्टग्रेस या नोएसक्यूएल सिस्टम चुनने के लिए प्रदर्शन तुलना करना चाहता हूं।

तो, संक्षेप में:

  1. AF
  2. साथ NoSQL सिस्टम के लिए सर्च कर रहे हैं मैं मानचित्र पर भरोसा कर सकते हैं/AF को बदलने के लिए कम हो? क्या यह तेज़, विश्वसनीय, जाने में आसान है।

ps। मैंने अपना प्रश्न अधिक रचनात्मक बनाने की कोशिश की।

उत्तर

1

कुछ फ़ंक्शन सभी मौजूदा डेटा के ज्ञान का उपयोग करता है जब इसमें समेकन के कुछ राजा (औसत, औसत, मानक विचलन) या कुछ ऑर्डरिंग (पहले, अंतिम) शामिल होते हैं।

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

आपको यह पूछना है कि आप NoSQL का उपयोग करके क्या हासिल करने की उम्मीद करते हैं। आप स्कीमलेस टेबल चाहते हैं? वितरित डेटा? बहुत सरल प्रश्नों के लिए बेहतर कच्चा प्रदर्शन?

अपनी आवश्यकताओं के आधार पर, मैं यहाँ तीन मुख्य विकल्प देखें:

1 - विफलता (यानी: Cassandra) का कोई एक बिंदु के साथ एक वितरित NoSQL का उपयोग अपने डेटा स्टोर और मानचित्र का उपयोग करने/डेटा की प्रक्रिया को कम करने और वांछित फ़ंक्शन के लिए परिणाम उत्पन्न करें (लगभग कोई भी प्रमुख नोएसक्यूएल समाधान समर्थन Hadoop)। चेतावनी यह है कि मानचित्र/कम प्रश्न वास्तविक समय नहीं हैं (क्वेरी निष्पादित करने में मिनट या घंटे लग सकते हैं) और अतिरिक्त सेटअप और सीखने की आवश्यकता है।

2 - एक पारंपरिक RDBMS ऐसा MySQL Cluster

3 कई सर्वरों का समर्थन का उपयोग करें - मास्टर/दास टोपोलॉजी के साथ एक NoSQL का उपयोग इस तरह Mongo

दूसरे प्रश्न का सवाल है तदर्थ और एकत्रीकरण प्रश्नों का समर्थन करता है: हां, आप एएफ को बदलने के लिए एम/आर पर भरोसा कर सकते हैं। आप एम/आर के साथ लगभग कुछ भी कर सकते हैं।

+0

आप वास्तव में वितरित आर्किटेक्चर पर औसत गणना कर सकते हैं, लेकिन ऐसा करने के लिए आपको औसत के साथ औसत स्टोर करने की आवश्यकता है। –

+0

@ ऑरेलियन वास्तव में – lstern

+0

@Istern, हाँ आप सही हैं। मैं दिलचस्प हूं कि मैं अंतर्निहित विश्लेषणात्मक कार्यों को प्रतिस्थापित करने के लिए मानचित्र/कम पर भरोसा कर सकता हूं (मैं इसे दूसरे एजेंडा में उल्लेख करता हूं) – ravnur

2

एक बार जब आप वास्तव में समझ गए हैं कि MapReduce कैसे काम करता है, तो आप कोड की कुछ पंक्तियों के साथ अद्भुत चीजें कर सकते हैं।

http://code.google.com/intl/fr/edu/submissions/mapreduce-minilecture/listing.html

वास्तविक कठिनाई कारक कार्यों कि आप एक ही MapReduce के साथ लागू करने और उन है कि श्रृंखलित MapReduces की आवश्यकता होगी कर सकते हैं के बीच हो जाएगा:

यहाँ एक अच्छा वीडियो पाठ्यक्रम है। इसके अलावा, कुछ अच्छे MapReduce कार्यान्वयन (जैसे CouchDB) आपको MapReduces (आसानी से) चेन करने की अनुमति नहीं देते हैं।

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