2012-09-16 7 views
5

मेरी समझ प्रतिशत की गणना करना है, डेटा को सॉर्ट करने की आवश्यकता है। क्या यह संभव है कि कई सर्वरों में फैले डेटा की एक बड़ी मात्रा के साथ, इसे चारों ओर घुमाने के बिना?क्या डेटा के एक सेट के प्रतिशत को मानचित्र-कम तरीके से गणना की जा सकती है?

उत्तर

0

आपके प्रश्न का उत्तर हाँ है, यह संभव है। लेकिन मानचित्र-कमी वास्तव में इस तरह के कार्य के लिए तैयार नहीं है। मानचित्र-घटाएं (जैसा कि उदाहरण के लिए हैडोप क्लस्टर में प्रयोग किया जाता है) असंगठित या अर्ध-संरचित डेटा पर चमकता है। जबकि अन्य प्रकार की प्रक्रिया के लिए क्षमता है, यह इसके लिए सबसे उपयुक्त नहीं है। (मेरे पास एक कंपनी में एक परियोजना थी जहां वे एक हडोप क्लस्टर में एक्सएमएल का विश्लेषण करना चाहते थे ... यह सबसे मजेदार बात नहीं थी।)

This scholarly article संरचित डेटा और ऑफ़र पर मानचित्र-कमी के साथ कुछ मुद्दों का वर्णन करता है "क्लाइडेडेल" के साथ एक वैकल्पिक दृष्टिकोण। (मैंने कभी इस बारे में नहीं सुना है या इसका इस्तेमाल नहीं किया है, इसलिए मैं इसका समर्थन नहीं कर सकता या इसकी ताकत/कमजोरियों से बात नहीं कर सकता।)

मैं और अधिक लिंक ढूंढ रहा हूं जो स्पष्टीकरण और विकल्प प्रदान करते हैं।

2

जबकि मैड्रिडस एक प्रतिमान के रूप में समस्या के लिए उपयुक्त नहीं दिखता है, एमआर के हैडऑप का कार्यान्वयन है।
नक्शा कम करने के हडोप का कार्यान्वयन वितरित सॉर्ट पर आधारित है - और यह वही है जो आपको चाहिए। हडोप केवल एक बार सर्वर के बीच डेटा ले जाकर क्रमबद्ध कर रहा है - वह बुरा नहीं।
मैं हडूप टेरासोर्ट कार्यान्वयन पर देखने का सुझाव दूंगा जो हैडूप के साथ बड़े पैमाने पर डेटा को सॉर्ट करने के लिए अच्छे (और सबसे अच्छे तरीके से) तरीके को चित्रित करता है। http://hadoop.apache.org/docs/current/api/org/apache/hadoop/examples/terasort/package-summary.html

2

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

एक हिस्टोग्राम स्वाभाविक रूप से क्रमबद्ध है ताकि आप कुल गिनती प्राप्त कर सकें और किसी भी अंत से गिनती करके प्रतिशत ढूंढ सकें।

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