2008-09-20 14 views
6

में लगातार बाइनरी ट्री/हैश टेबल मुझे शुद्ध शुद्ध हैशेट/बाइनरीट्री की आवश्यकता है, जो कार्यात्मक रूप से बर्कले-डीबी जावा संस्करण के समान है।नेट

कार्यात्मक रूप से इसे एक समान प्रबंधक में डीएचटी जैसे मेमकेड और वेग इत्यादि में opperate करना चाहिए, लेकिन इसे वितरित करने की आवश्यकता नहीं है। संक्षेप में मैं एक सतत हैशटेबल की तलाश में हूं।

क्या किसी के पास कोई विचार या सुझाव हैं?

ऐसा ही एक सवाल भी यहाँ है: Looking for a simple standalone persistent dictionary implementation in C#

पॉल

+0

क्या आप कह रहे हैं कि आप डेटाबेस चाहते हैं? या आप डिस्क पर हैश टेबल लिखने और इसे फिर से पढ़ने में सक्षम होना चाहते हैं? या कुछ और? –

+0

मुझे पूरी तरह से नेट आधारित प्रणाली की आवश्यकता है बर्कले डीबी के समान। – Kinlan

+0

क्या आप कृपया मेरे प्रश्न से लिंक कर सकते हैं http://stackoverflow.com/questions/100235/looking-for-a-simple-standalone-persistant-dictionary-implementation-in-c –

उत्तर

0

आप System.Collections.Generic में संग्रह में निर्माण का उपयोग कर की कोशिश की? और उस पिल्ला को किसी XML दस्तावेज़ या किसी जैसा कुछ धक्का देने के लिए क्रमबद्धता का उपयोग करना।

+0

शायद छोटे संग्रहों के लिए यह ठीक होगा, लेकिन मुझे टीबी क्षेत्र में स्केल करने की आवश्यकता है। – Kinlan

1

आप Caching Application Block या System.Web.Caching पर विचार कर सकते हैं। दोनों में बैकिंग स्टोर के रूप में SQL सर्वर डेटाबेस से कनेक्ट करने के तरीके हैं।

अन्य विधि एक्सएमएल या बाइनरी फॉर्मेटर का उपयोग करके ऑब्जेक्ट को क्रमबद्ध करने के लिए होगी। (जिस तरह से गहरे क्लोनिंग के लिए उपयोग किया जा सकता है)

+0

विचारों के लिए धन्यवाद, लेकिन इनमें से कोई भी जवाब नहीं है। अनिवार्य रूप से, बेर्केली डीबी एक सतत बाइनरी पेड़ या हैश टेबल है और आकार में कई टीबी हो सकता है। बीडीबी के बारे में बात यह है कि यह एक एम्बेडेड डीबी है, जो मुझे चाहिए, इसलिए एसक्यूएल सर्वर भी सवाल से बाहर है। – Kinlan

3

इस बारे में कैसे? SourceForge.net: Berkeley DB for .NET

+0

लिंक के लिए धन्यवाद, लेकिन यह सिर्फ सी कार्यान्वयन का एक आवरण है। मैं पूरी तरह से नेट आधारित समाधान की तलाश में हूं। – Kinlan

1

वैकल्पिक रूप से, आप एक सूचकांक इंजन जैसे Lucene.net का उपयोग कर सकते हैं।

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

+0

एक उपयोग केस मैं वास्तव में lucene.net फिट करने के लिए वास्तव में फिट होगा। आरईसी के लिए धन्यवाद। – Kinlan