अपाचे काउचडीबी: Difference between revisions
No edit summary |
No edit summary |
||
(13 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{Short description|Document-oriented NoSQL database}} | {{Short description|Document-oriented NoSQL database}} | ||
{{Infobox software | {{Infobox software | ||
| name = | | name = अपाचे काउचडीबी | ||
| logo = Apache CouchDB logo.svg | | logo = Apache CouchDB logo.svg | ||
| logo size = 100px | | logo size = 100px | ||
| screenshot = Apache CouchDB v2.1.1 Fauxton Console.png | | screenshot = Apache CouchDB v2.1.1 Fauxton Console.png | ||
| screenshot size = 300px | | screenshot size = 300px | ||
| caption = | | caption = काउचडीबी का फॉक्सटन एडमिनिस्ट्रेशन इंटरफ़ेस, उपयोगकर्ता डेटाबेस | ||
| collapsible = | | collapsible = | ||
| author = | | author = डेमियन काट्ज़, जान लेहनार्ड्ट, नाओमी स्लेटर, क्रिस्टोफर लेन्ज़, जे. क्रिस एंडरसन, पॉल डेविस, एडम कोकोलोस्की, जेसन डेविस, बेनोइट चेसन्यू, फ़िलिप मनाना, रॉबर्ट न्यूज़न | ||
| developer = [[ | | developer = [[अपाचे सॉफ्टवेयर फाउंडेशन]] | ||
| released = {{ | | released = {{प्रारंभ तिथि और आयु|2005}} | ||
| latest release version = {{ | | latest release version = {{विकीडेटा|संपत्ति|संपादित करें|संदर्भ|पी348}} | ||
| latest release date = {{ | | latest release date = {{आरंभ तिथि और आयु|{{wikidata|qualifier|P348|P577}}}} | ||
| latest preview version = | | latest preview version = | ||
| latest preview date = | | latest preview date = | ||
| programming language = [[ | | programming language = [[एरलांग (प्रोग्रामिंग भाषा)|एरलांग]], [[जावास्क्रिप्ट]], [[C (प्रोग्रामिंग भाषा)|C ]], [[C ++]] | ||
| operating system = [[ | | operating system = [[क्रॉस-प्लेटफ़ॉर्म]] | ||
| language = | | language = | ||
| genre = [[ | | genre = [[डॉक्यूमेंट-ओरिएंटेड डेटाबेस]] | ||
| license = [[ | | license = [[अपाचे लाइसेंस 2.0]] | ||
}} | }} | ||
'''अपाचे काउचडीबी''' | '''अपाचे काउचडीबी''' ओपन-सोर्स डॉक्यूमेंट-उन्मुख नोएसक्यूएल डेटाबेस है, जिसे एर्लैंग में कार्यान्वित किया गया है। | ||
काउचडीबी अपने डेटा को स्टोर करने, ट्रांसफर करने और प्रोसेस करने के लिए कई फॉर्मेट और प्रोटोकॉल का उपयोग करता है। यह डेटा संग्रहीत करने के लिए जेसन का उपयोग करता है, मैपरेड्युस का उपयोग करके अपनी क्वेरी भाषा के रूप में जावास्क्रिप्ट का उपयोग करता है, और एपीआई के लिए एचटीटीपी का उपयोग करता है।<ref name="official-website">{{cite web|url=http://couchdb.apache.org/|title=अपाचे काउचडीबी|last=Apache Software Foundation|access-date=15 April 2012}}</ref> | काउचडीबी अपने डेटा को स्टोर करने, ट्रांसफर करने और प्रोसेस करने के लिए कई फॉर्मेट और प्रोटोकॉल का उपयोग करता है। यह डेटा संग्रहीत करने के लिए जेसन का उपयोग करता है, मैपरेड्युस का उपयोग करके अपनी क्वेरी भाषा के रूप में जावास्क्रिप्ट का उपयोग करता है, और एपीआई के लिए एचटीटीपी का उपयोग करता है।<ref name="official-website">{{cite web|url=http://couchdb.apache.org/|title=अपाचे काउचडीबी|last=Apache Software Foundation|access-date=15 April 2012}}</ref> | ||
काउचडीबी पहली बार 2005 में जारी किया गया था और बाद में 2008 में [[अपाचे सॉफ्टवेयर फाउंडेशन]] प्रोजेक्ट बन गया था। | |||
रिलेशनल डेटाबेस के विपरीत, | रिलेशनल डेटाबेस के विपरीत, काउचडीबी डेटाबेस तालिकाओं में डेटा और संबंधों को संग्रहीत नहीं करता है। इसके स्थान पर, प्रत्येक डेटाबेस स्वतंत्र डाक्यूमेंट्स का संग्रह है। प्रत्येक डाक्यूमेंट अपना स्वयं का डेटा और स्व-निहित स्कीमा बनाए रखता है। एप्लिकेशन कई डेटाबेस तक पहुंच सकता है, जैसे एक उपयोगकर्ता के मोबाइल फोन पर संग्रहीत और दूसरा सर्वर पर। डाक्यूमेंट मेटाडेटा में संशोधन की जानकारी होती है, जिससे डेटाबेस के डिस्कनेक्ट होने के दौरान होने वाले किसी भी अंतर को मर्ज करना संभव हो जाता है। | ||
काउचडीबी मल्टी वर्जन कॉन्करेंसी कंट्रोल (एमवीसीसी) का एक रूप प्रयुक्त करता है, इसलिए यह लिखने के दौरान डेटाबेस फ़ाइल को लॉक नहीं करता है। विवादों को हल करने के लिए एप्लिकेशन पर छोड़ दिया जाता है। किसी विवाद को सुलझाने में सामान्यतः पहले डेटा को किसी डाक्यूमेंट में मर्ज करना और फिर पुराने डाक्यूमेंट को हटाना सम्मिलित होता है।<ref>{{cite web|last=Smith|first=Jason|title=What is the CouchDB replication protocol? Is it like Git?|url=https://stackoverflow.com/a/4766398/395287|work=StackOverflow|publisher=Stack Exchange|access-date=14 April 2012}}</ref> | |||
अन्य सुविधाओं में अंतिम स्थिरता के साथ डाक्यूमेंट-स्तरीय एसीआईडी शब्दार्थ, (वार्धिक) मैपरेड्युस, और (वार्धिक) प्रतिकृति सम्मिलित हैं। काउचडीबी की विशिष्ट विशेषताओं में से मल्टी-मास्टर प्रतिकृति है, जो इसे उच्च-प्रदर्शन प्रणाली बनाने के लिए मशीनों में स्केल करने की अनुमति देती है। फ़ॉक्सटन (पूर्व में फ़्यूटन) नामक अंतर्निर्मित वेब एप्लिकेशन प्रबंधन में सहायता करता है। | |||
== इतिहास == | |||
काउच अविश्वसनीय कमोडिटी हार्डवेयर के क्लस्टर का संक्षिप्त रूप है।<ref>{{Cite web |title= काउचडीबी की खोज|work= Developer Works |publisher= IBM |date= March 31, 2009 |url= http://www.ibm.com/developerworks/opensource/library/os-couchdb/index.html |access-date= September 30, 2016 }}</ref> काउचडीबी परियोजना अप्रैल 2005 में आईबीएम के पूर्व [[लोटस नोट्स]] डेवलपर डेमियन काट्ज़ द्वारा बनाई गई थी। उन्होंने लगभग दो वर्षों तक इस परियोजना को स्वयं वित्त पोषित किया और इसे [[जीएनयू जनरल पब्लिक लाइसेंस]] के तहत ओपन-सोर्स प्रोजेक्ट के रूप में जारी किया था। | |||
फरवरी 2008 में, यह [[अपाचे इनक्यूबेटर]] प्रोजेक्ट बन गया और इसके बजाय [[अपाचे लाइसेंस]] के अंतर्गत प्रस्तुत किया गया।<ref>[http://mail-archives.apache.org/mod_mbox/incubator-general/200802.mbox/%3c3d4032300802121136p361b52ceyfc0f3b0ad81a1793@mail.gmail.com%3e Apache mailing list announcement] on mail-archives.apache.org</ref> कुछ महीनों के बाद, यह शीर्ष-स्तरीय परियोजना में सम्मिलित हो गया।<ref>[http://mail-archives.apache.org/mod_mbox/incubator-couchdb-dev/200811.mbox/%3c3F352A54-5FC8-4CB0-8A6B-7D3446F07462@jaguNET.com%3e Re: Proposed Resolution: Establish CouchDB TLP] on mail-archives.apache.org</ref> इसके परिणामस्वरूप जुलाई 2010 में पहला स्थिर संस्करण जारी किया गया था।<ref>[https://www.pcworld.com/article/201046/couchdb_nosql_database_ready_for_production_use.html "CouchDB NoSQL Database Ready for Production Use"], article from PC World of July 2010</ref> | |||
2012 की प्रारम्भ में, काट्ज़ ने [[काउचबेस सर्वर]] पर ध्यान केंद्रित करने के लिए प्रोजेक्ट छोड़ दिया था।<ref>{{cite web|last=Katz|first=Damien|title=CouchDB का भविष्य|url=http://damienkatz.net/2012/01/the_future_of_couchdb.html|access-date=15 April 2012}}</ref> | |||
काट्ज़ के जाने के बाद से, अपाचे काउचडीबी परियोजना जारी रही, अप्रैल 2012 में 1.2 और अप्रैल 2013 में 1.3 जारी किया गया। जुलाई 2013 में, काउचडीबी समुदाय ने [[बिगकाउच]], क्लाउडेंट के काउचडीबी के क्लस्टर्ड संस्करण, के लिए कोडबेस को अपाचे प्रोजेक्ट में मर्ज कर दिया गया।<ref>{{cite web|last=Slater|first=Noah|title=बिगकाउच में आपका स्वागत है|url=https://blogs.apache.org/couchdb/entry/welcome_bigcouch|access-date=25 July 2013}}</ref> बिगकाउच क्लस्टरिंग ढांचा अपाचे काउचडीबी की वर्तमान रिलीज में सम्मिलित है।<ref name="couch2bigcouch">{{cite web|url=https://blog.couchdb.org/2016/09/20/2-0/|title= '2.0'|date= 20 September 2016|access-date= 13 January 2017}}</ref> | |||
संस्करण 2.0.0 पर नेटिव क्लस्टरिंग समर्थित है। और नया मैंगो क्वेरी सर्वर जावास्क्रिप्ट या मैपरेड्युस के बिना काउचडीबी क्वेरी करने के लिए सरल जेसन-आधारित विधि प्रदान करता है। | |||
नेटिव क्लस्टरिंग | |||
== मुख्य विशेषताएं == | == मुख्य विशेषताएं == | ||
; एसिड | ; | ||
: | ;एसिड सिमेंटिक्स | ||
: काउचडीबी एसिड सिमेंटिक्स प्रदान करता है।<ref name="ACID">[http://couchdb.apache.org/docs/overview.html CouchDB, Technical Overview] {{webarchive |url=https://web.archive.org/web/20111020074113/http://couchdb.apache.org/docs/overview.html |date=October 20, 2011 }}</ref> यह मल्टी-वर्जन कॉन्करेंसी कंट्रोल के फॉर्म को कार्यान्वित करके ऐसा करता है, जिसका अर्थ है कि काउचडीबी बिना किसी विरोध के समवर्ती पाठकों और लेखकों की एक बड़ी मात्रा को संभाल सकता है। | |||
; ऑफ़लाइन के लिए निर्मित | ; ऑफ़लाइन के लिए निर्मित | ||
: | : काउचडीबी उन उपकरणों (जैसे स्मार्टफोन) की नकल कर सकता है जो ऑफ़लाइन हो सकते हैं और डिवाइस के वापस ऑनलाइन होने पर आपके लिए डेटा सिंक को संभाल सकते हैं। | ||
; प्रतिकृति के साथ वितरित | ; प्रतिकृति के साथ वितरित आर्किटेक्चर | ||
: | : काउचडीबी को द्वि-दिशात्मक प्रतिकृति (या सिंक्रनाइज़ेशन) और ऑफ-लाइन ऑपरेशन को ध्यान में रखकर डिजाइन किया गया था। इसका मतलब है कि कई प्रतिकृतियां एक ही डेटा की अपनी प्रतियां रख सकती हैं, इसे संशोधित कर सकती हैं और फिर बाद में उन परिवर्तनों को सिंक कर सकती हैं। | ||
; डॉक्यूमेंट | ; डॉक्यूमेंट स्टोरेज | ||
: | : काउचडीबी डेटा को "डाक्यूमेंट्स" के रूप में संग्रहीत करता है, जेसन के रूप में एक या अधिक फ़ील्ड/वैल्यू जोड़े के रूप में अभिव्यक्त करते हैं। फ़ील्ड वैल्यू स्ट्रिंग, संख्याएं या दिनांक जैसी साधारण चीजें हो सकती हैं; लेकिन आदेशित सूचियाँ और सहयोगी सरणियाँ भी उपयोग की जा सकती हैं। काउचडीबी डेटाबेस में प्रत्येक दस्तावेज़ की एक विशिष्ट आईडी होती है और कोई आवश्यक डॉक्यूमेंट स्कीमा नहीं होती है। | ||
; अंततः संगति | ; अंततः संगति | ||
: | : काउचडीबी उपलब्धता और विभाजन सहनशीलता दोनों प्रदान करने में सक्षम होने के लिए अंतिम स्थिरता की प्रत्याभूति देता है। | ||
; | ; मैप/रेड्यूस व्यूस एंड इन्डेक्सेस | ||
: संग्रहीत डेटा को | : संग्रहीत डेटा को व्यूस का उपयोग करके संरचित किया जाता है। काउचडीबी में, प्रत्येक व्यू का निर्माण जावास्क्रिप्ट फ़ंक्शन द्वारा किया जाता है जो मैप के आधे भाग (उच्च-क्रम फ़ंक्शन)/रिड्यूस ऑपरेशन के रूप में कार्य करता है। फ़ंक्शन एक डॉक्यूमेंट लेता है और उसे वापस लौटाए जाने वाले एकल मान में बदल देता है। काउचडीबी व्यूस को अनुक्रमित कर सकता है और उन इन्डेक्सेस को डाक्यूमेंट्स के जोड़े जाने, हटाए जाने या अद्यतन किए जाने पर अद्यतन रख सकता है। | ||
; | ; एचटीटीपी एपीआई | ||
: सभी आइटम में | : सभी आइटम में अद्वितीय यूआरआई होता है जो एचटीटीपी के माध्यम से प्रदर्शित होता है। यह सभी संसाधनों पर चार बुनियादी सीआरयूडी (बनाएं, पढ़ें, अपडेट करें, हटाएं) संचालन के लिए एचटीटीपी विधियों पोस्ट, गेट, पुट और डिलीट का उपयोग करता है। | ||
काउचडीबी फ़ॉक्सटन नामक वेब के माध्यम से सुलभ अंतर्निहित प्रशासन इंटरफ़ेस भी प्रदान करता है।<ref>{{cite web|url=https://github.com/apache/काउचडीबी-फॉक्सटन|title=काउचडीबी-फॉक्सटन|website=GitHub|publisher=apache|access-date=2 May 2023}}</ref> | |||
== उपयोग के स्थितियों और उत्पादन परिनियोजन == | |||
काउचडीबी की प्रतिकृति और सिंक्रनाइज़ेशन क्षमताएं इसे मोबाइल उपकरणों में उपयोग करने के लिए आदर्श बनाती हैं, जहां नेटवर्क कनेक्शन की गारंटी नहीं है, और एप्लिकेशन को ऑफ़लाइन काम करते रहना होगा। | |||
काउचडीबी उन अनुप्रयोगों के लिए उपयुक्त है, जिनमें डेटा जमा होता है, कभी-कभी बदलता रहता है, जिस पर पूर्व-परिभाषित क्वेरीज़ चलायी जानी हैं और जहां संस्करण बनाना महत्वपूर्ण है (उदाहरण के लिए सीआरएम, सीएमएस सिस्टम)। मास्टर-मास्टर प्रतिकृति एक विशेष रूप से दिलचस्प सुविधा है, जो आसान मल्टी-साइट परिनियोजन की अनुमति देती है।<ref name="Analyse Kristof Kovacs">[http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase comparison] from Kristóf Kovács</ref> | |||
=== उपयोगकर्ता === | === उपयोगकर्ता === | ||
काउचडीबी के उपयोगकर्ताओं में सम्मिलित हैं: | |||
* [[CERN]] [[ लार्ज हैड्रान कोलाइडर ]] में डेटा प्रबंधन प्रणाली के लिए डेटाबेस के रूप में | * [[CERN|सीईआरएन]] [[ लार्ज हैड्रान कोलाइडर |लार्ज हैड्रान कोलाइडर]] में डेटा प्रबंधन प्रणाली के लिए डेटाबेस के रूप में काउचडीबी का उपयोग करता है।<ref>{{Cite web |date=2010-08-26 |title=लार्ज हैड्रॉन कोलाइडर वैज्ञानिक CouchDB का उपयोग क्यों कर रहे हैं?|url=https://readwrite.com/lhc-couchdb/ |access-date=2022-03-29 |website=ReadWrite |language=en-US}}</ref> | ||
* [[रेड क्रॉस]] आपदा क्षेत्रों में इलेक्ट्रॉनिक रूप से केसवर्क पूरा करने के लिए | * [[रेड क्रॉस]] आपदा क्षेत्रों में इलेक्ट्रॉनिक रूप से केसवर्क पूरा करने के लिए आईडीएटी एप्लिकेशन का उपयोग करता है। यहां काउचडीबी का उपयोग मल्टी-नोड पीयर-टू-पीयर ऑफ़लाइन-प्रथम डेटाबेस के रूप में किया जाता है।<ref>{{Citation |title=iDAT |date=2021-07-31 |url=https://github.com/redcross/idat |publisher=Red Cross Code |access-date=2022-03-29}}</ref> | ||
* आईबीएम क्लाउड सेवाएं बुनियादी स्तर पर | * आईबीएम क्लाउड सेवाएं बुनियादी स्तर पर काउचडीबी पर आधारित हैं।<ref>{{Cite web |title=डेटाबेस-डीप-डाइव्स-काउचडीबी|url=https://www.ibm.com/cloud/blog/database-deep-dives-couchdb |access-date=2022-03-29 |website=www.ibm.com |language=en-us}}</ref> | ||
* [[ यूनाइटेड एयरलाइन्स ]] 3,000 से अधिक विमानों में उड़ान के दौरान मनोरंजन प्रणालियों के लिए | * [[ यूनाइटेड एयरलाइन्स |यूनाइटेड एयरलाइन्स]] 3,000 से अधिक विमानों में उड़ान के दौरान मनोरंजन प्रणालियों के लिए काउचडीबी का उपयोग करती है।<ref>{{Cite web |title=डेटाबेस-डीप-डाइव्स-काउचडीबी|url=https://www.ibm.com/cloud/blog/database-deep-dives-couchdb |access-date=2022-03-29 |website=www.ibm.com |language=en-us}}</ref><ref>{{Cite web |title=United Airlines Streamlines Operations With Couchbase {{!}} Case Study |url=https://www.couchbase.com/customers/united-airlines |access-date=2022-03-29 |website=www.couchbase.com}}</ref> | ||
* [[एमॅड्यूस आईटी समूह]], उनके कुछ बैक-एंड सिस्टम के लिए। | * [[एमॅड्यूस आईटी समूह]], उनके कुछ बैक-एंड सिस्टम के लिए। | ||
* [[ स्विस क्रेडिट ]], कमोडिटी विभाग में उनके बाज़ार ढांचे के लिए आंतरिक उपयोग के | * [[ स्विस क्रेडिट |स्विस क्रेडिट]] , कमोडिटी विभाग में उनके बाज़ार ढांचे के लिए आंतरिक उपयोग के लिए है।<ref name="couchdbinthewild">[http://wiki.apache.org/couchdb/CouchDB_in_the_wild "CouchDB in the wild"] {{Webarchive|url=https://web.archive.org/web/20170720124015/http://wiki.apache.org/couchdb/CouchDB_in_the_wild |date=2017-07-20 }} article of the product's Web, a list of software projects and websites using CouchDB</ref> | ||
* [[मीबो]], उनके सोशल प्लेटफॉर्म (वेब और एप्लिकेशन) के लिए। | * [[मीबो]], उनके सोशल प्लेटफॉर्म (वेब और एप्लिकेशन) के लिए। गूगल द्वारा मीबो का अधिग्रहण कर लिया गया और अधिकांश उत्पाद 12 जुलाई 2012 को बंद कर दिए गए है।<ref>{{cite web|url=https://techcrunch.com/2012/06/09/meebo-product-shutdown/ |title=Meebo Gets The Classic Google Acq-hire Treatment: Most Products To Shut Down Soon |first=Kim-Mai |last=Cutler |date=9 June 2012|access-date=7 January 2016|work=TechCrunch|publisher=AOL Inc.}}</ref> | ||
* | * एनपीएम (सॉफ्टवेयर) अपने पैकेज रजिस्ट्री के लिए प्रतिकृति डेटाबेस के रूप में काउचडीबी का उपयोग करता है।<ref>{{cite web|url=https://github.com/npm/एनपीएम-रजिस्ट्री-काउचएप|title=एनपीएम-रजिस्ट्री-काउचएप|website=GitHub|publisher=npm|date=17 June 2015|access-date=7 January 2016}}</ref> | ||
* [[सोफोस]], उनके कुछ बैक-एंड सिस्टम के | * [[सोफोस]], उनके कुछ बैक-एंड सिस्टम के लिए है।। | ||
* [[बीबीसी]], | * [[बीबीसी]], गतिशील सीएमएस-प्लेटफ़ॉर्म के लिए है।<ref>[http://www.erlang-factory.com/conference/London2009/speakers/endafarrell CouchDB at the BBC as a fault tolerant, scalable, multi-data center key-value store]</ref> | ||
* [[कैनोनिकल (कंपनी)]] ने 2009 में अपनी सिंक्रोनाइज़ेशन सेवा उबंटू वन के लिए इसका उपयोग | * [[कैनोनिकल (कंपनी)]] ने 2009 में अपनी सिंक्रोनाइज़ेशन सेवा उबंटू वन के लिए इसका उपयोग प्रारम्भ किया,<ref>[http://mail-archives.apache.org/mod_mbox/couchdb-dev/200910.mbox/%3C4AD53996.3090104@canonical.com%3E Email from Elliot Murphy (Canonical)] {{Webarchive|url=https://web.archive.org/web/20110505005955/http://mail-archives.apache.org/mod_mbox/couchdb-dev/200910.mbox/%3C4AD53996.3090104@canonical.com%3E |date=2011-05-05 }} to the CouchDB-Devel list</ref> लेकिन नवंबर 2011 में इसका उपयोग बंद कर दिया।<ref>[http://linux.slashdot.org/story/11/11/22/171228/canonical-drops-couchdb-from-ubuntu-one Canonical Drops CouchDB From Ubuntu One (Slashdot)]</ref> | ||
* | * कैनाल+ ओवरसीज़ में अंतर्राष्ट्रीय ऑन-डिमांड प्लेटफ़ॉर्म के लिए है। | ||
* [[प्रोटोग्रिड]], उनके तीव्र अनुप्रयोग विकास | *[[प्रोटोग्रिड]], उनके तीव्र अनुप्रयोग विकास प्रारूप के लिए स्टोरेज बैक-एंड के रूप में है।<ref>{{Cite web|url=http://protogrid.com/bisc/de/001-about|title = Protogrid - Über uns}}</ref> | ||
== डेटा मेनिपुलेशन: डॉक्यूमेंट और व्यूस == | |||
काउचडीबी जेसन डाक्यूमेंट्स के संग्रह का प्रबंधन करता है। दस्तावेज़ों को विचारों के माध्यम से व्यवस्थित किया जाता है। व्यूस को समग्र फ़ंक्शंस के साथ परिभाषित किया गया है और फ़िल्टर की गणना समानांतर में की जाती है, बिल्कुल MapReduce की तरह है। | |||
व्यू सामान्यतः डेटाबेस में संग्रहीत होते हैं और उनकी अनुक्रमणिकाएँ लगातार अद्यतन होती रहती हैं। काउचडीबी बाहरी सॉकेट सर्वर और जेसन-आधारित प्रोटोकॉल का उपयोग करके एक व्यू सिस्टम का समर्थन करता है।<ref name="Apache, View Server" >[http://wiki.apache.org/couchdb/ViewServer View Server Documentation] {{Webarchive|url=https://web.archive.org/web/20081020160035/http://wiki.apache.org/couchdb/ViewServer |date=2008-10-20 }} on wiki.apache.org</ref> परिणामस्वरूप, व्यू सर्वर विभिन्न भाषाओं में विकसित किए गए हैं (जावास्क्रिप्ट डिफ़ॉल्ट है, लेकिन पीएचपी, रूबी, पायथन और एर्लैंग भी हैं)। | |||
== | === एचटीटीपी के माध्यम से डेटा एक्सेस करना === | ||
एप्लिकेशन एचटीटीपी के माध्यम से काउचडीबी के साथ इंटरैक्ट करते हैं। निम्नलिखित कमांड-लाइन उपयोगिता [[cURL]] का उपयोग करके कुछ उदाहरण प्रदर्शित करता है। ये उदाहरण मानते हैं कि काउचडीबी पोर्ट 5984 पर [[ स्थानीय होस्ट |लोकल होस्ट]] (127.0.0.1) पर चल रहा है। | |||
एप्लिकेशन | |||
{| class="wikitable" | {| class="wikitable" | ||
!कार्य | |||
!रिक्वेस्ट | |||
!रिस्पांस | |||
|- | |- | ||
|सर्वर जानकारी तक पहुंच | |||
| | | | ||
| | curl <nowiki>http://127.0.0.1:5984/</nowiki> | ||
| | |||
| | { | ||
"couchdb": "Welcome", | |||
"version":"1.1.0" | |||
} | } | ||
|- | |- | ||
| | |'''विकि''' नाम का डेटाबेस बनाना | ||
| | | | ||
| | curl -X PUT <nowiki>http://127.0.0.1:5984/wiki</nowiki> | ||
| | |||
{"ok": true} | |||
|- | |- | ||
| | |'''विकि''' नाम से दूसरा डेटाबेस बनाने का प्रयास किया जा रहा है | ||
| | | | ||
| | curl -X PUT <nowiki>http://127.0.0.1:5984/wiki</nowiki> | ||
| | |||
{ | |||
} | "error":"file_exists", | ||
"reason":"The database could not be created, the file already exists." | |||
} | |||
|- | |- | ||
| | |'''विकी''' डेटाबेस के बारे में जानकारी प्राप्त करें | ||
| | | | ||
| | curl <nowiki>http://127.0.0.1:5984/wiki</nowiki> | ||
| | |||
{ | |||
"db_name": "wiki", | |||
"doc_count": 0, | |||
"doc_del_count": 0, | |||
"update_seq": 0, | |||
"purge_seq": 0, | |||
"compact_running": false, | |||
"disk_size": 79, | |||
} | "instance_start_time": "1272453873691070", | ||
"disk_format_version": 5 | |||
} | |||
|- | |- | ||
| | |डेटाबेस '''विकी''' को हटाएँ | ||
| | | | ||
| | curl -X DELETE <nowiki>http://127.0.0.1:5984/wiki</nowiki> | ||
| | |||
{"ok": true} | |||
|- | |- | ||
| | |एक डॉक्यूमेंट बनाएँ, काउचडीबी से डॉक्यूमेंटआईडी प्रदान करने के लिए कहें | ||
| | | | ||
'{ "text" : "Wikipedia on | curl -X POST -H "Content-Type: application/json" --data \ | ||
http://127.0.0.1:5984/wiki | '{ "text" : "Wikipedia on couchdb", "rating": 5 }' \ | ||
</ | <nowiki>http://127.0.0.1:5984/wiki</nowiki> | ||
| | | | ||
{ | |||
"ok": true, | |||
"id": "123BAC", | |||
} | "rev": "946B7D1C" | ||
} | |||
|- | |- | ||
| | |डेटाबेस की सूची प्राप्त करें | ||
|< | | | ||
curl <nowiki>http://127.0.0.1:5984/_all_dbs</nowiki> | |||
</ | | | ||
| | ["_replicator","_users","wiki"] | ||
["_replicator","_users","wiki"] | |||
|} | |} | ||
==ओपन सोर्स घटक== | |||
== | काउचडीबी में इसके डिफ़ॉल्ट पैकेज के हिस्से के रूप में कई अन्य ओपन सोर्स प्रोजेक्ट सम्मिलित हैं। | ||
{| class="wikitable sortable" | |||
{| class="wikitable sortable | !अवयव | ||
! | !विवरण | ||
! | !लाइसेंस | ||
! | |||
|- | |- | ||
| | |एरलांग | ||
| | |एर्लैंग एक सामान्य प्रयोजन वाली समवर्ती प्रोग्रामिंग भाषा और रनटाइम प्रणाली है। एर्लैंग का अनुक्रमिक उपसमुच्चय सख्त मूल्यांकन , एकल असाइनमेंट और गतिशील टाइपिंग के साथ एक कार्यात्मक भाषा है। | ||
| | |अपाचे 2.0 (रिलीज़ 18.0 और बाद में) | ||
एर्लांग पब्लिक लाइसेंस (पहले रिलीज़) | |||
|- | |- | ||
| | |आईसीयू | ||
| | |यूनिकोड के लिए अंतर्राष्ट्रीय घटक (आईसीयू) यूनिकोड समर्थन, सॉफ्टवेयर अंतर्राष्ट्रीयकरण और सॉफ्टवेयर वैश्वीकरण के लिए परिपक्व C / C++ और जावा लाइब्रेरी का एक ओपन-सोर्स प्रोजेक्ट है। | ||
| | |यूनिकोड लाइसेंस | ||
|- | |- | ||
| | |जेक्वेरी | ||
| | |जेक्वेरी साधारण क्रॉस-ब्राउज़र जावास्क्रिप्ट लाइब्रेरी है जो जावास्क्रिप्ट और एचटीएमएल के बीच इंटरैक्शन पर जोर देती है। | ||
| | |एमआईटी लाइसेंस | ||
|- | |- | ||
| | |ओपनएसएसएल | ||
| | |ओपनएसएसएल एसएसएल और टीएलएस प्रोटोकॉल का ओपन-सोर्स कार्यान्वयन है। कोर लाइब्रेरी ( C प्रोग्रामिंग भाषा में लिखी गई ) बुनियादी क्रिप्टोग्राफ़िक फ़ंक्शंस को कार्यान्वित करती है और विभिन्न उपयोगिता फ़ंक्शंस प्रदान करती है। | ||
| | |अपाचे 1.0 और चार खंड वाला बीएसडी लाइसेंस | ||
|- | |- | ||
| | |स्पाइडरमंकी | ||
| | |स्पाइडरमंकी मोज़िला फाउंडेशन द्वारा संचालित परफॉर्मेंट जावास्क्रिप्ट इंजन है । इसमें दुभाषिया , जेआईटी कंपाइलर और गार्बेज संग्रहकर्ता सम्मिलित है। | ||
| | |एमपीएल 2.0 | ||
|} | |} | ||
== यह भी देखें == | == यह भी देखें == | ||
{{Portal|Free and open-source software}} | {{Portal|Free and open-source software}} | ||
* डॉक्यूमेंट- | * डॉक्यूमेंट-ओरिएंटेड डेटाबेस | ||
* [[एक्सएमएल डेटाबेस]] | * [[एक्सएमएल डेटाबेस]] | ||
Line 204: | Line 209: | ||
==बाहरी संबंध== | ==बाहरी संबंध== | ||
* {{Official website|//couchdb.apache.org}} | * {{Official website|//couchdb.apache.org}} | ||
* [https://web.archive.org/web/20090831050402/http://books.couchdb.org/relax/ | * [https://web.archive.org/web/20090831050402/http://books.couchdb.org/relax/ काउचडीबी: The Definitive Guide] | ||
* [https://web.archive.org/web/20160303172725/http://wiki.apache.org/couchdb/Complete_HTTP_API_Reference Complete HTTP API Reference] | * [https://web.archive.org/web/20160303172725/http://wiki.apache.org/couchdb/Complete_HTTP_API_Reference Complete HTTP API Reference] | ||
* [https://github.com/1999/couchdb-php Simple PHP5 library to communicate with | * [https://github.com/1999/couchdb-php Simple PHP5 library to communicate with काउचडीबी] | ||
* [https://code.google.com/p/async-couchdb-client/ Asynchronous | * [https://code.google.com/p/async-couchdb-client/ Asynchronous काउचडीबी client for Java] | ||
* [https://github.com/KimStebel/sprouch Asynchronous | * [https://github.com/KimStebel/sprouch Asynchronous काउचडीबी client for Scala] | ||
* {{cite web|last=Lehnardt|first=Jan|title=Couch DB at 10,000 feet|url=http://video.google.com/videoplay?docid=-3714560380544574985&hl=en|work=Erlang eXchange 2008|access-date=15 April 2012|year=2008|archive-date=9 November 2012|archive-url=https://web.archive.org/web/20121109191546/http://video.google.com/videoplay?docid=-3714560380544574985&hl=en|url-status=dead}} | * {{cite web|last=Lehnardt|first=Jan|title=Couch DB at 10,000 feet|url=http://video.google.com/videoplay?docid=-3714560380544574985&hl=en|work=Erlang eXchange 2008|access-date=15 April 2012|year=2008|archive-date=9 November 2012|archive-url=https://web.archive.org/web/20121109191546/http://video.google.com/videoplay?docid=-3714560380544574985&hl=en|url-status=dead}} | ||
* {{cite web|last=Lenhardt|first=Jan|title=CouchDB for Erlang Developers|url=http://www.erlang-factory.com/conference/London2009/speakers/janlehnardt|work=Erlang Factory London 2009|access-date=15 April 2012|year=2009|archive-url=https://web.archive.org/web/20110619041527/http://www.erlang-factory.com/conference/London2009/speakers/janlehnardt|archive-date=19 June 2011|url-status=dead}} | * {{cite web|last=Lenhardt|first=Jan|title=CouchDB for Erlang Developers|url=http://www.erlang-factory.com/conference/London2009/speakers/janlehnardt|work=Erlang Factory London 2009|access-date=15 April 2012|year=2009|archive-url=https://web.archive.org/web/20110619041527/http://www.erlang-factory.com/conference/London2009/speakers/janlehnardt|archive-date=19 June 2011|url-status=dead}} | ||
Line 216: | Line 221: | ||
{{Authority control}} | {{Authority control}} | ||
{{DEFAULTSORT:CouchDB}} | {{DEFAULTSORT:CouchDB}} | ||
[[Category: | [[Category:2005 सॉफ्टवेयर|CouchDB]] | ||
[[Category:Created On 26/06/2023]] | [[Category:CS1 English-language sources (en)]] | ||
[[Category:Collapse templates|CouchDB]] | |||
[[Category:Created On 26/06/2023|CouchDB]] | |||
[[Category:Linux के लिए डेटाबेस-संबंधित सॉफ़्टवेयर|CouchDB]] | |||
[[Category:Lua-based templates|CouchDB]] | |||
[[Category:Machine Translated Page|CouchDB]] | |||
[[Category:Navigational boxes| ]] | |||
[[Category:Navigational boxes without horizontal lists|CouchDB]] | |||
[[Category:Official website not in Wikidata|CouchDB]] | |||
[[Category:Pages with empty portal template|CouchDB]] | |||
[[Category:Pages with script errors|CouchDB]] | |||
[[Category:Portal templates with redlinked portals|CouchDB]] | |||
[[Category:Sidebars with styles needing conversion|CouchDB]] | |||
[[Category:Template documentation pages|Documentation/doc]] | |||
[[Category:Templates Vigyan Ready|CouchDB]] | |||
[[Category:Templates generating microformats|CouchDB]] | |||
[[Category:Templates that add a tracking category|CouchDB]] | |||
[[Category:Templates that are not mobile friendly|CouchDB]] | |||
[[Category:Templates that generate short descriptions|CouchDB]] | |||
[[Category:Templates using TemplateData|CouchDB]] | |||
[[Category:Webarchive template wayback links]] | |||
[[Category:Wikipedia metatemplates|CouchDB]] | |||
[[Category:अपाचे सॉफ्टवेयर फाउंडेशन प्रोजेक्ट्स|काउचडीबी]] | |||
[[Category:एरलांग (प्रोग्रामिंग भाषा)|CouchDB]] | |||
[[Category:एर्लांग में प्रोग्राम किया गया मुफ्त सॉफ्टवेयर|CouchDB]] | |||
[[Category:क्रॉस-प्लेटफ़ॉर्म सॉफ़्टवेयर|CouchDB]] | |||
[[Category:क्लाइंट-सर्वर डेटाबेस प्रबंधन प्रणाली|CouchDB]] | |||
[[Category:दस्तावेज़-उन्मुख डेटाबेस|CouchDB]] | |||
[[Category:नोएसक्यूएल|CouchDB]] | |||
[[Category:मुफ़्त डेटाबेस प्रबंधन प्रणालियाँ|CouchDB]] | |||
[[Category:यूनिक्स नेटवर्क से संबंधित सॉफ्टवेयर|CouchDB]] | |||
[[Category:वितरित कंप्यूटिंग वास्तुकला|CouchDB]] | |||
[[Category:संरचित भंडारण|CouchDB]] |
Latest revision as of 19:34, 5 July 2023
Original author(s) | डेमियन काट्ज़, जान लेहनार्ड्ट, नाओमी स्लेटर, क्रिस्टोफर लेन्ज़, जे. क्रिस एंडरसन, पॉल डेविस, एडम कोकोलोस्की, जेसन डेविस, बेनोइट चेसन्यू, फ़िलिप मनाना, रॉबर्ट न्यूज़न |
---|---|
Developer(s) | अपाचे सॉफ्टवेयर फाउंडेशन |
Stable release | |
Written in | एरलांग, जावास्क्रिप्ट, C , C ++ |
Operating system | क्रॉस-प्लेटफ़ॉर्म |
Type | डॉक्यूमेंट-ओरिएंटेड डेटाबेस |
License | अपाचे लाइसेंस 2.0 |
अपाचे काउचडीबी ओपन-सोर्स डॉक्यूमेंट-उन्मुख नोएसक्यूएल डेटाबेस है, जिसे एर्लैंग में कार्यान्वित किया गया है।
काउचडीबी अपने डेटा को स्टोर करने, ट्रांसफर करने और प्रोसेस करने के लिए कई फॉर्मेट और प्रोटोकॉल का उपयोग करता है। यह डेटा संग्रहीत करने के लिए जेसन का उपयोग करता है, मैपरेड्युस का उपयोग करके अपनी क्वेरी भाषा के रूप में जावास्क्रिप्ट का उपयोग करता है, और एपीआई के लिए एचटीटीपी का उपयोग करता है।[1]
काउचडीबी पहली बार 2005 में जारी किया गया था और बाद में 2008 में अपाचे सॉफ्टवेयर फाउंडेशन प्रोजेक्ट बन गया था।
रिलेशनल डेटाबेस के विपरीत, काउचडीबी डेटाबेस तालिकाओं में डेटा और संबंधों को संग्रहीत नहीं करता है। इसके स्थान पर, प्रत्येक डेटाबेस स्वतंत्र डाक्यूमेंट्स का संग्रह है। प्रत्येक डाक्यूमेंट अपना स्वयं का डेटा और स्व-निहित स्कीमा बनाए रखता है। एप्लिकेशन कई डेटाबेस तक पहुंच सकता है, जैसे एक उपयोगकर्ता के मोबाइल फोन पर संग्रहीत और दूसरा सर्वर पर। डाक्यूमेंट मेटाडेटा में संशोधन की जानकारी होती है, जिससे डेटाबेस के डिस्कनेक्ट होने के दौरान होने वाले किसी भी अंतर को मर्ज करना संभव हो जाता है।
काउचडीबी मल्टी वर्जन कॉन्करेंसी कंट्रोल (एमवीसीसी) का एक रूप प्रयुक्त करता है, इसलिए यह लिखने के दौरान डेटाबेस फ़ाइल को लॉक नहीं करता है। विवादों को हल करने के लिए एप्लिकेशन पर छोड़ दिया जाता है। किसी विवाद को सुलझाने में सामान्यतः पहले डेटा को किसी डाक्यूमेंट में मर्ज करना और फिर पुराने डाक्यूमेंट को हटाना सम्मिलित होता है।[2]
अन्य सुविधाओं में अंतिम स्थिरता के साथ डाक्यूमेंट-स्तरीय एसीआईडी शब्दार्थ, (वार्धिक) मैपरेड्युस, और (वार्धिक) प्रतिकृति सम्मिलित हैं। काउचडीबी की विशिष्ट विशेषताओं में से मल्टी-मास्टर प्रतिकृति है, जो इसे उच्च-प्रदर्शन प्रणाली बनाने के लिए मशीनों में स्केल करने की अनुमति देती है। फ़ॉक्सटन (पूर्व में फ़्यूटन) नामक अंतर्निर्मित वेब एप्लिकेशन प्रबंधन में सहायता करता है।
इतिहास
काउच अविश्वसनीय कमोडिटी हार्डवेयर के क्लस्टर का संक्षिप्त रूप है।[3] काउचडीबी परियोजना अप्रैल 2005 में आईबीएम के पूर्व लोटस नोट्स डेवलपर डेमियन काट्ज़ द्वारा बनाई गई थी। उन्होंने लगभग दो वर्षों तक इस परियोजना को स्वयं वित्त पोषित किया और इसे जीएनयू जनरल पब्लिक लाइसेंस के तहत ओपन-सोर्स प्रोजेक्ट के रूप में जारी किया था।
फरवरी 2008 में, यह अपाचे इनक्यूबेटर प्रोजेक्ट बन गया और इसके बजाय अपाचे लाइसेंस के अंतर्गत प्रस्तुत किया गया।[4] कुछ महीनों के बाद, यह शीर्ष-स्तरीय परियोजना में सम्मिलित हो गया।[5] इसके परिणामस्वरूप जुलाई 2010 में पहला स्थिर संस्करण जारी किया गया था।[6]
2012 की प्रारम्भ में, काट्ज़ ने काउचबेस सर्वर पर ध्यान केंद्रित करने के लिए प्रोजेक्ट छोड़ दिया था।[7]
काट्ज़ के जाने के बाद से, अपाचे काउचडीबी परियोजना जारी रही, अप्रैल 2012 में 1.2 और अप्रैल 2013 में 1.3 जारी किया गया। जुलाई 2013 में, काउचडीबी समुदाय ने बिगकाउच, क्लाउडेंट के काउचडीबी के क्लस्टर्ड संस्करण, के लिए कोडबेस को अपाचे प्रोजेक्ट में मर्ज कर दिया गया।[8] बिगकाउच क्लस्टरिंग ढांचा अपाचे काउचडीबी की वर्तमान रिलीज में सम्मिलित है।[9]
संस्करण 2.0.0 पर नेटिव क्लस्टरिंग समर्थित है। और नया मैंगो क्वेरी सर्वर जावास्क्रिप्ट या मैपरेड्युस के बिना काउचडीबी क्वेरी करने के लिए सरल जेसन-आधारित विधि प्रदान करता है।
मुख्य विशेषताएं
- एसिड सिमेंटिक्स
- काउचडीबी एसिड सिमेंटिक्स प्रदान करता है।[10] यह मल्टी-वर्जन कॉन्करेंसी कंट्रोल के फॉर्म को कार्यान्वित करके ऐसा करता है, जिसका अर्थ है कि काउचडीबी बिना किसी विरोध के समवर्ती पाठकों और लेखकों की एक बड़ी मात्रा को संभाल सकता है।
- ऑफ़लाइन के लिए निर्मित
- काउचडीबी उन उपकरणों (जैसे स्मार्टफोन) की नकल कर सकता है जो ऑफ़लाइन हो सकते हैं और डिवाइस के वापस ऑनलाइन होने पर आपके लिए डेटा सिंक को संभाल सकते हैं।
- प्रतिकृति के साथ वितरित आर्किटेक्चर
- काउचडीबी को द्वि-दिशात्मक प्रतिकृति (या सिंक्रनाइज़ेशन) और ऑफ-लाइन ऑपरेशन को ध्यान में रखकर डिजाइन किया गया था। इसका मतलब है कि कई प्रतिकृतियां एक ही डेटा की अपनी प्रतियां रख सकती हैं, इसे संशोधित कर सकती हैं और फिर बाद में उन परिवर्तनों को सिंक कर सकती हैं।
- डॉक्यूमेंट स्टोरेज
- काउचडीबी डेटा को "डाक्यूमेंट्स" के रूप में संग्रहीत करता है, जेसन के रूप में एक या अधिक फ़ील्ड/वैल्यू जोड़े के रूप में अभिव्यक्त करते हैं। फ़ील्ड वैल्यू स्ट्रिंग, संख्याएं या दिनांक जैसी साधारण चीजें हो सकती हैं; लेकिन आदेशित सूचियाँ और सहयोगी सरणियाँ भी उपयोग की जा सकती हैं। काउचडीबी डेटाबेस में प्रत्येक दस्तावेज़ की एक विशिष्ट आईडी होती है और कोई आवश्यक डॉक्यूमेंट स्कीमा नहीं होती है।
- अंततः संगति
- काउचडीबी उपलब्धता और विभाजन सहनशीलता दोनों प्रदान करने में सक्षम होने के लिए अंतिम स्थिरता की प्रत्याभूति देता है।
- मैप/रेड्यूस व्यूस एंड इन्डेक्सेस
- संग्रहीत डेटा को व्यूस का उपयोग करके संरचित किया जाता है। काउचडीबी में, प्रत्येक व्यू का निर्माण जावास्क्रिप्ट फ़ंक्शन द्वारा किया जाता है जो मैप के आधे भाग (उच्च-क्रम फ़ंक्शन)/रिड्यूस ऑपरेशन के रूप में कार्य करता है। फ़ंक्शन एक डॉक्यूमेंट लेता है और उसे वापस लौटाए जाने वाले एकल मान में बदल देता है। काउचडीबी व्यूस को अनुक्रमित कर सकता है और उन इन्डेक्सेस को डाक्यूमेंट्स के जोड़े जाने, हटाए जाने या अद्यतन किए जाने पर अद्यतन रख सकता है।
- एचटीटीपी एपीआई
- सभी आइटम में अद्वितीय यूआरआई होता है जो एचटीटीपी के माध्यम से प्रदर्शित होता है। यह सभी संसाधनों पर चार बुनियादी सीआरयूडी (बनाएं, पढ़ें, अपडेट करें, हटाएं) संचालन के लिए एचटीटीपी विधियों पोस्ट, गेट, पुट और डिलीट का उपयोग करता है।
काउचडीबी फ़ॉक्सटन नामक वेब के माध्यम से सुलभ अंतर्निहित प्रशासन इंटरफ़ेस भी प्रदान करता है।[11]
उपयोग के स्थितियों और उत्पादन परिनियोजन
काउचडीबी की प्रतिकृति और सिंक्रनाइज़ेशन क्षमताएं इसे मोबाइल उपकरणों में उपयोग करने के लिए आदर्श बनाती हैं, जहां नेटवर्क कनेक्शन की गारंटी नहीं है, और एप्लिकेशन को ऑफ़लाइन काम करते रहना होगा।
काउचडीबी उन अनुप्रयोगों के लिए उपयुक्त है, जिनमें डेटा जमा होता है, कभी-कभी बदलता रहता है, जिस पर पूर्व-परिभाषित क्वेरीज़ चलायी जानी हैं और जहां संस्करण बनाना महत्वपूर्ण है (उदाहरण के लिए सीआरएम, सीएमएस सिस्टम)। मास्टर-मास्टर प्रतिकृति एक विशेष रूप से दिलचस्प सुविधा है, जो आसान मल्टी-साइट परिनियोजन की अनुमति देती है।[12]
उपयोगकर्ता
काउचडीबी के उपयोगकर्ताओं में सम्मिलित हैं:
- सीईआरएन लार्ज हैड्रान कोलाइडर में डेटा प्रबंधन प्रणाली के लिए डेटाबेस के रूप में काउचडीबी का उपयोग करता है।[13]
- रेड क्रॉस आपदा क्षेत्रों में इलेक्ट्रॉनिक रूप से केसवर्क पूरा करने के लिए आईडीएटी एप्लिकेशन का उपयोग करता है। यहां काउचडीबी का उपयोग मल्टी-नोड पीयर-टू-पीयर ऑफ़लाइन-प्रथम डेटाबेस के रूप में किया जाता है।[14]
- आईबीएम क्लाउड सेवाएं बुनियादी स्तर पर काउचडीबी पर आधारित हैं।[15]
- यूनाइटेड एयरलाइन्स 3,000 से अधिक विमानों में उड़ान के दौरान मनोरंजन प्रणालियों के लिए काउचडीबी का उपयोग करती है।[16][17]
- एमॅड्यूस आईटी समूह, उनके कुछ बैक-एंड सिस्टम के लिए।
- स्विस क्रेडिट , कमोडिटी विभाग में उनके बाज़ार ढांचे के लिए आंतरिक उपयोग के लिए है।[18]
- मीबो, उनके सोशल प्लेटफॉर्म (वेब और एप्लिकेशन) के लिए। गूगल द्वारा मीबो का अधिग्रहण कर लिया गया और अधिकांश उत्पाद 12 जुलाई 2012 को बंद कर दिए गए है।[19]
- एनपीएम (सॉफ्टवेयर) अपने पैकेज रजिस्ट्री के लिए प्रतिकृति डेटाबेस के रूप में काउचडीबी का उपयोग करता है।[20]
- सोफोस, उनके कुछ बैक-एंड सिस्टम के लिए है।।
- बीबीसी, गतिशील सीएमएस-प्लेटफ़ॉर्म के लिए है।[21]
- कैनोनिकल (कंपनी) ने 2009 में अपनी सिंक्रोनाइज़ेशन सेवा उबंटू वन के लिए इसका उपयोग प्रारम्भ किया,[22] लेकिन नवंबर 2011 में इसका उपयोग बंद कर दिया।[23]
- कैनाल+ ओवरसीज़ में अंतर्राष्ट्रीय ऑन-डिमांड प्लेटफ़ॉर्म के लिए है।
- प्रोटोग्रिड, उनके तीव्र अनुप्रयोग विकास प्रारूप के लिए स्टोरेज बैक-एंड के रूप में है।[24]
डेटा मेनिपुलेशन: डॉक्यूमेंट और व्यूस
काउचडीबी जेसन डाक्यूमेंट्स के संग्रह का प्रबंधन करता है। दस्तावेज़ों को विचारों के माध्यम से व्यवस्थित किया जाता है। व्यूस को समग्र फ़ंक्शंस के साथ परिभाषित किया गया है और फ़िल्टर की गणना समानांतर में की जाती है, बिल्कुल MapReduce की तरह है।
व्यू सामान्यतः डेटाबेस में संग्रहीत होते हैं और उनकी अनुक्रमणिकाएँ लगातार अद्यतन होती रहती हैं। काउचडीबी बाहरी सॉकेट सर्वर और जेसन-आधारित प्रोटोकॉल का उपयोग करके एक व्यू सिस्टम का समर्थन करता है।[25] परिणामस्वरूप, व्यू सर्वर विभिन्न भाषाओं में विकसित किए गए हैं (जावास्क्रिप्ट डिफ़ॉल्ट है, लेकिन पीएचपी, रूबी, पायथन और एर्लैंग भी हैं)।
एचटीटीपी के माध्यम से डेटा एक्सेस करना
एप्लिकेशन एचटीटीपी के माध्यम से काउचडीबी के साथ इंटरैक्ट करते हैं। निम्नलिखित कमांड-लाइन उपयोगिता cURL का उपयोग करके कुछ उदाहरण प्रदर्शित करता है। ये उदाहरण मानते हैं कि काउचडीबी पोर्ट 5984 पर लोकल होस्ट (127.0.0.1) पर चल रहा है।
कार्य | रिक्वेस्ट | रिस्पांस |
---|---|---|
सर्वर जानकारी तक पहुंच |
curl http://127.0.0.1:5984/ |
{ "couchdb": "Welcome", "version":"1.1.0" } |
विकि नाम का डेटाबेस बनाना |
curl -X PUT http://127.0.0.1:5984/wiki |
{"ok": true} |
विकि नाम से दूसरा डेटाबेस बनाने का प्रयास किया जा रहा है |
curl -X PUT http://127.0.0.1:5984/wiki |
{ "error":"file_exists", "reason":"The database could not be created, the file already exists." } |
विकी डेटाबेस के बारे में जानकारी प्राप्त करें |
curl http://127.0.0.1:5984/wiki |
{ "db_name": "wiki", "doc_count": 0, "doc_del_count": 0, "update_seq": 0, "purge_seq": 0, "compact_running": false, "disk_size": 79, "instance_start_time": "1272453873691070", "disk_format_version": 5 } |
डेटाबेस विकी को हटाएँ |
curl -X DELETE http://127.0.0.1:5984/wiki |
{"ok": true} |
एक डॉक्यूमेंट बनाएँ, काउचडीबी से डॉक्यूमेंटआईडी प्रदान करने के लिए कहें |
curl -X POST -H "Content-Type: application/json" --data \ '{ "text" : "Wikipedia on couchdb", "rating": 5 }' \ http://127.0.0.1:5984/wiki |
{ "ok": true, "id": "123BAC", "rev": "946B7D1C" } |
डेटाबेस की सूची प्राप्त करें |
curl http://127.0.0.1:5984/_all_dbs |
["_replicator","_users","wiki"] |
ओपन सोर्स घटक
काउचडीबी में इसके डिफ़ॉल्ट पैकेज के हिस्से के रूप में कई अन्य ओपन सोर्स प्रोजेक्ट सम्मिलित हैं।
अवयव | विवरण | लाइसेंस |
---|---|---|
एरलांग | एर्लैंग एक सामान्य प्रयोजन वाली समवर्ती प्रोग्रामिंग भाषा और रनटाइम प्रणाली है। एर्लैंग का अनुक्रमिक उपसमुच्चय सख्त मूल्यांकन , एकल असाइनमेंट और गतिशील टाइपिंग के साथ एक कार्यात्मक भाषा है। | अपाचे 2.0 (रिलीज़ 18.0 और बाद में)
एर्लांग पब्लिक लाइसेंस (पहले रिलीज़) |
आईसीयू | यूनिकोड के लिए अंतर्राष्ट्रीय घटक (आईसीयू) यूनिकोड समर्थन, सॉफ्टवेयर अंतर्राष्ट्रीयकरण और सॉफ्टवेयर वैश्वीकरण के लिए परिपक्व C / C++ और जावा लाइब्रेरी का एक ओपन-सोर्स प्रोजेक्ट है। | यूनिकोड लाइसेंस |
जेक्वेरी | जेक्वेरी साधारण क्रॉस-ब्राउज़र जावास्क्रिप्ट लाइब्रेरी है जो जावास्क्रिप्ट और एचटीएमएल के बीच इंटरैक्शन पर जोर देती है। | एमआईटी लाइसेंस |
ओपनएसएसएल | ओपनएसएसएल एसएसएल और टीएलएस प्रोटोकॉल का ओपन-सोर्स कार्यान्वयन है। कोर लाइब्रेरी ( C प्रोग्रामिंग भाषा में लिखी गई ) बुनियादी क्रिप्टोग्राफ़िक फ़ंक्शंस को कार्यान्वित करती है और विभिन्न उपयोगिता फ़ंक्शंस प्रदान करती है। | अपाचे 1.0 और चार खंड वाला बीएसडी लाइसेंस |
स्पाइडरमंकी | स्पाइडरमंकी मोज़िला फाउंडेशन द्वारा संचालित परफॉर्मेंट जावास्क्रिप्ट इंजन है । इसमें दुभाषिया , जेआईटी कंपाइलर और गार्बेज संग्रहकर्ता सम्मिलित है। | एमपीएल 2.0 |
यह भी देखें
- डॉक्यूमेंट-ओरिएंटेड डेटाबेस
- एक्सएमएल डेटाबेस
संदर्भ
- ↑ Apache Software Foundation. "अपाचे काउचडीबी". Retrieved 15 April 2012.
- ↑ Smith, Jason. "What is the CouchDB replication protocol? Is it like Git?". StackOverflow. Stack Exchange. Retrieved 14 April 2012.
- ↑ "काउचडीबी की खोज". Developer Works. IBM. March 31, 2009. Retrieved September 30, 2016.
- ↑ Apache mailing list announcement on mail-archives.apache.org
- ↑ Re: Proposed Resolution: Establish CouchDB TLP on mail-archives.apache.org
- ↑ "CouchDB NoSQL Database Ready for Production Use", article from PC World of July 2010
- ↑ Katz, Damien. "CouchDB का भविष्य". Retrieved 15 April 2012.
- ↑ Slater, Noah. "बिगकाउच में आपका स्वागत है". Retrieved 25 July 2013.
- ↑ "'2.0'". 20 September 2016. Retrieved 13 January 2017.
- ↑ CouchDB, Technical Overview Archived October 20, 2011, at the Wayback Machine
- ↑ "काउचडीबी-फॉक्सटन". GitHub. apache. Retrieved 2 May 2023.
- ↑ Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase comparison from Kristóf Kovács
- ↑ "लार्ज हैड्रॉन कोलाइडर वैज्ञानिक CouchDB का उपयोग क्यों कर रहे हैं?". ReadWrite (in English). 2010-08-26. Retrieved 2022-03-29.
- ↑ iDAT, Red Cross Code, 2021-07-31, retrieved 2022-03-29
- ↑ "डेटाबेस-डीप-डाइव्स-काउचडीबी". www.ibm.com (in English). Retrieved 2022-03-29.
- ↑ "डेटाबेस-डीप-डाइव्स-काउचडीबी". www.ibm.com (in English). Retrieved 2022-03-29.
- ↑ "United Airlines Streamlines Operations With Couchbase | Case Study". www.couchbase.com. Retrieved 2022-03-29.
- ↑ "CouchDB in the wild" Archived 2017-07-20 at the Wayback Machine article of the product's Web, a list of software projects and websites using CouchDB
- ↑ Cutler, Kim-Mai (9 June 2012). "Meebo Gets The Classic Google Acq-hire Treatment: Most Products To Shut Down Soon". TechCrunch. AOL Inc. Retrieved 7 January 2016.
- ↑ "एनपीएम-रजिस्ट्री-काउचएप". GitHub. npm. 17 June 2015. Retrieved 7 January 2016.
- ↑ CouchDB at the BBC as a fault tolerant, scalable, multi-data center key-value store
- ↑ Email from Elliot Murphy (Canonical) Archived 2011-05-05 at the Wayback Machine to the CouchDB-Devel list
- ↑ Canonical Drops CouchDB From Ubuntu One (Slashdot)
- ↑ "Protogrid - Über uns".
- ↑ View Server Documentation Archived 2008-10-20 at the Wayback Machine on wiki.apache.org
ग्रन्थसूची
- Anderson, J. Chris; Slater, Noah; Lehnardt, Jan (November 15, 2009), CouchDB: The Definitive Guide (1st ed.), O'Reilly Media, p. 300, ISBN 978-0-596-15816-3
- Lennon, Joe (December 15, 2009), Beginning CouchDB (1st ed.), Apress, p. 300, ISBN 978-1-4302-7237-3, archived from the original on December 5, 2010, retrieved November 1, 2009
- Holt, Bradley (March 7, 2011), Writing and Querying MapReduce Views in CouchDB (1st ed.), O'Reilly Media, p. 76, ISBN 978-1-4493-0312-9
- Holt, Bradley (April 11, 2011), Scaling CouchDB (1st ed.), O'Reilly Media, p. 72, ISBN 978-1-4493-0343-3
- Brown, MC (October 31, 2011), Getting Started with CouchDB (1st ed.), O'Reilly Media, p. 50, ISBN 978-1-4493-0755-4
- Thompson, Mick (August 2, 2011), Getting Started with GEO, CouchDB, and Node.js (1st ed.), O'Reilly Media, p. 64, ISBN 978-1-4493-0752-3
बाहरी संबंध
- Official website
- काउचडीबी: The Definitive Guide
- Complete HTTP API Reference
- Simple PHP5 library to communicate with काउचडीबी
- Asynchronous काउचडीबी client for Java
- Asynchronous काउचडीबी client for Scala
- Lehnardt, Jan (2008). "Couch DB at 10,000 feet". Erlang eXchange 2008. Archived from the original on 9 November 2012. Retrieved 15 April 2012.
- Lenhardt, Jan (2009). "CouchDB for Erlang Developers". Erlang Factory London 2009. Archived from the original on 19 June 2011. Retrieved 15 April 2012.
- Katz, Damien (January 2009). "CouchDB and Me". RubyFringe. InfoQ. Archived from the original on 27 April 2011. Retrieved 15 April 2012.