डेटासेट की सॉर्टपार्टिशन विधि कुछ निर्दिष्ट फ़ील्ड के आधार पर स्थानीय रूप से डेटासेट को टाइप करती है। मैं फ्लिंक में एक कुशल तरीके से वैश्विक स्तर पर अपना बड़ा डेटासेट कैसे प्राप्त कर सकता हूं?अपाचे फ्लिंक में वैश्विक सॉर्टिंग
8
A
उत्तर
12
यह वर्तमान में आसानी से संभव नहीं है क्योंकि फ्लिंक एक अंतर्निहित श्रेणी विभाजन रणनीति प्रदान नहीं करता है।
एक काम के आसपास एक कस्टम Partitioner
लागू करने के लिए है:
DataSet<Tuple2<Long, Long>> data = ...
data
.partitionCustom(new Partitioner<Long>() {
int partition(Long key, int numPartitions) {
// your implementation
}
}, 0)
.sortPartition(0, Order.ASCENDING)
.writeAsText("/my/output");
नोट: विशिष्ट विभाजक साथ संतुलित विभाजन को प्राप्त करने के लिए, आप मूल्य सीमा और चाबी के वितरण के बारे में पता करने की जरूरत है ।
अपाचे फ्लिंक में एक श्रेणी विभाजनकर्ता (स्वचालित नमूनाकरण के साथ) के लिए समर्थन वर्तमान में work in progress है और जल्द ही उपलब्ध होना चाहिए।
संपादित करें (7 जून, 2016): रेंज विभाजन को संस्करण 1.0.0 के साथ अपाचे फ्लिंक में जोड़ा गया था। आप विश्व स्तर पर तरह एक डेटा इस प्रकार सेट कर सकते हैं:
DataSet<Tuple2<Long, Long>> data = ...
data
.partitionByRange(0)
.sortPartition(0, Order.ASCENDING)
.writeAsText("/my/output");
ध्यान दें कि नमूने इनपुट डेटा समान रूप से आकार विभाजन के लिए एक डेटा वितरण की गणना करने के लिए सेट विभाजन करने वाली श्रेणी।
संबंधित मुद्दे
- 1. अपाचे फ्लिंक बनाम ट्विटर हेरॉन?
- 2. हेज़ेलकास्ट जेट और अपाचे फ्लिंक
- 3. अपाचे फ्लिंक में समांतरता की डिग्री
- 4. अपाचे फ्लिंक नौकरियां चलाने पर लिंकेज विफलता
- 5. अपाचे फ्लिंक इटरेशन कैसे कार्यान्वित करता है?
- 6. अपाचे स्पार्क और अपाचे फ्लिंक के बीच क्या अंतर है?
- 7. अपाचे फ्लिंक डेटास्ट्रीम एपीआई में नक्शा नहीं है पार्टिशन रूपांतरण
- 8. अपाचे वैश्विक मूल प्रमाणीकरण
- 9. अपाचे फ्लिंक स्नैपशॉट कलाकृतियों को कैसे आयात करें?
- 10. फ्लिंक और प्ले 2.5
- 11. फ्लिंक 1.4 AvroUtils त्रुटि
- 12. अपाचे फ्लिंक में डेटाबेस से रिकॉर्ड की स्थिति को कैसे देखें और अपडेट करें?
- 13. सॉर्टिंग
- 14. काफ्का -> डेटास्ट्रीम फ्लिंक करें -> मोंगोडीबी
- 15. बैच प्रोसेसिंग के लिए स्पार्क/फ्लिंक पर अपाचे बीम के क्या फायदे हैं?
- 16. अपाचे फ्लिंक का जॉइन फ़ंक्शन और CoGroupFunction कैसे भिन्न होता है?
- 17. अंकन/सॉर्टिंग
- 18. सॉर्टिंग संगीत
- 19. हैकसेल सॉर्टिंग
- 20. सॉर्टिंग NSDictionary
- 21. एसएमएल में मानक सॉर्टिंग फ़ंक्शन?
- 22. जावा में जेनिक्स और सॉर्टिंग
- 23. पावरबीआई चार्ट में कस्टम सॉर्टिंग
- 24. मोंगोस सॉर्टिंग
- 25. पर्ल सॉर्टिंग;
- 26. फ्लिंक स्ट्रीमिंग ईवेंट टाइम विंडो ऑर्डरिंग
- 27. jqGrid: सॉर्टिंग
- 28. सॉर्टिंग एल्गोरिदम
- 29. कोई Tez पर स्पार्क/फ्लिंक क्यों चलाएगा? ।
- 30. स्पार्क बनाम फ्लिंक कम मेमोरी उपलब्ध
1- यदि हमारे पास डेटासेट पर कोई अंतर्दृष्टि नहीं है, तो हम उन्हें कैसे विभाजित कर सकते हैं? 2- मान लें कि हमें ऐसा करने का कोई तरीका मिल गया है। क्या यह कमांड एक वैश्विक क्रमबद्ध डेटासेट आउटपुट करता है? –
1) यह एक अच्छा मुद्दा है। यदि आप एक कस्टम विभाजनकर्ता को लागू करते हैं, तो आपको संतुलित विभाजन प्राप्त करने के लिए कुंजी की मान सीमा और वितरण के बारे में पता होना चाहिए। लिंक किए गए पुल अनुरोध में श्रेणी विभाजनकर्ता स्वचालित रूप से वितरण प्राप्त करने के लिए डेटा का नमूना देता है। 2) हां, यदि आप विभाजन को श्रेणीबद्ध करते हैं और प्रत्येक विभाजन को एक ही कुंजी पर सॉर्ट करते हैं, तो आउटपुट वैश्विक स्तर पर सॉर्ट किया जाएगा। –