2015-06-14 13 views
7

के साथ स्पार्क मैं समझने के लिए संघर्ष कर रहा हूं कि स्पार्क के संदर्भ में वास्तव में अरवो, क्रियो और पैराक्वेट क्या करते हैं। वे सभी क्रमबद्धता से संबंधित हैं लेकिन मैंने उन्हें एक साथ उपयोग किया है ताकि वे वही काम नहीं कर सकें।अरवो, क्रायो और पैराक्वेट

पैराक्वेट अपने स्वयं को कॉलमर स्टोरेज प्रारूप के रूप में वर्णित करता है और मुझे लगता है कि जब मैं एक लकड़ी की छत फ़ाइल सहेज रहा हूं तो क्या अरवो या क्रायो के पास इसके साथ कुछ करने के लिए कुछ भी हो सकता है? या वे केवल स्पार्क नौकरी के दौरान प्रासंगिक हैं, यानी। एक शफल या डिस्क पर फैलाने के दौरान नेटवर्क पर वस्तुओं को भेजने के लिए? Arvo और Kryo अलग कैसे होते हैं और जब आप उन्हें एक साथ उपयोग करते हैं तो क्या होता है?

उत्तर

2

यह बहुत अच्छा ब्लॉग पोस्ट क्रियो के अलावा सबकुछ के विवरण बताता है।

http://grepalex.com/2014/05/13/parquet-file-format-and-object-model/

Kryo तेजी से क्रमांकन के लिए इस्तेमाल किया जाएगा इस तरह के फेरबदल डेटा और संचित डेटा के रूप में स्थायी भंडारण, स्मृति में या अस्थायी फ़ाइलों के रूप में डिस्क पर, शामिल नहीं।

+4

तो यदि लकड़ी सुरक्षित कुशल भंडारण के लिए है और क्रियो तेजी से गैर-स्थायी भंडारण के लिए है तो अरवो क्या करता है? और मैं इसका इस्तेमाल कब करूंगा? –

4

पैराक्वेट बहुत अच्छा काम करता है जब आपको अपने डेटा से पूछताछ करते समय केवल कुछ कॉलम पढ़ने की आवश्यकता होती है। हालांकि अगर आपकी स्कीमा में बहुत सारे कॉलम हैं (30+) और आपके प्रश्न/नौकरियों में आपको उन सभी को पढ़ने की ज़रूरत है तो रिकॉर्ड आधारित प्रारूप (जैसे एवीआरओ) बेहतर/तेज काम करेंगे।

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

यह वह जगह है जहां आप AVRO का उपयोग करना चाह सकते हैं। जैसे आप एक कफका विषय या स्थानीय फाइलों में एवीआरओ-एन्कोडेड रिकॉर्ड एकत्र कर सकते हैं और बैच नौकरी कर सकते हैं जो उन सभी को दिन के अंत में पैराक्वेट फ़ाइल में परिवर्तित कर देता है। यह लकड़ी के एवरो लाइब्रेरी के लिए धन्यवाद लागू करने के लिए काफी आसान है जो एवीआरओ और लकड़ी के प्रारूपों के बीच स्वचालित रूप से परिवर्तित करने के लिए उपकरण प्रदान करता है।

और निश्चित रूप से आप स्पार्क/बिगडाटा के बाहर एवीआरओ का उपयोग कर सकते हैं। यह Google प्रोटोबफ या अपाचे थ्रिफ्ट के समान काफी अच्छा क्रमबद्ध प्रारूप है।

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