2010-12-15 13 views
7

मुझे उम्मीद है कि कोई मेरे निष्कर्षों को मान्य या सही कर सकता है।क्या वास्तव में डेस्कटॉप एप्लिकेशन के लिए CouchDB का उपयोग किया जा सकता है?

मैं एक छोटी साइड प्रोजेक्ट लिखने की सोच रहा हूं। मैं नोट्स लेने के लिए डेस्कटॉप एप्लिकेशन बनाना चाहता हूं जो एक वेब-सर्वर से सिंक्रनाइज़ हो जाएंगे ताकि कई इंस्टॉलेशन को चरण और डेटा साझा किया जा सके और साथ ही यदि आवश्यक हो तो ब्राउज़र के माध्यम से इसे एक्सेस किया जा सके।

मैं कॉच डीबी के बारे में शोर को आधा सुन रहा हूं और मैंने डेस्कटॉप-कॉचडब के "ऑफ़लाइन कार्यक्षमता" का उल्लेख सुना है और वितरित अनुप्रयोगों को सक्षम करने के लिए अंतःक्रियात्मक संचार को संभालने की अपनी क्षमता का उपयोग करने के लिए कदमों का उल्लेख किया है मोबाइल बाजार इस सब ने मुझे विश्वास दिलाया कि यह मेरा डेटा स्टोरेज प्रदान करने और मेरी सिंक्रनाइज़ेशन आवश्यकताओं को संभालने के लिए एक दिलचस्प विकल्प हो सकता है, लेकिन मेरे निष्कर्ष को शुरू करने के तरीके के बारे में जानकारी के लिए कुछ समय व्यतीत करने के बाद मुझे यह मिल गया है कि मुझे मिल गया है पूरी तरह से छड़ी का गलत अंत और वास्तविकता यह है कि:

एक कॉच डीबी इंस्टेंस को पैकेजिंग करने का कोई तरीका नहीं है, इसे डेस्कटॉप एप्लिकेशन के हिस्से के रूप में वितरित करने और स्थानीय एप्लिकेशन को प्रदान करने के लिए उस एप्लिकेशन के संदर्भ में इसे चलाने के लिए कोई तरीका नहीं है। एक केंद्रीय डेटाबेस के लिए सिंक्रनाइज़ेशन।

क्या मैं यहां सही हूँ? यदि ऐसा है तो वहां कोई तकनीक है जो इस तरह की चीज करता है या क्या मैंने अपना खुद का स्थानीय भंडारण रोल किया है और फिर भी सर्वर पर कॉच डीबी का उपयोग कर रहा हूं?

+0

कम से कम एक व्यक्ति ने फैसला किया कि उत्तर नहीं था: http://philwilson.org/blog/2009/04/couchdb-in-desktop-applications – RobertB

+0

लेकिन फिर उबंटू में डेस्कटॉपकच प्रयास है: https: // launchpad.net/desktopcouch यह इस बिंदु पर * निक्स-केवल प्रतीत होता है। अधिक दिलचस्प दस्तावेज़ यहां हैं: http://www.freedesktop.org/wiki/Specifications/desktopcouch – RobertB

उत्तर

5

अद्यतन (2012/05): काउचबेस से नए TouchDB परियोजनाओं की जाँच करता है, तो आप Mac OS X and/or iOS या Android लक्षित कर रहे हैं। ये वास्तव में हुड के नीचे SQLite का उपयोग करते हैं (कम से कम अभी के लिए) लेकिन "असली" CouchDB सर्वर से/से दोहराने के लिए। अंततः परिपक्व होने वाला एक और क्लाइंटसाइड विकल्प PouchDB है, जो इंडेक्सड डीबी सक्षम ब्राउज़र इंजन में चलता है। इनका उपयोग करना या अन्य पोर्ट प्लेटफॉर्म पर समान बंदरगाह को प्रेरित करने के लिए उनका उपयोग करना अब बेहतर-ट्रॉड पथ बन रहा है।

मूल जवाब:

एक CouchDB उदाहरण ऊपर पैकेजिंग, कि आवेदन के संदर्भ में इसे चलाने स्थानीय भंडारण प्रदान करने के लिए एक डेस्कटॉप अनुप्रयोग की हिस्सा है और के रूप में यह वितरण का कोई तरीका नहीं है और एक केंद्रीय डेटाबेस के लिए सिंक्रनाइज़ेशन।

समय में इस बिंदु पर, अपने बयान व्यावहारिक रूप से सही है, हालांकि यह एक अनुप्रयोग में CouchDB शामिल करने के लिए संभव है - एक उदाहरण के लिए CouchDBX.app जो CouchDB का एक उपसर्ग बंडल चारों ओर एक पतली आवरण है और उसके सभी निर्भरता को देखने के ।

एक कॉच डीबी ऐप बनाने का सबसे आसान तरीका यह मानना ​​है कि उपयोगकर्ता के पास पहले से ही a CouchDB server चल रहा है। यह लगता है कि यह आसान है, विशेष रूप से कॉचोन की होस्टिंग या ओब एक्स पर कॉच डीबीएक्स या उबंटू पर डेस्कटॉपकच जैसे प्रीबिल्ट ऐप के साथ। यह बाद में विशेष रूप से दिलचस्प है, क्योंकि अगर मैं सही ढंग से समझता हूं तो इसे इन दिनों उबंटू के साथ डिफ़ॉल्ट रूप से शामिल किया गया है, और जब आप डी-बस के माध्यम से अपने पोर्ट से पूछताछ करते हैं तो स्वचालित रूप से एक CouchDB सर्वर प्रति उपयोगकर्ता को स्पिन करता है। लॉन्च और बोनजोर का उपयोग कर ओएस एक्स पर कुछ ऐसा ही किया जा सकता है (और चाहिए)।

तो जैसा कि आप लिखते हैं, या तो आप एक स्थानीय प्रारूप और एक CouchDB सेवा के साथ वैकल्पिक रूप से सिंक में डाटा स्टोर करने की अपने ऐप को डिज़ाइन हैं प्रदान करते हैं या आप build करने के लिए है और साथ मिलकर Erlang, Spidermonkey और CouchDB के सभी बंडल है कि आपके द्वारा कुछ स्क्रिप्ट के साथ ऐप यह सुनिश्चित करने के लिए कि यह आवश्यक होने पर चल रहा था। यह संभव है लेकिन स्पष्ट रूप से इनमें से कोई भी आदर्श नहीं है, और मेरा मानना ​​है कि आप डेस्कटॉप उन्मुख ऐप्स के लिए एक आसान समाधान नहीं चाहते हैं!

+0

उत्तर (और टिप्पणी करने वालों के लिए) के लिए धन्यवाद। मैंने कुछ SQLite स्थानीय स्टोर और लाइब्रेरी की तरह कल्पना की थी जिसे दूरस्थ कॉच डीबी उदाहरण के बारे में बताया जा सकता था। ओह ठीक है, शायद भविष्य में कभी-कभी। – mwtb

+0

वास्तव में, यह हाल के महीनों में हो रहा है! ऊपर दिए गए मेरे उत्तर में अपडेट में TouchDB के लिए मेरे लिंक देखें। – natevw

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

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