2011-11-07 13 views
5

(यहां तक ​​कि Difference between Pig and Hive? Why have both? की तुलना में अधिक मूल)प्रत्यक्ष जावा मानचित्र के बजाय डेटा प्रोसेसिंग के लिए सुअर/हाइव का उपयोग कोड को कम करता है?

मैं एक डाटा प्रोसेसिंग पाइप लाइन में लिखा है कई जावा नक्शा को कम Hadoop से अधिक कार्यों (मेरे अपने कस्टम कोड, Hadoop के मैपर और प्रसारण से प्राप्त)। यह बुनियादी परिचालनों की एक श्रृंखला है जैसे कि शामिल, उलटा, क्रमबद्ध और समूह द्वारा। मेरा कोड शामिल है और बहुत सामान्य नहीं है।

इस स्वीकार्य रूप से विकास-केंद्रित दृष्टिकोण बनाम जारी रखने के पेशेवरों और विपक्ष क्या हैं जो कई यूडीएफ के साथ पिग/हाइव में सब कुछ माइग्रेट कर रहे हैं? मैं कौन सी नौकरियां निष्पादित नहीं कर पाऊंगा? क्या मुझे प्रदर्शन में गिरावट आती है (टीबी के 100 के साथ काम करना)? क्या मैं बनाए रखने के दौरान अपने कोड को ट्विक और डीबग करने की क्षमता खो दूंगा? क्या मैं जावा मैप-कम करने के रूप में नौकरियों के पाइपलाइन हिस्से में सक्षम हो जाऊंगा और अपने पिग/हाइव नौकरियों के साथ अपने इनपुट आउटपुट का उपयोग करूंगा?

उत्तर

8

संदर्भ Twitter: आम तौर पर एक सुअर लिपि देशी मानचित्र के कोड का 5% है/समय के लगभग 5% में लिखा गया है। हालांकि, प्रश्नों को आम तौर पर निष्पादित करने के लिए 110-150% के बीच लेते हैं कि मूल नक्शा/नौकरी कम हो जाती है। लेकिन निश्चित रूप से, यदि कोई दिनचर्या है जो अत्यधिक प्रदर्शन संवेदनशील है तो उनके पास अभी भी देशी मानचित्र को हाथ से कोड करने/सीधे कार्यों को कम करने का विकल्प होता है।

उपर्युक्त संदर्भ मैड्रिडस में विकासशील अनुप्रयोगों पर सुअर के पेशेवरों और विपक्ष के बारे में भी बात करता है।

किसी भी उच्च स्तर की भाषा या अमूर्तता के साथ, डेवलपर उत्पादकता की कीमत पर सुअर/हाइव के साथ लचीलापन और प्रदर्शन खो जाता है।

+8

(मैं ट्विटर पर पिग पर काम करता हूं): 110-150% संख्या कुछ हद तक मनमानी है। अक्सर, सुअर आपके कोड से तेज़ तरीका होगा क्योंकि यह बहुत अनुकूलन करता है। मूल रूप से, यह चीजों को एमआर में अनुवाद करता है, इसलिए यह एमआर से तेज नहीं हो सकता है। लेकिन सीधा शुरुआती-से-इंटरमीडिएट एमआर कोड अक्सर पिग को खो देगा। अंतर्दृष्टि के लिए – SquareCog

+0

Thnx। –

3

इस paper में 200 9 तक यह कहा गया है कि सुअर सादा मैपरेडस की तुलना में 1.5 गुना धीमी गति से चलता है। यह उम्मीद की जाती है कि हडोप के शीर्ष पर बनाए गए उच्च स्तरीय औजार सादे मैपरेडस की तुलना में धीमे प्रदर्शन करते हैं, हालांकि यह सच है कि मैपरेडस को एक उन्नत उपयोगकर्ता का प्रदर्शन करने के लिए जो बहुत सारे बॉयलरप्लेट कोड की आवश्यकता है (उदाहरण के लिए बाइनरी तुलनित्र)।

मुझे Pangool नामक एक नई एपीआई का उल्लेख करने के लिए प्रासंगिक लगता है (जिसे मैं एक डेवलपर हूं) जिसका उद्देश्य सादा हैडोप मैपराइडस एपीआई को प्रतिस्थापित करना और समझना आसान बनाना है (द्वितीयक क्रम, कम- पक्ष में शामिल हो जाता है)। पंगूल प्रदर्शन ओवरहेड नहीं लगाता है (first benchmark के मुकाबले केवल 5%) और मूल मैपरेड एपीआई की सभी लचीलापन बरकरार रखता है।

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