2012-06-12 18 views
12

मेरे पास क्लाउड (मोंगोलाब या मोंगोएचक्यू) में होस्ट किया गया एक बड़ा मोंगो डेटाबेस (100 जीबी) है। मैं कुछ महंगे आंकड़ों की गणना करने के लिए डेटा पर कुछ मानचित्र/कम करना चाहता हूं और यह सोच रहा था कि यह करने के लिए सबसे अच्छा वर्कफ़्लो क्या है। आदर्श रूप से मैं अपने स्वयं के हडोप क्लस्टर को बनाए रखने के बजाय अमेज़ॅन के मानचित्र/सेवाओं को कम करना चाहता हूं।मोंगो से डेटा पर मानचित्र को कम करने/घटाने का सबसे अच्छा तरीका क्या है?

क्या डेटाबेस से डेटा को S3 में कॉपी करने के लिए यह समझ में आता है। फिर अमेज़ॅन मानचित्र चलाएं/उस पर कम करें? या यह करने के लिए बेहतर तरीके हैं।

यदि लाइन के आगे और भी मैं अक्सर हर दिन की तरह पूछताछ करना चाहता हूं तो एस 3 पर डेटा को दर्पण में क्या करना होगा, यह जटिल चीजें होगी?

कोई भी सुझाव/युद्ध कहानियां बहुत उपयोगी होंगी।

उत्तर

9

अमेज़ॅन एस 3 एस 3 डीआईटीसीपी नामक उपयोगिता प्रदान करता है ताकि एस 3 में डेटा प्राप्त हो सके। इसका उपयोग आम तौर पर अमेज़ॅन के ईएमआर उत्पाद को चलाने के दौरान किया जाता है और आप अपने स्वयं के क्लस्टर को होस्ट नहीं करना चाहते हैं या डेटा स्टोर करने के लिए उदाहरणों का उपयोग नहीं करना चाहते हैं। एस 3 आपके लिए अपना सभी डेटा स्टोर कर सकता है और ईएमआर एस 3 से डेटा को पढ़/लिख सकता है।

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

ऐसा लगता है कि आपको S3 का उपयोग करने की आवश्यकता नहीं हो सकती है। मोंगो ने आपके मोंगोडीबी के शीर्ष पर नौकरियों को कम करने के लिए एक एडाप्टर लागू किया है। http://blog.mongodb.org/post/24610529795/hadoop-streaming-support-for-mongodb

यह आकर्षक लग रहा है क्योंकि यह आपको एमआर को पायथन/जेएस/रूबी में लागू करने देता है।

मुझे लगता है कि यह mongo-hadoop सेटअप S3 पर 100GB डेटा कॉपी करने से अधिक कुशल होगा।

अपडेट: मैंगो here के साथ मानचित्र-कम करने का उपयोग करने का एक उदाहरण।