2010-04-27 13 views
18

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

उत्तर

5

हम Clojure + MongoDB उपयोग कर रहे थे, और वे एक साथ बहुत अच्छी तरह से काम किया। अधिकांशतः जेएसओएन डेटा मॉडल के कारण, जो मोंगोडीबी द्वारा प्रदान किया जाता है, जिसे आसानी से क्लोजर आंतरिक संरचनाओं में बदल दिया जा सकता है।

0

रेडिस डीबी पर भी विचार करें।

परियोजना पृष्ठ: http://code.google.com/p/redis/

और clojure इसके लिए क्लाइंट लाइब्रेरी: http://github.com/ragnard/redis-clojure/

+0

क्या अच्छा है या Redis के बारे में अलग है? –

+0

क्षमा करें, मेरे पास उल्लिखित अन्य डीबी के बारे में कोई जानकारी नहीं है। मैंने अभी आपकी सूची डीबी में "रेडिस" जोड़ा है, जिसे मैंने क्लोजर के साथ उपयोग करने का प्रयास किया था। यह ठीक है, लेकिन विंडोज़ पर निर्माण के साथ कुछ समस्याएं थीं। – zmila

2

मुझे लगता है कि Neo4j की property graph data model Clojure के लिए वास्तव में एक अच्छा फिट है, और जानकारी के लिंक के लिए this wiki page देखते हैं। नि: शुल्क के संबंध में, Neo4j AGPL3 लाइसेंस के तहत जारी किया गया है, जिसका अर्थ यह है कि एक संगत लाइसेंस का उपयोग करके ओपन सोर्स प्रोजेक्ट्स में उपयोग करना स्वतंत्र है। वाणिज्यिक बैकिंग कंपनी Neo Technology वाणिज्यिक लाइसेंस प्रदान कर सकती है।

+0

आपको लगता है कि Neo4j बेहतर क्यों है? क्लोजर समर्थन पिछले साल से अपडेट नहीं किया गया है। –

+1

मैंने दावा नहीं किया कि यह किसी और चीज़ से बेहतर था :-) लेकिन मैंने ग्राफ डेटा को देखा है + क्लोजर एक अच्छा फिट बनाता है। बाइंडिंग पर आखिरी प्रतिबद्धता सिर्फ एक सप्ताह पहले यहां थी: http://github.com/bobby/clojure-neo4j – nawroth

+0

मैं neo4j और क्लोजर के साथ खेल रहा हूं और अब तक बहुत खुश हूं। इसके साथ जाने के लिए आपको शायद अन्य प्रकार के डीबीएस की आवश्यकता होगी। मैं गैर-ट्रैवर्सल प्रश्नों के लिए postgresql का उपयोग कर रहा हूँ। [बोर्नियो [(https://github.com/wagjo/borneo) रैपर लाइब्रेरी का उपयोग करने वाला एक है। परेशान न करें अगर आपके डेटा में प्राकृतिक ग्राफ संरचना नहीं है। इसके अलावा, मैड वम्बैट, मैं आपके डीबीएस के बारे में सोचने की सलाह दूंगा क्योंकि डेटा स्ट्रक्चर को एकल-स्रोत-ऑफ-सच्चे स्टोरेज माध्यमों के बजाय विशेष क्वेरी प्रकारों के लिए अनुकूलित किया गया है। Mongo db साइट से –

0

मोंगोडीबी का अपना BSON (बाइनरी जेएसओएन) है जो बहुत सारे बाइनरी डेटा को घुमाने पर उच्च प्रदर्शन दे सकता है।

चूंकि यह आंतरिक रूप से जावास्क्रिप्ट का उपयोग करता है, यह शायद परियोजना के जावास्क्रिप्ट भागों के लिए अच्छा होगा। Clj-time की तारीखें नहीं थीं (था नहीं?) MongoDBs दिनांक-स्वरूप के साथ संगत है हालांकि java.util.Date.s हैं।

2

इस सवाल को देखकर किसी को भी कि Clojure 1.3 के साथ काम करता redis-clojure के वर्तमान संस्करण की तलाश में है, तो ये रहा: https://github.com/tavisrudd/redis-clojure