2010-01-29 10 views
5

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

क्या किसी को पुस्तकालय/उपकरण के सूट के बारे में पता है जो इस शेरर्ड को कर सकता है? मुझे प्रतिकृति या लेनदेन की परवाह नहीं है; बस इस स्मृति आवश्यकता को फैलाना।

उत्तर

2

मेरा सुझाव है कि आप hazelcast के साथ शुरू:

http://www.hazelcast.com/

यह है खुला स्रोत है, और मेरी राय में यह है बहुत आसान, के साथ काम करने तो यह रैपिड प्रोटोटाइप के लिए सबसे अच्छा रूपरेखा है ।

जहां तक ​​मुझे पता है, यह वाणिज्यिक विकल्पों की तुलना में तेज़ी से प्रदर्शन करता है, इसलिए मैं प्रदर्शन के बारे में चिंता नहीं करता।
(मैं औपचारिक रूप से इसे अपने आप को बेंचमार्क नहीं किया है)

+1

यह एक बोल्ड दावा – Kevin

+0

हे केविन है, आप सही हैं, इसलिए मैंने जल्दी ही अभिभावकीय टिप्पणी को जोड़ा :) – Yoni

+0

मैं चीयर्स को देखकर हेज़ेलकास्ट दूंगा! – andeyatz

3

मिट्टी हो सकता है उपयोगी यहाँ

http://www.terracotta.org/

एक नज़र अपने एक क्लस्टर JVM कितनी बार आप नक्शे मैं यह कैसे अच्छा प्रदर्शन पर लगता है कि अद्यतन पर निर्भर करेगा की है।

+0

यदि आप एक वाणिज्यिक उत्पाद बना रहे हैं, तो टेराकोटा के लिए ओपन सोर्स लाइसेंसिंग मुख्य रूप से एट्रिब्यूशन क्लॉज – Kevin

+0

की वजह से दर्द हो सकती है क्योंकि लाइसेंस एक समस्या नहीं है क्योंकि परियोजना ओपन-सोर्स है; टेराकोटा थोड़ा ओटीटी प्लस लग रहा था और मैं इस बारे में अधिक चिंतित हूं कि टेराकोटा डेटा को कितनी अच्छी तरह से साझा कर सकता है। eHcache हालांकि ऐसा लगता है कि यह करने में सक्षम हो सकता है। – andeyatz

2

क्या यह खुला स्रोत होना चाहिए? यदि नहीं, Oracle Coherence ऐसा कर सकता है।

+0

सहमत हैं, यह वास्तव में (और अधिक) है जो वह ढूंढ रहा है ... हालांकि यह थोड़ा अधिक हो सकता है। –

1

आप http://hsqldb.org/ की तरह एक डेटाबेस के बजाय कुछ का उपयोग कर, कार्यक्षमता आप डिस्क पर डेटा लिखने की क्षमता के साथ की जरूरत है प्रदान कर सकता है द्वारा अपनी समस्या को हल करने में सक्षम हो सकता है पूरी चीज को स्मृति में रखने के बजाए।

मैं निश्चित रूप से एक कदम वापस ले जाऊंगा और खुद से पूछूंगा कि क्या नक्शा जीबी के डेटा के लिए सही डेटा संरचना है।

+0

दुर्भाग्य से एचएसक्यूएलडीबी बहुत धीमी है और डेटा को अच्छी तरह से कुंजी-मूल्य जोड़े में आदेश दिया गया है। यह मुद्दा लुकअप ऑर्डर की भविष्यवाणी करने में सक्षम होने के बिना बेहद तेज़ लुकअप की आवश्यकता से आता है। यही कारण है कि हैश आधारित समाधान आरडीबीएमएस के लिए जाने से बेहतर प्रतीत होता है – andeyatz

0

Gigaspaces Datagrid ऐसी चीज की तरह लगता है जो आप खोज रहे हैं। (हालांकि मुक्त नहीं)