2008-08-28 10 views
31

मैं सी में लिखे गए बी-पेड़ लाइब्रेरी का एक दुबला और अच्छी तरह से निर्मित ओपन सोर्स कार्यान्वयन की तलाश में हूं। इसे गैर-जीपीएल लाइसेंस के तहत होना चाहिए ताकि इसका उपयोग वाणिज्यिक एप्लिकेशन में किया जा सके। आदर्श रूप से, यह लाइब्रेरी बी-पेड़ इंडेक्स को डिस्क फ़ाइल के रूप में संग्रहीत/छेड़छाड़ करने का समर्थन करती है ताकि बड़े पेड़ को कॉन्फ़िगर करने योग्य (यानी: न्यूनतम) रैम पदचिह्न का उपयोग करके बनाया जा सके।सी में एक अच्छा ओपन सोर्स बी-पेड़ कार्यान्वयन क्या है?

नोट: चूंकि कुछ भ्रम प्रतीत होता है, इसलिए बाइनरी ट्री और बी-ट्री समान नहीं है।

उत्तर

5

QDBM: http://fallabs.com/qdbm/ देखें। यह एलजीपीएल (वाणिज्यिक ऐप में इस्तेमाल किया जा सकता है), डिस्क समर्थित बैक हैश और/या बी + पेड़ को मनमाने ढंग से कुंजी/मूल्य जोड़े के साथ लागू करता है, और विभिन्न प्लेटफार्मों पर बनाता है।

+0

अच्छा! - यह सूची में एक अच्छा जोड़ा है। धन्यवाद! –

+0

दूसरे विचार पर, मुझे लगता है कि यह भी पसंदीदा जवाब होना चाहिए। –

7

SQLite implementation के लेखक ने कॉपीराइट अस्वीकार कर दिया है। अगर एलजीपीएल ठीक है, तो शायद आप GNUpdate's implementation का उपयोग कर सकते हैं?

+0

जीएन अपडेट एक बी + ट्री –

6

यदि एलजीपीएल ठीक है, तो बिल फिट हो सकता है। एलजीपीएल अंतिम उत्पाद के वितरण पर किसी भी बाधा को जोड़ने के बिना, एक गैर-मुक्त एप्लिकेशन से जुड़ने की अनुमति देता है।

+0

ऐसा लगता है कि यह http://fallabs.com/tokyocabinet/ पर स्थानांतरित हो गया है। – florin

+0

क्योटो कैबिनेट एक जीपीएल टोक्यो कैबिनेट का पालन करता है लेकिन इसे थोड़ी देर के लिए उपयोग करने के बाद कुछ बहुत बुरी आदतें होती हैं, उदाहरण के लिए std :: bad_alloc पर ऐप क्रैश या अपरिभाषित और अपर्याप्त स्मृति उपयोग पैटर्न पर कोई अपवाद हैंडलिंग नहीं है। – Lothar

0

शायद आप बर्कले डीबी को समझ सकते हैं। यह आंतरिक रूप से बी-पेड़ का उपयोग कर रहा है।

2

मैं this पर आया - एससीएम, जावा, सी #, और सी के लिए डब्ल्यूबी बी-ट्री डेटाबेस जो एक जीएनयू पैकेज है।

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