नोएसक्यूएल: Difference between revisions
No edit summary |
No edit summary |
||
(9 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{short description|Database class for storage and retrieval of modeled data}} | {{short description|Database class for storage and retrieval of modeled data}} | ||
इस दृष्टिकोण के लिए | |||
उपलब्धता, विभाजन | '''''नोएसक्यूएल (गैर-संरचित प्रश्न भाषा)''''' (मूल रूप से 'गैर-एसक्यूएल<nowiki>''</nowiki> या <nowiki>''</nowiki>गैर-संबंधपरक<nowiki>''</nowiki>)<ref>http://nosql-database.org/ "NoSQL DEFINITION: Next Generation Databases mostly addressing some of the points : being non-relational, distributed, open-source and horizontally scalable".</ref> डाटाबेस [[कंप्यूटर डेटा भंडारण]] और डेटा की पुनर्प्राप्ति के लिए एक तंत्र प्रदान करता है जो संबंधपरक [[डेटाबेस]] में उपयोग किए जाने वाले सारणीबद्ध संबंधों के अतिरिक्त अन्य तरीकों से तैयार किया जाता है। इस [[संबंध का डेटाबेस]] 1960 के दशक के अंत से स्थिति में हैं, लेकिन गैर-संरचित प्रश्न भाषा नाम केवल 21 वीं सदी के प्रारंभ में ही बनाया गया था,{{r|leavitt}} वेब 2.0 कंपनियों की आवश्यकताओ के कारण प्रारंभ हुआ।<ref>{{cite conference |title=History Repeats Itself: Sensible and NonsenSQL Aspects of the NoSQL Hoopla |first=C. |last=Mohan |conference=Proc. 16th Int'l Conf. on Extending Database Technology |year=2013 |url=http://openproceedings.eu/2013/conf/edbt/Mohan13.pdf}}</ref><ref>{{cite web |url=https://www.wired.com/2012/01/amazon-dynamodb/ |title=Amazon 'NoSQL' डेटाबेस के साथ भविष्य में वापस जाता है|publisher=WIRED |date=2012-01-19 |access-date=2017-03-06}}</ref> बड़े डेटा और [[रीयल-टाइम वेब|वास्तविक समय वेब]] एप्लीकेशन में गैर-संरचित प्रश्न भाषा डाटाबेस का तेजी से उपयोग किया जा रहा है।<ref>{{cite web |url= http://db-engines.com/en/blog_post/23 |title= RDBMS डेटाबेस बाजार पर हावी है, लेकिन NoSQL सिस्टम पकड़ बना रहा है|publisher= DB-Engines.com |date= 21 November 2013 |access-date= 24 November 2013 }}</ref> गैर-संरचित प्रश्न भाषा प्रणाली को कभी-कभी न केवल संरचित प्रश्न भाषा कहा जाता है ताकि प्रमुखता दी जा सके कि वे संरचित प्रश्न भाषा जैसी प्रश्न भाषाओं का समर्थन कर सकते हैं या बहुभाषाविद-स्थायी संरचना में संरचित प्रश्न भाषा डेटाबेस के साथ सम्मिलि हो सके।<ref>{{cite web |url=http://searchdatamanagement.techtarget.com/definition/NoSQL-Not-Only-SQL |title=NoSQL (केवल SQL नहीं)|quote=NoSQL database, also called Not Only SQL}}</ref><ref>{{cite web | url = http://martinfowler.com/bliki/NosqlDefinition.html | title = NosqlDefinition| first = Martin | last = Fowler | author-link = Martin Fowler (software engineer) | quote = many advocates of NoSQL say that it does not mean a "no" to SQL, rather it means Not Only SQL }}</ref> | ||
इस दृष्टिकोण के लिए प्रेरणाओं में डिजाइन की सरलता, मशीनों के समूहों के लिए सरल "क्षैतिज" स्केलिंग सम्मिलित हैं (जो संबंधपरक डेटाबेस के लिए एक समस्या है),<ref name="leavitt">{{cite journal |first=Neal |last=Leavitt |title=Will NoSQL Databases Live Up to Their Promise? |journal=[[IEEE Computer]] |year=2010 |volume=43 |issue=2 |pages=12–14 |doi=10.1109/MC.2010.58 |s2cid=26876882 |url=http://www.leavcom.com/pdf/NoSQL.pdf}}</ref> [[उपलब्धता]] पर अधिकतम नियंत्रण और [[वस्तु-संबंधपरक प्रतिबाधा बेमेल]] को सीमित करना।<ref>NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley Educational Publishers Inc, 2009, {{ISBN|978-0321826626}}.</ref> गैर-संरचित प्रश्न भाषा डेटाबेस द्वारा उपयोग की जाने वाली डेटा संरचनाएँ (जैसे कुंजी-मान युग्म, विस्तृत स्तंभ, ग्राफ़, या दस्तावेज़) संबंधपरक डेटाबेस में डिफ़ॉल्ट रूप से उपयोग किए जाने वाले से अलग हैं, जिससे गैर-संरचित प्रश्न भाषा में कुछ संचालन तीव्र हो जाते हैं। किसी दिए गए गैर-संरचित प्रश्न भाषा डेटाबेस की विशेष उपयुक्तता उस समस्या पर निर्भर करती है जिसे उसे संशोधित करना चाहिए। कभी-कभी गैर-संरचित प्रश्न भाषा डेटाबेस द्वारा उपयोग की जाने वाली डेटा संरचना को संबंधपरक डेटाबेस टेबल की तुलना में अधिक नम्य माना जाता है।<ref>{{cite web |last=Vogels |first=Werner |url=http://www.allthingsdistributed.com/2012/01/amazon-dynamodb.html |title=Amazon DynamoDB – a Fast and Scalable NoSQL Database Service Designed for Internet Scale Applications |publisher=All Things Distributed |date=2012-01-18 |access-date=2017-03-06}}</ref> | |||
उपलब्धता, विभाजन सहिष्णुता और संचार के पक्ष में कई गैर-संरचित प्रश्न भाषा संग्रहण सहमति स्थिरता (संगति, उपलब्धता और विभाजन सहिष्णुता प्रमेय के अर्थ में) को संग्रहीत करता है। गैर-संरचित प्रश्न भाषा संग्रहण के अधिक से अधिक स्वीकृत करने के लिए नियंत्रण में निम्न-स्तरीय प्रश्न भाषाओं (उदाहरण के लिए संरचित प्रश्न भाषा के अतिरिक्त) का उपयोग सम्मिलित है, तालिकाओं में तदर्थ प्रदर्शन करने की क्षमता की कमी, मानकीकृत इंटरफेस की कमी, और बड़े पिछले निवेश सम्मिलित संबंधपरक डेटाबेस सम्मिलित है।<ref>{{cite web | |||
| url = http://www.journalofcloudcomputing.com/content/pdf/2192-113X-2-22.pdf | | url = http://www.journalofcloudcomputing.com/content/pdf/2192-113X-2-22.pdf | ||
| title = Data management in cloud environments: NoSQL and NewSQL data stores | | title = Data management in cloud environments: NoSQL and NewSQL data stores | ||
Line 10: | Line 14: | ||
| publisher = Aira, Springer | | publisher = Aira, Springer | ||
| access-date = 8 January 2014 | | access-date = 8 January 2014 | ||
}}</ref> अधिकांश | }}</ref> अधिकांश गैर-संरचित प्रश्न भाषा संग्रहण्स में यथार्थ परमाणुता, स्थिरता, वियोजन और स्थायित्व विनिमय की कमी है, हालांकि कुछ डेटाबेस ने उन्हें अपने डिजाइनों के लिए केंद्रीय बना दिया है। | ||
इसके अतिरिक्त, अधिकांश गैर-संरचित प्रश्न भाषा डेटाबेस [[अंतिम स्थिरता]] की अवधारणा प्रदान करते हैं, जिसमें डेटाबेस परिवर्तन अंततः (सामान्य रूप से मिलीसेकंड के अंदर) सभी नोड्स के लिए प्रचारित होते हैं, इसलिए डेटा के लिए प्रश्नज़ अपडेट किए गए डेटा को तुरंत वापस नहीं कर सकती हैं या डेटा को पढ़ने में परिणाम हो सकता है जो परिशुद्ध समस्या नहीं है जिसे स्टाल पठन के रूप में जाना जाता है।<ref>{{cite web |url=https://aphyr.com/posts/322-call-me-maybe-mongodb-stale-reads |title=Jepsen: MongoDB stale reads |website=Aphyr.com |date=2015-04-20 |access-date=2017-03-06}}</ref> इसके अतिरिक्त, कुछ गैर-संरचित प्रश्न भाषा प्रणाली नष्ट हुए लेखन और [[डेटा हानि]] के अन्य रूपों को प्रदर्शित कर सकते हैं।<ref>{{cite web |url=http://www.slideshare.net/MartinZapletal/zapletal-martinlargevolumedataanalytics |title=टाइपसेफ रिएक्टिव प्लेटफॉर्म पर बड़ी मात्रा में डेटा विश्लेषण|website=Slideshare.net |access-date=2017-03-06}}</ref> कुछ गैर-संरचित प्रश्न भाषा प्रणाली डेटा हानि से बचने के लिए [[राइट-फॉरवर्ड लॉगिंग]] जैसी अवधारणाएँ प्रदान करते हैं।<ref>{{cite web |last=Fowler |first=Adam |url=http://www.dummies.com/how-to/content/10-nosql-misconceptions.html |title=10 NoSQL गलतफहमी|website=Dummies.com |access-date=2017-03-06}}</ref> कई डेटाबेस में [[वितरित लेनदेन प्रसंस्करण|वितरित विनिमय प्रसंस्करण]] के लिए, डेटा स्थिरता एक बड़ी चुनौती है जो गैर-संरचित प्रश्न भाषा और संबंधपरक डेटाबेस दोनों के लिए कठिन है। संबंधपरक डेटाबेस डेटाबेस को विस्तृत करने के लिए संदर्भित पूर्णता नियंत्रण की स्वीकृति नहीं देते हैं।<ref>{{cite web |url=https://iggyfernandez.wordpress.com/2013/07/28/no-to-sql-and-no-to-nosql/ |title=No! to SQL and No! to NoSQL | So Many Oracle Manuals, So Little Time |website=Iggyfernandez.wordpress.com |access-date=2017-03-06}}</ref> वितरितविनिमय प्रसंस्करण के लिए कुछ प्रणाली परमाणुता, स्थिरता, वियोजन और स्थायित्व विनिमय और एक्स/ओपन एक्सए मानकों दोनों को बनाए रखते हैं।<ref>{{cite web |url=http://databases.about.com/od/specificproducts/a/acid.htm |title=एसिड मॉडल|last=Chapple |first=Mike |website=about.com}}</ref> इंटरएक्टिव संबंधपरक डेटाबेस एक सामान्य विशेषता के रूप में गठनात्मक प्रसारण विश्लेषण तकनीकों को साझा करते हैं।<ref>{{cite book |last1=Fiore |first1=S. |title=ग्रिड और क्लाउड डेटाबेस प्रबंधन|year=2011 |publisher=Springer Science & Business Media |page=210}}</ref> सिमेंटिक वर्चुअलाइजेशन प्रोटोकॉल का उपयोग करके इंटरफ़ेस परिवेश के अंदर की सीमाओं को दूर किया जाता है, जैसे कि गैर-संरचित प्रश्न भाषा सेवाएं अधिकांश ऑपरेटिंग सिस्टमों के लिए सक्षम हैं।<ref>{{cite journal |last1=Lawrence |first1=MySQL और MongoDB सहित रिलेशनल SQL और NoSQL सिस्टम का एकीकरण और वर्चुअलाइजेशन|title=MySQL और MongoDB सहित रिलेशनल SQL और NoSQL सिस्टम का एकीकरण और वर्चुअलाइजेशन|journal=International Conference on Computational Science and Computational Intelligence 1 |year=2014}}</ref> | |||
== इतिहास == | == इतिहास == | ||
गैर-संरचित प्रश्न भाषा शब्द का उपयोग 1998 में कार्लो स्ट्रोज़ी द्वारा अपने सामान्य स्ट्रोज़ी गैर-संरचित प्रश्न भाषा मुक्त स्त्रोत संबंधपरक डेटाबेस के नाम के लिए किया गया था, जो मानक संरचित प्रश्न भाषा (संरचित प्रश्न भाषा) इंटरफ़ेस को प्रकट नहीं करता था, लेकिन फिर भी संबंधपरक था।<ref name=":0">{{cite web | |||
| url = http://publications.lib.chalmers.se/records/fulltext/123839.pdf | | url = http://publications.lib.chalmers.se/records/fulltext/123839.pdf | ||
| title = Investigating storage solutions for large data: A comparison of well performing and scalable data storage solutions for real time extraction and batch insertion of data | | title = Investigating storage solutions for large data: A comparison of well performing and scalable data storage solutions for real time extraction and batch insertion of data | ||
Line 28: | Line 33: | ||
| access-date = 12 May 2011 | | access-date = 12 May 2011 | ||
| quote = Carlo Strozzi first used the term NoSQL in 1998 as a name for his open source relational database that did not offer a SQL interface[...] | | quote = Carlo Strozzi first used the term NoSQL in 1998 as a name for his open source relational database that did not offer a SQL interface[...] | ||
}}</ref> उनका | }}</ref> उनका गैर-संरचित प्रश्न भाषा संबंधपरक डेटाबेस प्रबंधन प्रणाली लगभग 2009 के गैर-संरचित प्रश्न भाषा डेटाबेस की सामान्य अवधारणा से अलग है। स्ट्रोज़ी का सुझाव है कि, क्योंकि वर्तमान गैर-संरचित प्रश्न भाषा गतिविधि संबंधपरक मॉडल से पूरी तरह से अलग हो जाता है, इसलिए इसे" संबंधपरक नहीं "का संदर्भ देते हुए, इसे अधिक उपयुक्त रूप से 'गैर-अधिकारों की अभिव्यक्ति भाषा' कहा जाना चाहिए।<ref>{{cite web |url=http://www.strozzi.it/cgi-bin/CSA/tw7/I/en_US/nosql/Home%20Page |title=NoSQL Relational Database Management System: Home Page |publisher=Strozzi.it |date=2 October 2007 |access-date=29 March 2010}}</ref> | ||
जोहान ऑस्करसन, जो उस समय Last.fm के एक डेवलपर थे, ने 2009 के प्रारंभ में गैर-संरचित प्रश्न भाषा शब्द को फिर से प्रस्तुत किया जब उन्होंने मुक्त स्त्रोत वितरित, गैर-संबंधपरक डेटाबेस पर चर्चा करने के लिए एक प्रोग्राम आयोजित किया।<ref>{{cite web |url= http://blog.sym-link.com/2009/05/12/nosql_2009.html |title= NoSQL 2009 |publisher= Blog.sym-link.com |date= 12 May 2009 |access-date= 29 March 2010 |archive-url= https://web.archive.org/web/20110716174012/http://blog.sym-link.com/2009/05/12/nosql_2009.html |archive-date= 16 July 2011 |url-status= dead }}</ref> नाम ने गैर-संबंधपरक, वितरित डेटा संग्रहणों की बढ़ती संख्या के प्रदर्शन को लेबल करने का प्रयास किया, जिसमें गूगल के [[ बड़ी मेज |बिगटेबल]] /मैपरेडस और अमेज़ॅन के [[अमेज़न डायनेमो डीबी|अमेज़न डायनेमोडीबी]] के मुक्त-स्त्रोत क्लोन सम्मिलित हैं। | |||
== प्रकार और उदाहरण == | == प्रकार और उदाहरण == | ||
गैर-संरचित प्रश्न भाषा डेटाबेस को वर्गीकृत करने के विभिन्न तरीके हैं, विभिन्न श्रेणियों और उपश्रेणियों के साथ, जिनमें से कुछ ओवरलैप (अतिव्याप्त) हैं। उदाहरण के साथ, डेटा मॉडल द्वारा गैर-विस्तृत वर्गीकरण क्या है:<ref>{{cite web|last1=Strauch|first1=Christof|title=नोएसक्यूएल डेटाबेस|url=http://www.christof-strauch.de/nosqldbs.pdf|access-date=2017-08-27|pages=23–24}}</ref> | |||
{| style="text-align: left;" class="wikitable sortable" | {| style="text-align: left;" class="wikitable sortable" | ||
|- | |- | ||
! | ! प्रकार !! इस प्रकार के उल्लेखनीय उदाहरण | ||
|- | |- | ||
| | | कुंजी–मान कैश || अपाचे इग्नाइट, काउचबेस, कोहरेंस, एक्सट्रीम स्केल, हेज़ेलकास्ट, इन्फिनिसन, मेमकेच्ड, रेडिस, वेलोसिटी | ||
|- | |- | ||
| [[Key–value database| | | [[Key–value database|कुंजी–मान संग्रह]]|| अज्यूर कॉसमॉस डीबी, अरंगोडीबी, अमेज़न डायनेमो डीबी, एयरोस्पाइक, काउचबेस, स्काइलाडीबी | ||
|- | |- | ||
| | | कुंजी–मान संग्रह (अंततः संगत) || एज़्योर कॉस्मॉस डीबी, ओरेकल, गैर-संचरित प्रश्न भाषा डेटाबेस, रिपल, वोल्डेमॉर्ट | ||
|- | |- | ||
| | | कुंजी–मान संग्रह (आदिष्ट) || फाउंडेशनडीबी, इन्फिनिटीडीबी, एलएमडीबी, मेमकेचेडीबी | ||
|- | |- | ||
| | | टपल भंडार || अपाचे रिवर, गीगास्पेस, टारेंटूल, टिब्को एक्टिवस्पेसेस, ओपनलिंक, वर्ट्युओसो | ||
|- | |- | ||
|[[Triplestore]] | |[[Triplestore|ट्रिपलसंग्रह]] | ||
| | |एलेग्रोग्राफ, मार्कलॉजिक, ओंटोटेक्स्ट-ओडब्लूलिम, डेटाबेस, ओरेकल, गैर-संचरित प्रश्न भाषा, प्रोफियम सेंस, वर्चुसो यूनिवर्सल सर्वर | ||
|- | |- | ||
| [[Object database]]|| | | [[Object database|ऑब्जेक्ट डेटाबेस]]|| ऑब्जेक्टिविटी/डीबी, पर्स्ट, ज़ोपडीबी, डीबी4ओ, जेमस्टोन/एस, इंटरसिस्टम कैश, जेएडीई, ऑब्जेक्टडेटाबेस++, ऑब्जेक्टडीबी, ऑब्जेक्टस्टोर, ओडाबा, रियल्म, ओपनलिंक वर्चुओसो, वर्सेंट ऑब्जेक्ट डेटाबेस, जेडओडीबी | ||
|- | |- | ||
| [[Document-oriented database| | | [[Document-oriented database|दस्तावेज़ भंडार]] || एज़्योर कॉसमॉस डीबी, अरंगोडीबी, बेसएक्स, क्लस्टरपॉइंट, काउचबेस, काउचडीबी, डॉक्यूमेंटडीबी, इग्ज़िस्ट-डीबी, आईबीएम डोमिनोज़, मार्कलॉजिक, मोंगोडीबी, रेवेनडीबी, क्यूज़ेक्स, रीथिंकडीबी, इलास्टिक्ससर्च, ओरिएंटडीबी | ||
|- | |- | ||
| [[Wide column store| | | [[Wide column store|वाइड कॉलम संग्रह]] || एज़्योर कॉसमॉस डीबी, अमेज़ॅन डायनेमोडीबी, बिगटेबल, कैसेंड्रा, गूगल क्लाउड डेटास्टोर, एचबेस, हाइपरटेबल, स्काइलाडीबी | ||
|- | |- | ||
| | | मूल बहु-मॉडल डेटाबेस || अरंगोडीबी, एज़्योर कॉसमॉस डीबी, ओरिएंटडीबी, मार्कलॉजिक, अपाचे इग्नाइट,<ref>https://apacheignite.readme.io/docs Ignite Documentation</ref><ref>https://www.infoworld.com/article/3135070/data-center/fire-up-big-data-processing-with-apache-ignite.html fire-up-big-data-processing-with-apache-ignite</ref> काउचबेस, फाउंडेशनडीबी, ओरेकल डेटाबेस | ||
|- | |- | ||
|[[Graph database]] | |[[Graph database|ग्राफ डेटाबेस]] | ||
| | |एज़्योर कॉस्मॉस डीबी, एलेग्रोग्राफ, अरंगोडीबी, अनंतग्राफ, अपाचे जिराफ, मार्कलॉजिक,नियो4जे, ओरिएंटडीबी, वर्चुओसो | ||
|- | |- | ||
|[[MultiValue| | |[[MultiValue|बहु-मान डेटाबेस]] | ||
| | |डी3 पिक डेटाबेस, एक्स्टेंसिबल स्टोरेज इंजन (ईएसई/एनटी), इनफिनिटीडीबी, इंटरसिस्टम कैश, जेबीएएस पिक डेटाबेस, एमवीबेस रॉकेट सॉफ्टवेयर, एमवीएंटरप्राइज रॉकेट सॉफ्टवेयर, नॉर्थगेट इंफॉर्मेशन सॉल्यूशंस रियलिटी (मूल पिक/एमवी डेटाबेस), ओपनक्यूएम, रेवलेशन सॉफ्टवेयर का ओपनइनसाइट (विंडोज़) ) और एडवांस्ड रेवेलेशन (डिस्क ऑपरेटिंग सिस्टम), यूनीडाटा रॉकेट यू2, यूनिवर्स रॉकेट यू2 | ||
|} | |} | ||
=== | === कुंजी-मान संग्रहण === | ||
{{main| | {{main|कुंजी-मान संग्रहण}} | ||
कुंजी-मान (केवी) संग्रहण अपने मौलिक डेटा मॉडल के रूप में [[साहचर्य सरणी]] (जिसे मानचित्र या शब्दकोश भी कहा जाता है) का उपयोग करते हैं। इस मॉडल में, डेटा को कुंजी-मान पेयर के संग्रह के रूप में दर्शाया जाता है, जैसे कि संग्रह में प्रत्येक संभावित कुंजी एक बार में दिखाई देती है।<ref>{{cite web |author=Sandy |date=14 January 2011 |title=मुख्य मूल्य भंडार और NoSQL गतिविधि|url=http://dba.stackexchange.com/a/619 |access-date=1 January 2012 |publisher=Stackexchange |quote=Key–value stores allow the application developer to store schema-less data. This data usually consists of a string that represents the key, and the actual data that is considered the value in the "key–value" relationship. The data itself is usually some kind of primitive of the programming language (a string, an integer, or an array) or an object that is being marshaled by the programming language's bindings to the key-value store. This structure replaces the need for a fixed data model and allows proper formatting.}}</ref><ref>{{cite web | |||
| access-date =1 January 2012 | | access-date =1 January 2012 | ||
| publisher = Marc Seeger | | publisher = Marc Seeger | ||
Line 77: | Line 83: | ||
| url = http://blog.marc-seeger.de/assets/papers/Ultra_Large_Sites_SS09-Seeger_Key_Value_Stores.pdf | | url = http://blog.marc-seeger.de/assets/papers/Ultra_Large_Sites_SS09-Seeger_Key_Value_Stores.pdf | ||
| quote = Key–value stores provide a high-performance alternative to relational database systems with respect to storing and accessing data. This paper provides a short overview of some of the currently available key–value stores and their interface to the Ruby programming language.}}</ref> | | quote = Key–value stores provide a high-performance alternative to relational database systems with respect to storing and accessing data. This paper provides a short overview of some of the currently available key–value stores and their interface to the Ruby programming language.}}</ref> | ||
कुंजी-मान मॉडल सबसे सरल गैर-सामान्य डेटा मॉडल में से एक है, और समृद्ध डेटा मॉडल प्रायः इसके विस्तार के रूप में प्रयुक्त किए जाते हैं। कुंजी-मान मॉडल को विवेकपूर्ण रूप से आदेशित किए गए मॉडल तक बढ़ाया जा सकता है जो [[लेक्सिकोग्राफिक ऑर्डर|लेक्सिकोग्राफिक ( शब्दकोशीय संबंधी) क्रम]] में कुंजियों को बनाए रखता है। यह विस्तार संगणात्मक रूप से शक्तिशाली है, जिसमें यह चयनात्मक प्रमुख श्रेणियों को कुशलतापूर्वक पुनः प्राप्त कर सकता है।<ref>{{cite web | |||
| access-date =8 May 2014 | | access-date =8 May 2014 | ||
| publisher = Ilya Katsov | | publisher = Ilya Katsov | ||
Line 84: | Line 91: | ||
| date = 1 March 2012 | | date = 1 March 2012 | ||
| url = http://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/}}</ref> | | url = http://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/}}</ref> | ||
कुंजी-मान संग्रहण अंतिम स्थिरता से क्रमिकता तक [[निरंतरता मॉडल]] का उपयोग कर सकते हैं। कुछ डेटाबेस कुंजियों के क्रम का समर्थन करते हैं। विभिन्न हार्डवेयर कार्यान्वयन हैं, और कुछ उपयोगकर्ता मेमोरी (रेंडम एक्सेस मेमोरी) में डेटा संग्रहण करते हैं, जब अन्य [[ठोस राज्य ड्राइव|ठोस अवस्था ड्राइव]] (एसएसडी) या [[हार्ड डिस्क ड्राइव]] (उर्फ हार्ड डिस्क ड्राइव (एचडीडी)) पर संग्रहीत किया जाता है। | |||
=== दस्तावेज़ संग्रहण === | === दस्तावेज़ संग्रहण === | ||
{{main| | {{main|दस्तावेज़ उन्मुख डेटाबेस और एक्सएमएल डेटाबेस}} | ||
दस्तावेज़ संग्रहण की केंद्रीय अवधारणा दस्तावेज़ की है। जबकि इस परिभाषा के विवरण दस्तावेज़-उन्मुख डेटाबेस के बीच भिन्न होते हैं, वे सभी मानते हैं कि दस्तावेज़ कुछ मानक स्वरूपों या एन्कोडिंग में डेटा (या सूचना) को | |||
दस्तावेज़ संग्रहण की केंद्रीय अवधारणा दस्तावेज़ की है। जबकि इस परिभाषा के विवरण दस्तावेज़-उन्मुख डेटाबेस के बीच भिन्न होते हैं, वे सभी मानते हैं कि दस्तावेज़ कुछ मानक स्वरूपों या एन्कोडिंग में डेटा (या सूचना) को कैप्सुलन और एनकोड करते हैं। उपयोग में आने वाले एन्कोडिंग में एक्सएमएल, वाईएएमएल, और जेएसओएन और बीएसओएन जैसे बाइनरी प्रारूप सम्मिलित हैं। दस्तावेज़ों को डेटाबेस में एक अद्वितीय कुंजी के माध्यम से संबोधित किया जाता है जो उस दस्तावेज़ का प्रतिनिधित्व करता है। दस्तावेज़-उन्मुख डेटाबेस की एक अन्य परिभाषित विशेषता उनकी सामग्री के आधार पर दस्तावेज़ों को पुनः प्राप्त करने के लिए एक एप्लीकेशन प्रोग्रामिंग इंटरफेस या प्रश्न भाषा है। | |||
अलग-अलग कार्यान्वयन दस्तावेज़ों को व्यवस्थित करने और/या समूहीकृत करने के अलग-अलग तरीके प्रदान करते हैं: | अलग-अलग कार्यान्वयन दस्तावेज़ों को व्यवस्थित करने और/या समूहीकृत करने के अलग-अलग तरीके प्रदान करते हैं: | ||
* संग्रह | * संग्रह | ||
* टैग | * टैग | ||
* गैर- | * गैर-दृश्यमान मेटाडेटा | ||
* निर्देशिका पदानुक्रम | * निर्देशिका पदानुक्रम | ||
संबंधपरक डेटाबेस की तुलना में, संग्रह को तालिकाओं के अनुरूप माना जा सकता | संबंधपरक डेटाबेस की तुलना में, संग्रह को तालिकाओं और अभिलेखों के अनुरूप दस्तावेज़ के अनुरूप माना जा सकता है। लेकिन वे भिन्न हैं: तालिका में प्रत्येक रिकॉर्ड में क्षेत्र का समान क्रम होता है, जबकि संग्रह में दस्तावेज़ों में क्षेत्र पूरी तरह से अलग हो सकते हैं। | ||
=== ग्राफ === | === ग्राफ === | ||
{{main| | {{main|ग्राफ डेटाबेस}} | ||
ग्राफ़ डेटाबेस डेटा के लिए डिज़ाइन किए गए हैं जिनके संबंधों को एक ग्राफ़ (असतत गणित) के रूप में अच्छी तरह से दर्शाया गया है जिसमें संबंधों की एक सीमित संख्या से जुड़े तत्व सम्मिलित हैं। डेटा के उदाहरणों में सामाजिक संबंध, सार्वजनिक परिवहन लिंक, | ग्राफ़ डेटाबेस डेटा के लिए डिज़ाइन किए गए हैं जिनके संबंधों को एक ग्राफ़ (असतत गणित) के रूप में अच्छी तरह से दर्शाया गया है जिसमें संबंधों की एक सीमित संख्या से जुड़े तत्व सम्मिलित हैं। डेटा के उदाहरणों में सामाजिक संबंध, सार्वजनिक परिवहन लिंक, सड़क मानचित्र, नेटवर्क सांस्थिति आदि सम्मिलित हैं। | ||
; ग्राफ़ डेटाबेस और उनकी | ; ग्राफ़ डेटाबेस और उनकी प्रश्न भाषा | ||
{| style="text-align: left;" class="wikitable sortable" | {| style="text-align: left;" class="wikitable sortable" | ||
! | ! नाम !! भाषा (ओं) !! नोट्स | ||
|- | |- | ||
| [[AllegroGraph]] || [[SPARQL]] || | | [[AllegroGraph|एलेग्रोग्राफ]] || [[SPARQL|एसपीएआरक्यूएल]] || आरडीएफ त्रिपक्षीय भंडार | ||
|- | |- | ||
| [[Amazon Neptune]] || [[Gremlin (programming language)| | | [[Amazon Neptune|अमेज़न नेप्च्यून]] || [[Gremlin (programming language)|ग्रेमलिन,]], [[SPARQL|एसपीएआरक्यूएल]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[ArangoDB]] || | | [[ArangoDB|अरंगोडीबी]] || एक्यूएल, जावास्क्रिप्ट, ग्राफक्यूएल || बहु-मॉडल डीबीएमएस दस्तावेज़, ग्राफ़ डेटाबेस और कुंजी-मान संग्रह | ||
|- | |- | ||
| [[Azure Cosmos DB]] || [[Gremlin (programming language)| | | [[Azure Cosmos DB|एज़्योर कॉस्मॉस डीबी]] || [[Gremlin (programming language)|ग्रेमलिन]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[DEX (Graph database)| | | [[DEX (Graph database)|डेक्स/स्पार्कसी]] || C ++, जावा, C #, पायथन || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[FlockDB]] || [[Scala (programming language)| | | [[FlockDB|फ्लॉकडीबी]] || [[Scala (programming language)|स्काला]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[IBM Db2]] || [[SPARQL]] || | | [[IBM Db2|अंतर्राष्ट्रीय व्यापार मशीन डीबी 2]] || [[SPARQL|एसपीएआरक्यूएल]] || आरडीएफ त्रिपक्षीय भंडार डीबी2 10 में जोड़ा गया | ||
|- | |- | ||
| [[InfiniteGraph]] || [[Java (programming language)| | | [[InfiniteGraph|अनंतग्राफ]] || [[Java (programming language)|जावा]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[JanusGraph]] || [[Java (programming language)| | | [[JanusGraph|जानूसग्राफ]] || [[Java (programming language)|जावा]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[MarkLogic]] || [[Java (programming language)| | | [[MarkLogic|मार्कलॉजिक]] || [[Java (programming language)|जावा]], [[JavaScript|जावा]]स्क्रिप्ट, [[SPARQL|एसपीएआरक्यूएल]], [[XQuery|एक्सप्रश्न]]|| बहु-मॉडल दस्तावेज़ डेटाबेस और आरडीएफ त्रिपक्षीय भंडार | ||
|- | |- | ||
| [[Neo4j]] || [[Cypher Query Language| | | [[Neo4j|निओ4जे]] || [[Cypher Query Language|साइफर]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[Virtuoso Universal Server| | | [[Virtuoso Universal Server|ओपनलिंक वर्ट्युओसो]] || [[C++]], [[C Sharp (programming language)|C#]], [[Java (programming language)|जावा]], [[SPARQL|एसपीएआरक्यूएल]] || मिडलवेयर और डेटाबेस इंजन हाइब्रिड | ||
|- | |- | ||
| [[Oracle Database| | | [[Oracle Database|ओरेकल]] || [[SPARQL|एसपीएआरक्यूएल 1.1]] || आरडीएफ त्रिपक्षीय भंडार 11g में जोड़ा गया | ||
|- | |- | ||
| [[OrientDB]] || [[Java (programming language)| | | [[OrientDB|ओरिएंटडीबी]] || [[Java (programming language)|जावा]], संरचित प्रश्न भाषा || बहु-मॉडल दस्तावेज़ और ग्राफ़ डेटाबेस | ||
|- | |- | ||
| [[Ontotext| | | [[Ontotext|ओडब्ल्यूएलआईएम]] || [[Java (programming language)|जावा]], [[SPARQL|एसपीएआरक्यूएल 1.1]]|| आरडीएफ त्रिपक्षीय भंडार | ||
|- | |- | ||
| | | प्रोफियम सेंस || [[Java (programming language)|जावा]], [[SPARQL|एसपीएआरक्यूएल]] || आरडीएफ त्रिपक्षीय भंडार | ||
|- | |- | ||
| [[Redis| | | [[Redis|रेडिसग्राफ]] || [[Cypher Query Language|साइफर]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
| [[sqrrl| | | [[sqrrl|एसक्यूआरएल एंटरप्राइज़]] || [[Java (programming language)|जावा]] || [[Graph database|ग्राफ डेटाबेस]] | ||
|- | |- | ||
|[[TerminusDB]] | |[[TerminusDB|टर्मिनसडीबी]] | ||
| | |जावास्क्रिप्ट, पायथन, डेटालॉग | ||
| | |खुला स्रोत आरडीएफ त्रिपक्षीय संग्रह और दस्तावेज़ संग्रह<ref>{{Cite web|title=TerminusX - Why TerminusX|url=https://terminusdb.com/why-terminus/|access-date=2021-12-16|website=terminusdb.com}}</ref> | ||
|} | |} | ||
Line 151: | Line 160: | ||
== प्रदर्शन == | == प्रदर्शन == | ||
गैर-संरचित प्रश्न भाषा डेटाबेस के प्रदर्शन का मूल्यांकन सामान्य रूप से [[THROUGHPUT|संचार क्षमता]] के मीट्रिक का उपयोग करके किया जाता है, जिसे संचालन/सेकंड के रूप में मापा जाता है। प्रदर्शन मूल्यांकन को सही बेंचमार्क जैसे उत्पादन कॉन्फ़िगरेशन, डेटाबेस के पैरामीटर, अनुमानित डेटा मात्रा और समवर्ती उपयोगकर्ता वर्कलोड (कार्यभार) पर ध्यान देना चाहिए। | |||
बेन स्कोफिल्ड ने | बेन स्कोफिल्ड ने गैर-संरचित प्रश्न भाषा डेटाबेस की विभिन्न श्रेणियों का मूल्यांकन इस प्रकार किया है:<ref>{{cite web|url=http://www.slideshare.net/bscofield/nosql-codemash-2010|title=NoSQL - Death to Relational Databases(?)|last=Scofield|first=Ben |date=2010-01-14|access-date=2014-06-26}}</ref> | ||
{| style="text-align: left;" class="wikitable sortable" | {| style="text-align: left;" class="wikitable sortable" | ||
|- | |- | ||
! | ! डेटा मॉडल !! प्रदर्शन !! मापनीयता !! नम्यता !! जटिलता !! कार्यात्मकता | ||
|- | |- | ||
| | | कुंजी–मान संग्रह || उच्च || उच्च || उच्च || कोई नहीं || वेरिएबल (कोई नहीं) | ||
|- | |- | ||
| | | कॉलम-उन्मुख संग्रह || उच्च || उच्च || मध्यम || निम्न || न्यूनतम | ||
|- | |- | ||
| | | दस्तावेज़-उन्मुख संग्रह || उच्च || वेरिएबल (उच्च) || उच्च || निम्न || वेरिएबल (निम्न) | ||
|- | |- | ||
| | | ग्राफ डेटाबेस || वेरिएबल || वेरिएबल || उच्च || उच्च || [[graph theory|ग्राफ़ सिद्धांत]] | ||
|- | |- | ||
| | | संबंधपरक डेटाबेस || वेरिएबल || वेरिएबल || निम्न || मध्यम || [[relational algebra|संबंधपरक बीजगणित]] | ||
|} | |} | ||
प्रदर्शन और मापनीयता की तुलना सामान्य रूप से [[YCSB]] बेंचमार्क का उपयोग करके की जाती है। | प्रदर्शन और मापनीयता की तुलना सामान्य रूप से [[YCSB|वाईसीएसबी]] बेंचमार्क का उपयोग करके की जाती है। | ||
== संबंधपरक डेटा को संभालना == | == संबंधपरक डेटा को संभालना == | ||
चूंकि अधिकांश | चूंकि अधिकांश गैर-संरचित प्रश्न भाषा डेटाबेस में प्रश्नों में सम्मिलित होने की क्षमता नहीं होती है, इसलिए [[डेटाबेस स्कीमा]] को सामान्य रूप से अलग तरह से डिज़ाइन करने की आवश्यकता होती है। गैर-संरचित प्रश्न भाषा डेटाबेस में संबंधपरक डेटा को संभालने के लिए तीन मुख्य तकनीकें हैं। (जॉइन का समर्थन करने वाले गैर-संरचित प्रश्न भाषा डेटाबेस के लिए तालिका में सम्मिलित और परमाणुता, स्थिरता, वियोजन और स्थायित्व समर्थन देखें।) | ||
=== एकाधिक | === एकाधिक प्रश्नज़ === | ||
प्रश्नज़ के साथ सभी डेटा को पुनः प्राप्त करने के अतिरिक्त वांछित डेटा प्राप्त करने के लिए कई प्रश्न करना सामान्य है। गैर-संरचित प्रश्न भाषा प्रश्नज़ प्रायः पारंपरिक संरचित प्रश्न भाषा प्रश्नज़ से तीव्र होते हैं इसलिए अतिरिक्त प्रश्न की कीमत स्वीकार्य हो सकती है। यदि अत्यधिक संख्या में प्रश्न आवश्यक होंगे, तो अन्य दो दृष्टिकोणों में से एक अधिक उपयुक्त है। | |||
=== कैशिंग, प्रतिकृति और गैर-सामान्यीकृत डेटा === | === कैशिंग, प्रतिकृति और गैर-सामान्यीकृत डेटा === | ||
केवल विदेशी कुंजियों को संग्रहीत करने के | केवल विदेशी कुंजियों को संग्रहीत करने के अतिरिक्त, मॉडल के डेटा के साथ-साथ वास्तविक विदेशी मूल्यों को संग्रहीत करना सामान्य है। उदाहरण के लिए, प्रत्येक ब्लॉग टिप्पणी में उपयोगकर्ता आईडी के साथ-साथ उपयोगकर्ता नाम भी सम्मिलित हो सकता है, इस प्रकार किसी अन्य लुकअप की आवश्यकता के बिना उपयोगकर्ता नाम तक आसान अभिगम्य प्रदान करता है। जब एक उपयोगकर्ता नाम बदलता है, तो अब इसे डेटाबेस में कई स्थानों पर बदलना होगा। इस प्रकार यह दृष्टिकोण तब अधिकतम काम करता है जब पढ़ना लिखने की तुलना में अधिक सामान्य होता है।<ref name="DataModeling-Couchbase.com_November_11_2019c"> | ||
{{cite web |url=https://resources.couchbase.com/c/relational-no-sql-wp?x=3-FqHm |title=संबंधपरक से NoSQL में जाना: कैसे आरंभ करें|newspaper=Couchbase.com |access-date=11 November 2019}} | {{cite web |url=https://resources.couchbase.com/c/relational-no-sql-wp?x=3-FqHm |title=संबंधपरक से NoSQL में जाना: कैसे आरंभ करें|newspaper=Couchbase.com |access-date=11 November 2019}} | ||
</ | </ref> | ||
=== नेस्टिंग डेटा === | === नेस्टिंग डेटा === | ||
मोंगोडीबी जैसे दस्तावेज़ डेटाबेस के साथ कम संख्या में संग्रह में अधिक डेटा डालना आम बात है। उदाहरण के लिए, एक ब्लॉगिंग एप्लिकेशन में, कोई ब्लॉग पोस्ट दस्तावेज़ में टिप्पणियों को संग्रहीत करना चुन सकता है ताकि एक ही पुनर्प्राप्ति के साथ सभी टिप्पणियों को प्राप्त किया जा सके। इस प्रकार इस दृष्टिकोण में एक एकल दस्तावेज़ में एक विशिष्ट कार्य के लिए आवश्यक सभी डेटा होते हैं। | मोंगोडीबी जैसे दस्तावेज़ डेटाबेस के साथ कम संख्या में संग्रह में अधिक डेटा डालना आम बात है। उदाहरण के लिए, एक ब्लॉगिंग एप्लिकेशन में, कोई ब्लॉग पोस्ट दस्तावेज़ में टिप्पणियों को संग्रहीत करना चुन सकता है ताकि एक ही पुनर्प्राप्ति के साथ सभी टिप्पणियों को प्राप्त किया जा सके। इस प्रकार इस दृष्टिकोण में एक एकल दस्तावेज़ में एक विशिष्ट कार्य के लिए आवश्यक सभी डेटा होते हैं। | ||
== एसीआईडी और समर्थन में | === नेस्टिंग डेटा === | ||
मोंगोडीबी जैसे दस्तावेज़ डेटाबेस के साथ कम संख्या में संग्रह में अधिक डेटा निर्दिष्ट करना सामान्य है। उदाहरण के लिए, ब्लॉगिंग एप्लिकेशन में, कोई ब्लॉग पोस्ट दस्तावेज़ में टिप्पणियों को संग्रहीत करना चयन कर सकता है ताकि एक ही पुनर्प्राप्ति के साथ सभी टिप्पणियां प्राप्त हो सकें। इस प्रकार इस दृष्टिकोण में एक एकल दस्तावेज़ में एक विशिष्ट कार्य के लिए आवश्यक सभी डेटा होते हैं। | |||
=== एसीआईडी और समर्थन से जुड़ें === | |||
एक डेटाबेस को एसीआईडी गुणों (परमाणुता, संगति, अलगाव, स्थायित्व) का समर्थन करने के रूप में चिह्नित किया गया है या यदि डेटाबेस के लिए प्रलेखन यह दावा करता है तो संचालन में सम्मिलित हों। हालाँकि, इसका तात्पर्य यह नहीं है कि क्षमता अधिकांश संचरित प्रश्न भाषा डेटाबेस के समान तरीके से पूरी तरह से समर्थित है। | |||
== एसीआईडी और समर्थन में जुड़े == | |||
एक डेटाबेस को एसीआईडी गुणों (परमाणुता, संगति, अलगाव, स्थायित्व) या सम्मिलित (संचरित प्रश्न भाषा) संचालन का समर्थन करने के रूप में चिह्नित किया जाता है यदि डेटाबेस के लिए प्रलेखन यह दावा करता है। हालाँकि, इसका तात्पर्य यह नहीं है कि क्षमता अधिकांश संचरित प्रश्न भाषा डेटाबेस के समान तरीके से पूरी तरह से समर्थित है। | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! | ! डाटाबेस !! एसीआईडी !! संयुक्त | ||
|- | |- | ||
| [[Aerospike (database)| | | [[Aerospike (database)|एयरोस्पाइक]] || {{Yes}} || {{No}} | ||
|- | |- | ||
| [[Apache Ignite]] || {{Yes}} || {{Yes}} | | [[Apache Ignite|अपाचे इग्नाइट]] || {{Yes}} || {{Yes}} | ||
|- | |- | ||
| [[ArangoDB]] || {{Yes}} || {{Yes}} | | [[ArangoDB|अरंगोडीबी]] || {{Yes}} || {{Yes}} | ||
|- | |- | ||
| [[Amazon DynamoDB]] || {{Yes}} || {{No}} | | [[Amazon DynamoDB|अमेज़न डायनेमो डीबी]] || {{Yes}} || {{No}} | ||
|- | |- | ||
| [[Couchbase]] || {{Yes}} || {{Yes}} | | [[Couchbase|काउचबेस]] || {{Yes}} || {{Yes}} | ||
|- | |- | ||
| [[CouchDB]] || {{Yes}} || {{Yes}} | | [[CouchDB|काउचडीबी]] || {{Yes}} || {{Yes}} | ||
|- | |- | ||
| [[IBM Db2]] || {{Yes}} || {{Yes}} | | [[IBM Db2|आईबीएम डीबी2]] || {{Yes}} || {{Yes}} | ||
|- | |- | ||
| [[InfinityDB]] || {{Yes}} || {{No}} | | [[InfinityDB|अनंत डीबी]] || {{Yes}} || {{No}} | ||
|- | |- | ||
| [[Lightning Memory-Mapped Database| | | [[Lightning Memory-Mapped Database|एलएमडीबी]] || {{Yes}} || {{No}} | ||
|- | |- | ||
| [[MarkLogic]] || {{Yes}} || {{Yes}}{{refn|name=MarkLogicJoins|group=nb|Joins do not necessarily apply to document databases, but MarkLogic can do joins using semantics.<ref>{{cite web |url=http://www.gennet.com/big-data/cant-joins-marklogic-just-matter-semantics/ |title=Can't do joins with MarkLogic? It's just a matter of Semantics! - General Networks |website=Gennet.com |access-date=2017-03-06 |archive-date=3 March 2017 |archive-url=https://web.archive.org/web/20170303200231/http://gennet.com/big-data/cant-joins-marklogic-just-matter-semantics/ |url-status=dead }}</ref>}} | | [[MarkLogic|मार्कलॉजिक]] || {{Yes}} || {{Yes}}{{refn|name=MarkLogicJoins|group=nb|Joins do not necessarily apply to document databases, but MarkLogic can do joins using semantics.<ref>{{cite web |url=http://www.gennet.com/big-data/cant-joins-marklogic-just-matter-semantics/ |title=Can't do joins with MarkLogic? It's just a matter of Semantics! - General Networks |website=Gennet.com |access-date=2017-03-06 |archive-date=3 March 2017 |archive-url=https://web.archive.org/web/20170303200231/http://gennet.com/big-data/cant-joins-marklogic-just-matter-semantics/ |url-status=dead }}</ref>}} | ||
|- | |- | ||
| [[MongoDB]] || {{Yes}} || {{Yes}}{{refn|name=MongoDBJoin|group=nb|MongoDB did not support joining from a sharded collection until version 5.1.<ref>{{cite web|url=https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/#sharded-collection-restrictions |title=Sharded Collection Restrictions |website=docs.mongodb.com |access-date=2020-01-24}}</ref>}} | | [[MongoDB|मोंगोडीबी]] || {{Yes}} || {{Yes}}{{refn|name=MongoDBJoin|group=nb|MongoDB did not support joining from a sharded collection until version 5.1.<ref>{{cite web|url=https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/#sharded-collection-restrictions |title=Sharded Collection Restrictions |website=docs.mongodb.com |access-date=2020-01-24}}</ref>}} | ||
|- | |- | ||
| [[OrientDB]] || {{Yes}} || {{Yes}}{{refn|name=OrientDBJoin|group=nb|OrientDB can resolve 1:1 joins using links by storing direct links to foreign records.<ref>{{cite web|url=http://orientdb.com/docs/2.2.x/SQL.html#joins |title=SQL Reference · OrientDB Manual |website=OrientDB.com |access-date=2020-01-24}}</ref>}} | | [[OrientDB|ओरिएंटडीबी]] || {{Yes}} || {{Yes}}{{refn|name=OrientDBJoin|group=nb|OrientDB can resolve 1:1 joins using links by storing direct links to foreign records.<ref>{{cite web|url=http://orientdb.com/docs/2.2.x/SQL.html#joins |title=SQL Reference · OrientDB Manual |website=OrientDB.com |access-date=2020-01-24}}</ref>}} | ||
|} | |} | ||
{{reflist|group=nb}} | {{reflist|group=nb}} | ||
== यह भी देखें == | == यह भी देखें == | ||
* कैप प्रमेय | * कैप प्रमेय | ||
* [[वस्तु डेटाबेस प्रबंधन प्रणालियों की तुलना]] | * [[वस्तु डेटाबेस प्रबंधन प्रणालियों की तुलना]] | ||
* [[संरचित भंडारण सॉफ्टवेयर की तुलना]] | * [[संरचित भंडारण सॉफ्टवेयर की तुलना]] | ||
* [[सी ++]] | * [[सी ++|C ++]] | ||
* [[डेटाबेस स्केलेबिलिटी]] | * [[डेटाबेस स्केलेबिलिटी|डाटाबेस मापनीयता]] | ||
* [[वितरित कैश]] | * [[वितरित कैश]] | ||
* [[पहलू खोज]] | * [[पहलू खोज|स्वरूप खोज]] | ||
* [[मल्टीवैल्यू]] डेटाबेस | * [[मल्टीवैल्यू]] डेटाबेस | ||
* [[बहु-मॉडल डेटाबेस]] | * [[बहु-मॉडल डेटाबेस]] | ||
* [[ट्रिपलस्टोर|ट्रिपलसंग्रहण]] | * [[ट्रिपलस्टोर|ट्रिपलसंग्रहण]] | ||
* [[स्कीमा-अज्ञेयवादी डेटाबेस]] | * [[स्कीमा-अज्ञेयवादी डेटाबेस|रूपरेखा-एग्नोस्टिक डेटाबेस]] | ||
==संदर्भ== | ==संदर्भ== | ||
Line 271: | Line 298: | ||
* {{cite web|year=2014|url=http://www.odbms.org/category/downloads/nosql-data-stores/nosql-data-stores-articles/|title=NoSQL Data Stores – Articles, Papers, Presentations|first = Roberto V. | last = Zicari|website=odbms.org}} | * {{cite web|year=2014|url=http://www.odbms.org/category/downloads/nosql-data-stores/nosql-data-stores-articles/|title=NoSQL Data Stores – Articles, Papers, Presentations|first = Roberto V. | last = Zicari|website=odbms.org}} | ||
[[Category:Articles with hatnote templates targeting a nonexistent page]] | |||
[[Category:Collapse templates]] | |||
[[Category: | |||
[[Category:Created On 25/02/2023]] | [[Category:Created On 25/02/2023]] | ||
[[Category:Database management systems]] | |||
[[Category:Lua-based templates]] | |||
[[Category:Machine Translated Page]] | |||
[[Category:Navigational boxes| ]] | |||
[[Category:Navigational boxes without horizontal lists]] | |||
[[Category:Pages with reference errors]] | |||
[[Category:Pages with script errors]] | |||
[[Category:Short description with empty Wikidata description]] | |||
[[Category:Templates Vigyan Ready]] | |||
[[Category:Templates that add a tracking category]] | |||
[[Category:Templates that generate short descriptions]] | |||
[[Category:Templates using TemplateData]] |
Latest revision as of 15:34, 4 March 2023
नोएसक्यूएल (गैर-संरचित प्रश्न भाषा) (मूल रूप से 'गैर-एसक्यूएल'' या ''गैर-संबंधपरक'')[1] डाटाबेस कंप्यूटर डेटा भंडारण और डेटा की पुनर्प्राप्ति के लिए एक तंत्र प्रदान करता है जो संबंधपरक डेटाबेस में उपयोग किए जाने वाले सारणीबद्ध संबंधों के अतिरिक्त अन्य तरीकों से तैयार किया जाता है। इस संबंध का डेटाबेस 1960 के दशक के अंत से स्थिति में हैं, लेकिन गैर-संरचित प्रश्न भाषा नाम केवल 21 वीं सदी के प्रारंभ में ही बनाया गया था,[2] वेब 2.0 कंपनियों की आवश्यकताओ के कारण प्रारंभ हुआ।[3][4] बड़े डेटा और वास्तविक समय वेब एप्लीकेशन में गैर-संरचित प्रश्न भाषा डाटाबेस का तेजी से उपयोग किया जा रहा है।[5] गैर-संरचित प्रश्न भाषा प्रणाली को कभी-कभी न केवल संरचित प्रश्न भाषा कहा जाता है ताकि प्रमुखता दी जा सके कि वे संरचित प्रश्न भाषा जैसी प्रश्न भाषाओं का समर्थन कर सकते हैं या बहुभाषाविद-स्थायी संरचना में संरचित प्रश्न भाषा डेटाबेस के साथ सम्मिलि हो सके।[6][7]
इस दृष्टिकोण के लिए प्रेरणाओं में डिजाइन की सरलता, मशीनों के समूहों के लिए सरल "क्षैतिज" स्केलिंग सम्मिलित हैं (जो संबंधपरक डेटाबेस के लिए एक समस्या है),[2] उपलब्धता पर अधिकतम नियंत्रण और वस्तु-संबंधपरक प्रतिबाधा बेमेल को सीमित करना।[8] गैर-संरचित प्रश्न भाषा डेटाबेस द्वारा उपयोग की जाने वाली डेटा संरचनाएँ (जैसे कुंजी-मान युग्म, विस्तृत स्तंभ, ग्राफ़, या दस्तावेज़) संबंधपरक डेटाबेस में डिफ़ॉल्ट रूप से उपयोग किए जाने वाले से अलग हैं, जिससे गैर-संरचित प्रश्न भाषा में कुछ संचालन तीव्र हो जाते हैं। किसी दिए गए गैर-संरचित प्रश्न भाषा डेटाबेस की विशेष उपयुक्तता उस समस्या पर निर्भर करती है जिसे उसे संशोधित करना चाहिए। कभी-कभी गैर-संरचित प्रश्न भाषा डेटाबेस द्वारा उपयोग की जाने वाली डेटा संरचना को संबंधपरक डेटाबेस टेबल की तुलना में अधिक नम्य माना जाता है।[9]
उपलब्धता, विभाजन सहिष्णुता और संचार के पक्ष में कई गैर-संरचित प्रश्न भाषा संग्रहण सहमति स्थिरता (संगति, उपलब्धता और विभाजन सहिष्णुता प्रमेय के अर्थ में) को संग्रहीत करता है। गैर-संरचित प्रश्न भाषा संग्रहण के अधिक से अधिक स्वीकृत करने के लिए नियंत्रण में निम्न-स्तरीय प्रश्न भाषाओं (उदाहरण के लिए संरचित प्रश्न भाषा के अतिरिक्त) का उपयोग सम्मिलित है, तालिकाओं में तदर्थ प्रदर्शन करने की क्षमता की कमी, मानकीकृत इंटरफेस की कमी, और बड़े पिछले निवेश सम्मिलित संबंधपरक डेटाबेस सम्मिलित है।[10] अधिकांश गैर-संरचित प्रश्न भाषा संग्रहण्स में यथार्थ परमाणुता, स्थिरता, वियोजन और स्थायित्व विनिमय की कमी है, हालांकि कुछ डेटाबेस ने उन्हें अपने डिजाइनों के लिए केंद्रीय बना दिया है।
इसके अतिरिक्त, अधिकांश गैर-संरचित प्रश्न भाषा डेटाबेस अंतिम स्थिरता की अवधारणा प्रदान करते हैं, जिसमें डेटाबेस परिवर्तन अंततः (सामान्य रूप से मिलीसेकंड के अंदर) सभी नोड्स के लिए प्रचारित होते हैं, इसलिए डेटा के लिए प्रश्नज़ अपडेट किए गए डेटा को तुरंत वापस नहीं कर सकती हैं या डेटा को पढ़ने में परिणाम हो सकता है जो परिशुद्ध समस्या नहीं है जिसे स्टाल पठन के रूप में जाना जाता है।[11] इसके अतिरिक्त, कुछ गैर-संरचित प्रश्न भाषा प्रणाली नष्ट हुए लेखन और डेटा हानि के अन्य रूपों को प्रदर्शित कर सकते हैं।[12] कुछ गैर-संरचित प्रश्न भाषा प्रणाली डेटा हानि से बचने के लिए राइट-फॉरवर्ड लॉगिंग जैसी अवधारणाएँ प्रदान करते हैं।[13] कई डेटाबेस में वितरित विनिमय प्रसंस्करण के लिए, डेटा स्थिरता एक बड़ी चुनौती है जो गैर-संरचित प्रश्न भाषा और संबंधपरक डेटाबेस दोनों के लिए कठिन है। संबंधपरक डेटाबेस डेटाबेस को विस्तृत करने के लिए संदर्भित पूर्णता नियंत्रण की स्वीकृति नहीं देते हैं।[14] वितरितविनिमय प्रसंस्करण के लिए कुछ प्रणाली परमाणुता, स्थिरता, वियोजन और स्थायित्व विनिमय और एक्स/ओपन एक्सए मानकों दोनों को बनाए रखते हैं।[15] इंटरएक्टिव संबंधपरक डेटाबेस एक सामान्य विशेषता के रूप में गठनात्मक प्रसारण विश्लेषण तकनीकों को साझा करते हैं।[16] सिमेंटिक वर्चुअलाइजेशन प्रोटोकॉल का उपयोग करके इंटरफ़ेस परिवेश के अंदर की सीमाओं को दूर किया जाता है, जैसे कि गैर-संरचित प्रश्न भाषा सेवाएं अधिकांश ऑपरेटिंग सिस्टमों के लिए सक्षम हैं।[17]
इतिहास
गैर-संरचित प्रश्न भाषा शब्द का उपयोग 1998 में कार्लो स्ट्रोज़ी द्वारा अपने सामान्य स्ट्रोज़ी गैर-संरचित प्रश्न भाषा मुक्त स्त्रोत संबंधपरक डेटाबेस के नाम के लिए किया गया था, जो मानक संरचित प्रश्न भाषा (संरचित प्रश्न भाषा) इंटरफ़ेस को प्रकट नहीं करता था, लेकिन फिर भी संबंधपरक था।[18] उनका गैर-संरचित प्रश्न भाषा संबंधपरक डेटाबेस प्रबंधन प्रणाली लगभग 2009 के गैर-संरचित प्रश्न भाषा डेटाबेस की सामान्य अवधारणा से अलग है। स्ट्रोज़ी का सुझाव है कि, क्योंकि वर्तमान गैर-संरचित प्रश्न भाषा गतिविधि संबंधपरक मॉडल से पूरी तरह से अलग हो जाता है, इसलिए इसे" संबंधपरक नहीं "का संदर्भ देते हुए, इसे अधिक उपयुक्त रूप से 'गैर-अधिकारों की अभिव्यक्ति भाषा' कहा जाना चाहिए।[19]
जोहान ऑस्करसन, जो उस समय Last.fm के एक डेवलपर थे, ने 2009 के प्रारंभ में गैर-संरचित प्रश्न भाषा शब्द को फिर से प्रस्तुत किया जब उन्होंने मुक्त स्त्रोत वितरित, गैर-संबंधपरक डेटाबेस पर चर्चा करने के लिए एक प्रोग्राम आयोजित किया।[20] नाम ने गैर-संबंधपरक, वितरित डेटा संग्रहणों की बढ़ती संख्या के प्रदर्शन को लेबल करने का प्रयास किया, जिसमें गूगल के बिगटेबल /मैपरेडस और अमेज़ॅन के अमेज़न डायनेमोडीबी के मुक्त-स्त्रोत क्लोन सम्मिलित हैं।
प्रकार और उदाहरण
गैर-संरचित प्रश्न भाषा डेटाबेस को वर्गीकृत करने के विभिन्न तरीके हैं, विभिन्न श्रेणियों और उपश्रेणियों के साथ, जिनमें से कुछ ओवरलैप (अतिव्याप्त) हैं। उदाहरण के साथ, डेटा मॉडल द्वारा गैर-विस्तृत वर्गीकरण क्या है:[21]
प्रकार | इस प्रकार के उल्लेखनीय उदाहरण |
---|---|
कुंजी–मान कैश | अपाचे इग्नाइट, काउचबेस, कोहरेंस, एक्सट्रीम स्केल, हेज़ेलकास्ट, इन्फिनिसन, मेमकेच्ड, रेडिस, वेलोसिटी |
कुंजी–मान संग्रह | अज्यूर कॉसमॉस डीबी, अरंगोडीबी, अमेज़न डायनेमो डीबी, एयरोस्पाइक, काउचबेस, स्काइलाडीबी |
कुंजी–मान संग्रह (अंततः संगत) | एज़्योर कॉस्मॉस डीबी, ओरेकल, गैर-संचरित प्रश्न भाषा डेटाबेस, रिपल, वोल्डेमॉर्ट |
कुंजी–मान संग्रह (आदिष्ट) | फाउंडेशनडीबी, इन्फिनिटीडीबी, एलएमडीबी, मेमकेचेडीबी |
टपल भंडार | अपाचे रिवर, गीगास्पेस, टारेंटूल, टिब्को एक्टिवस्पेसेस, ओपनलिंक, वर्ट्युओसो |
ट्रिपलसंग्रह | एलेग्रोग्राफ, मार्कलॉजिक, ओंटोटेक्स्ट-ओडब्लूलिम, डेटाबेस, ओरेकल, गैर-संचरित प्रश्न भाषा, प्रोफियम सेंस, वर्चुसो यूनिवर्सल सर्वर |
ऑब्जेक्ट डेटाबेस | ऑब्जेक्टिविटी/डीबी, पर्स्ट, ज़ोपडीबी, डीबी4ओ, जेमस्टोन/एस, इंटरसिस्टम कैश, जेएडीई, ऑब्जेक्टडेटाबेस++, ऑब्जेक्टडीबी, ऑब्जेक्टस्टोर, ओडाबा, रियल्म, ओपनलिंक वर्चुओसो, वर्सेंट ऑब्जेक्ट डेटाबेस, जेडओडीबी |
दस्तावेज़ भंडार | एज़्योर कॉसमॉस डीबी, अरंगोडीबी, बेसएक्स, क्लस्टरपॉइंट, काउचबेस, काउचडीबी, डॉक्यूमेंटडीबी, इग्ज़िस्ट-डीबी, आईबीएम डोमिनोज़, मार्कलॉजिक, मोंगोडीबी, रेवेनडीबी, क्यूज़ेक्स, रीथिंकडीबी, इलास्टिक्ससर्च, ओरिएंटडीबी |
वाइड कॉलम संग्रह | एज़्योर कॉसमॉस डीबी, अमेज़ॅन डायनेमोडीबी, बिगटेबल, कैसेंड्रा, गूगल क्लाउड डेटास्टोर, एचबेस, हाइपरटेबल, स्काइलाडीबी |
मूल बहु-मॉडल डेटाबेस | अरंगोडीबी, एज़्योर कॉसमॉस डीबी, ओरिएंटडीबी, मार्कलॉजिक, अपाचे इग्नाइट,[22][23] काउचबेस, फाउंडेशनडीबी, ओरेकल डेटाबेस |
ग्राफ डेटाबेस | एज़्योर कॉस्मॉस डीबी, एलेग्रोग्राफ, अरंगोडीबी, अनंतग्राफ, अपाचे जिराफ, मार्कलॉजिक,नियो4जे, ओरिएंटडीबी, वर्चुओसो |
बहु-मान डेटाबेस | डी3 पिक डेटाबेस, एक्स्टेंसिबल स्टोरेज इंजन (ईएसई/एनटी), इनफिनिटीडीबी, इंटरसिस्टम कैश, जेबीएएस पिक डेटाबेस, एमवीबेस रॉकेट सॉफ्टवेयर, एमवीएंटरप्राइज रॉकेट सॉफ्टवेयर, नॉर्थगेट इंफॉर्मेशन सॉल्यूशंस रियलिटी (मूल पिक/एमवी डेटाबेस), ओपनक्यूएम, रेवलेशन सॉफ्टवेयर का ओपनइनसाइट (विंडोज़) ) और एडवांस्ड रेवेलेशन (डिस्क ऑपरेटिंग सिस्टम), यूनीडाटा रॉकेट यू2, यूनिवर्स रॉकेट यू2 |
कुंजी-मान संग्रहण
कुंजी-मान (केवी) संग्रहण अपने मौलिक डेटा मॉडल के रूप में साहचर्य सरणी (जिसे मानचित्र या शब्दकोश भी कहा जाता है) का उपयोग करते हैं। इस मॉडल में, डेटा को कुंजी-मान पेयर के संग्रह के रूप में दर्शाया जाता है, जैसे कि संग्रह में प्रत्येक संभावित कुंजी एक बार में दिखाई देती है।[24][25]
कुंजी-मान मॉडल सबसे सरल गैर-सामान्य डेटा मॉडल में से एक है, और समृद्ध डेटा मॉडल प्रायः इसके विस्तार के रूप में प्रयुक्त किए जाते हैं। कुंजी-मान मॉडल को विवेकपूर्ण रूप से आदेशित किए गए मॉडल तक बढ़ाया जा सकता है जो लेक्सिकोग्राफिक ( शब्दकोशीय संबंधी) क्रम में कुंजियों को बनाए रखता है। यह विस्तार संगणात्मक रूप से शक्तिशाली है, जिसमें यह चयनात्मक प्रमुख श्रेणियों को कुशलतापूर्वक पुनः प्राप्त कर सकता है।[26]
कुंजी-मान संग्रहण अंतिम स्थिरता से क्रमिकता तक निरंतरता मॉडल का उपयोग कर सकते हैं। कुछ डेटाबेस कुंजियों के क्रम का समर्थन करते हैं। विभिन्न हार्डवेयर कार्यान्वयन हैं, और कुछ उपयोगकर्ता मेमोरी (रेंडम एक्सेस मेमोरी) में डेटा संग्रहण करते हैं, जब अन्य ठोस अवस्था ड्राइव (एसएसडी) या हार्ड डिस्क ड्राइव (उर्फ हार्ड डिस्क ड्राइव (एचडीडी)) पर संग्रहीत किया जाता है।
दस्तावेज़ संग्रहण
दस्तावेज़ संग्रहण की केंद्रीय अवधारणा दस्तावेज़ की है। जबकि इस परिभाषा के विवरण दस्तावेज़-उन्मुख डेटाबेस के बीच भिन्न होते हैं, वे सभी मानते हैं कि दस्तावेज़ कुछ मानक स्वरूपों या एन्कोडिंग में डेटा (या सूचना) को कैप्सुलन और एनकोड करते हैं। उपयोग में आने वाले एन्कोडिंग में एक्सएमएल, वाईएएमएल, और जेएसओएन और बीएसओएन जैसे बाइनरी प्रारूप सम्मिलित हैं। दस्तावेज़ों को डेटाबेस में एक अद्वितीय कुंजी के माध्यम से संबोधित किया जाता है जो उस दस्तावेज़ का प्रतिनिधित्व करता है। दस्तावेज़-उन्मुख डेटाबेस की एक अन्य परिभाषित विशेषता उनकी सामग्री के आधार पर दस्तावेज़ों को पुनः प्राप्त करने के लिए एक एप्लीकेशन प्रोग्रामिंग इंटरफेस या प्रश्न भाषा है।
अलग-अलग कार्यान्वयन दस्तावेज़ों को व्यवस्थित करने और/या समूहीकृत करने के अलग-अलग तरीके प्रदान करते हैं:
- संग्रह
- टैग
- गैर-दृश्यमान मेटाडेटा
- निर्देशिका पदानुक्रम
संबंधपरक डेटाबेस की तुलना में, संग्रह को तालिकाओं और अभिलेखों के अनुरूप दस्तावेज़ के अनुरूप माना जा सकता है। लेकिन वे भिन्न हैं: तालिका में प्रत्येक रिकॉर्ड में क्षेत्र का समान क्रम होता है, जबकि संग्रह में दस्तावेज़ों में क्षेत्र पूरी तरह से अलग हो सकते हैं।
ग्राफ
ग्राफ़ डेटाबेस डेटा के लिए डिज़ाइन किए गए हैं जिनके संबंधों को एक ग्राफ़ (असतत गणित) के रूप में अच्छी तरह से दर्शाया गया है जिसमें संबंधों की एक सीमित संख्या से जुड़े तत्व सम्मिलित हैं। डेटा के उदाहरणों में सामाजिक संबंध, सार्वजनिक परिवहन लिंक, सड़क मानचित्र, नेटवर्क सांस्थिति आदि सम्मिलित हैं।
- ग्राफ़ डेटाबेस और उनकी प्रश्न भाषा
नाम | भाषा (ओं) | नोट्स |
---|---|---|
एलेग्रोग्राफ | एसपीएआरक्यूएल | आरडीएफ त्रिपक्षीय भंडार |
अमेज़न नेप्च्यून | ग्रेमलिन,, एसपीएआरक्यूएल | ग्राफ डेटाबेस |
अरंगोडीबी | एक्यूएल, जावास्क्रिप्ट, ग्राफक्यूएल | बहु-मॉडल डीबीएमएस दस्तावेज़, ग्राफ़ डेटाबेस और कुंजी-मान संग्रह |
एज़्योर कॉस्मॉस डीबी | ग्रेमलिन | ग्राफ डेटाबेस |
डेक्स/स्पार्कसी | C ++, जावा, C #, पायथन | ग्राफ डेटाबेस |
फ्लॉकडीबी | स्काला | ग्राफ डेटाबेस |
अंतर्राष्ट्रीय व्यापार मशीन डीबी 2 | एसपीएआरक्यूएल | आरडीएफ त्रिपक्षीय भंडार डीबी2 10 में जोड़ा गया |
अनंतग्राफ | जावा | ग्राफ डेटाबेस |
जानूसग्राफ | जावा | ग्राफ डेटाबेस |
मार्कलॉजिक | जावा, जावास्क्रिप्ट, एसपीएआरक्यूएल, एक्सप्रश्न | बहु-मॉडल दस्तावेज़ डेटाबेस और आरडीएफ त्रिपक्षीय भंडार |
निओ4जे | साइफर | ग्राफ डेटाबेस |
ओपनलिंक वर्ट्युओसो | C++, C#, जावा, एसपीएआरक्यूएल | मिडलवेयर और डेटाबेस इंजन हाइब्रिड |
ओरेकल | एसपीएआरक्यूएल 1.1 | आरडीएफ त्रिपक्षीय भंडार 11g में जोड़ा गया |
ओरिएंटडीबी | जावा, संरचित प्रश्न भाषा | बहु-मॉडल दस्तावेज़ और ग्राफ़ डेटाबेस |
ओडब्ल्यूएलआईएम | जावा, एसपीएआरक्यूएल 1.1 | आरडीएफ त्रिपक्षीय भंडार |
प्रोफियम सेंस | जावा, एसपीएआरक्यूएल | आरडीएफ त्रिपक्षीय भंडार |
रेडिसग्राफ | साइफर | ग्राफ डेटाबेस |
एसक्यूआरएल एंटरप्राइज़ | जावा | ग्राफ डेटाबेस |
टर्मिनसडीबी | जावास्क्रिप्ट, पायथन, डेटालॉग | खुला स्रोत आरडीएफ त्रिपक्षीय संग्रह और दस्तावेज़ संग्रह[27] |
प्रदर्शन
गैर-संरचित प्रश्न भाषा डेटाबेस के प्रदर्शन का मूल्यांकन सामान्य रूप से संचार क्षमता के मीट्रिक का उपयोग करके किया जाता है, जिसे संचालन/सेकंड के रूप में मापा जाता है। प्रदर्शन मूल्यांकन को सही बेंचमार्क जैसे उत्पादन कॉन्फ़िगरेशन, डेटाबेस के पैरामीटर, अनुमानित डेटा मात्रा और समवर्ती उपयोगकर्ता वर्कलोड (कार्यभार) पर ध्यान देना चाहिए।
बेन स्कोफिल्ड ने गैर-संरचित प्रश्न भाषा डेटाबेस की विभिन्न श्रेणियों का मूल्यांकन इस प्रकार किया है:[28]
डेटा मॉडल | प्रदर्शन | मापनीयता | नम्यता | जटिलता | कार्यात्मकता |
---|---|---|---|---|---|
कुंजी–मान संग्रह | उच्च | उच्च | उच्च | कोई नहीं | वेरिएबल (कोई नहीं) |
कॉलम-उन्मुख संग्रह | उच्च | उच्च | मध्यम | निम्न | न्यूनतम |
दस्तावेज़-उन्मुख संग्रह | उच्च | वेरिएबल (उच्च) | उच्च | निम्न | वेरिएबल (निम्न) |
ग्राफ डेटाबेस | वेरिएबल | वेरिएबल | उच्च | उच्च | ग्राफ़ सिद्धांत |
संबंधपरक डेटाबेस | वेरिएबल | वेरिएबल | निम्न | मध्यम | संबंधपरक बीजगणित |
प्रदर्शन और मापनीयता की तुलना सामान्य रूप से वाईसीएसबी बेंचमार्क का उपयोग करके की जाती है।
संबंधपरक डेटा को संभालना
चूंकि अधिकांश गैर-संरचित प्रश्न भाषा डेटाबेस में प्रश्नों में सम्मिलित होने की क्षमता नहीं होती है, इसलिए डेटाबेस स्कीमा को सामान्य रूप से अलग तरह से डिज़ाइन करने की आवश्यकता होती है। गैर-संरचित प्रश्न भाषा डेटाबेस में संबंधपरक डेटा को संभालने के लिए तीन मुख्य तकनीकें हैं। (जॉइन का समर्थन करने वाले गैर-संरचित प्रश्न भाषा डेटाबेस के लिए तालिका में सम्मिलित और परमाणुता, स्थिरता, वियोजन और स्थायित्व समर्थन देखें।)
एकाधिक प्रश्नज़
प्रश्नज़ के साथ सभी डेटा को पुनः प्राप्त करने के अतिरिक्त वांछित डेटा प्राप्त करने के लिए कई प्रश्न करना सामान्य है। गैर-संरचित प्रश्न भाषा प्रश्नज़ प्रायः पारंपरिक संरचित प्रश्न भाषा प्रश्नज़ से तीव्र होते हैं इसलिए अतिरिक्त प्रश्न की कीमत स्वीकार्य हो सकती है। यदि अत्यधिक संख्या में प्रश्न आवश्यक होंगे, तो अन्य दो दृष्टिकोणों में से एक अधिक उपयुक्त है।
कैशिंग, प्रतिकृति और गैर-सामान्यीकृत डेटा
केवल विदेशी कुंजियों को संग्रहीत करने के अतिरिक्त, मॉडल के डेटा के साथ-साथ वास्तविक विदेशी मूल्यों को संग्रहीत करना सामान्य है। उदाहरण के लिए, प्रत्येक ब्लॉग टिप्पणी में उपयोगकर्ता आईडी के साथ-साथ उपयोगकर्ता नाम भी सम्मिलित हो सकता है, इस प्रकार किसी अन्य लुकअप की आवश्यकता के बिना उपयोगकर्ता नाम तक आसान अभिगम्य प्रदान करता है। जब एक उपयोगकर्ता नाम बदलता है, तो अब इसे डेटाबेस में कई स्थानों पर बदलना होगा। इस प्रकार यह दृष्टिकोण तब अधिकतम काम करता है जब पढ़ना लिखने की तुलना में अधिक सामान्य होता है।[29]
नेस्टिंग डेटा
मोंगोडीबी जैसे दस्तावेज़ डेटाबेस के साथ कम संख्या में संग्रह में अधिक डेटा डालना आम बात है। उदाहरण के लिए, एक ब्लॉगिंग एप्लिकेशन में, कोई ब्लॉग पोस्ट दस्तावेज़ में टिप्पणियों को संग्रहीत करना चुन सकता है ताकि एक ही पुनर्प्राप्ति के साथ सभी टिप्पणियों को प्राप्त किया जा सके। इस प्रकार इस दृष्टिकोण में एक एकल दस्तावेज़ में एक विशिष्ट कार्य के लिए आवश्यक सभी डेटा होते हैं।
नेस्टिंग डेटा
मोंगोडीबी जैसे दस्तावेज़ डेटाबेस के साथ कम संख्या में संग्रह में अधिक डेटा निर्दिष्ट करना सामान्य है। उदाहरण के लिए, ब्लॉगिंग एप्लिकेशन में, कोई ब्लॉग पोस्ट दस्तावेज़ में टिप्पणियों को संग्रहीत करना चयन कर सकता है ताकि एक ही पुनर्प्राप्ति के साथ सभी टिप्पणियां प्राप्त हो सकें। इस प्रकार इस दृष्टिकोण में एक एकल दस्तावेज़ में एक विशिष्ट कार्य के लिए आवश्यक सभी डेटा होते हैं।
एसीआईडी और समर्थन से जुड़ें
एक डेटाबेस को एसीआईडी गुणों (परमाणुता, संगति, अलगाव, स्थायित्व) का समर्थन करने के रूप में चिह्नित किया गया है या यदि डेटाबेस के लिए प्रलेखन यह दावा करता है तो संचालन में सम्मिलित हों। हालाँकि, इसका तात्पर्य यह नहीं है कि क्षमता अधिकांश संचरित प्रश्न भाषा डेटाबेस के समान तरीके से पूरी तरह से समर्थित है।
एसीआईडी और समर्थन में जुड़े
एक डेटाबेस को एसीआईडी गुणों (परमाणुता, संगति, अलगाव, स्थायित्व) या सम्मिलित (संचरित प्रश्न भाषा) संचालन का समर्थन करने के रूप में चिह्नित किया जाता है यदि डेटाबेस के लिए प्रलेखन यह दावा करता है। हालाँकि, इसका तात्पर्य यह नहीं है कि क्षमता अधिकांश संचरित प्रश्न भाषा डेटाबेस के समान तरीके से पूरी तरह से समर्थित है।
डाटाबेस | एसीआईडी | संयुक्त |
---|---|---|
एयरोस्पाइक | Yes | No |
अपाचे इग्नाइट | Yes | Yes |
अरंगोडीबी | Yes | Yes |
अमेज़न डायनेमो डीबी | Yes | No |
काउचबेस | Yes | Yes |
काउचडीबी | Yes | Yes |
आईबीएम डीबी2 | Yes | Yes |
अनंत डीबी | Yes | No |
एलएमडीबी | Yes | No |
मार्कलॉजिक | Yes | Yes[nb 1] |
मोंगोडीबी | Yes | Yes[nb 2] |
ओरिएंटडीबी | Yes | Yes[nb 3] |
यह भी देखें
- कैप प्रमेय
- वस्तु डेटाबेस प्रबंधन प्रणालियों की तुलना
- संरचित भंडारण सॉफ्टवेयर की तुलना
- C ++
- डाटाबेस मापनीयता
- वितरित कैश
- स्वरूप खोज
- मल्टीवैल्यू डेटाबेस
- बहु-मॉडल डेटाबेस
- ट्रिपलसंग्रहण
- रूपरेखा-एग्नोस्टिक डेटाबेस
संदर्भ
- ↑ http://nosql-database.org/ "NoSQL DEFINITION: Next Generation Databases mostly addressing some of the points : being non-relational, distributed, open-source and horizontally scalable".
- ↑ 2.0 2.1 Leavitt, Neal (2010). "Will NoSQL Databases Live Up to Their Promise?" (PDF). IEEE Computer. 43 (2): 12–14. doi:10.1109/MC.2010.58. S2CID 26876882.
- ↑ Mohan, C. (2013). History Repeats Itself: Sensible and NonsenSQL Aspects of the NoSQL Hoopla (PDF). Proc. 16th Int'l Conf. on Extending Database Technology.
- ↑ "Amazon 'NoSQL' डेटाबेस के साथ भविष्य में वापस जाता है". WIRED. 2012-01-19. Retrieved 2017-03-06.
- ↑ "RDBMS डेटाबेस बाजार पर हावी है, लेकिन NoSQL सिस्टम पकड़ बना रहा है". DB-Engines.com. 21 November 2013. Retrieved 24 November 2013.
- ↑ "NoSQL (केवल SQL नहीं)".
NoSQL database, also called Not Only SQL
- ↑ Fowler, Martin. "NosqlDefinition".
many advocates of NoSQL say that it does not mean a "no" to SQL, rather it means Not Only SQL
- ↑ NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley Educational Publishers Inc, 2009, ISBN 978-0321826626.
- ↑ Vogels, Werner (2012-01-18). "Amazon DynamoDB – a Fast and Scalable NoSQL Database Service Designed for Internet Scale Applications". All Things Distributed. Retrieved 2017-03-06.
- ↑ Grolinger, K.; Higashino, W. A.; Tiwari, A.; Capretz, M. A. M. (2013). "Data management in cloud environments: NoSQL and NewSQL data stores" (PDF). Aira, Springer. Retrieved 8 January 2014.
- ↑ "Jepsen: MongoDB stale reads". Aphyr.com. 2015-04-20. Retrieved 2017-03-06.
- ↑ "टाइपसेफ रिएक्टिव प्लेटफॉर्म पर बड़ी मात्रा में डेटा विश्लेषण". Slideshare.net. Retrieved 2017-03-06.
- ↑ Fowler, Adam. "10 NoSQL गलतफहमी". Dummies.com. Retrieved 2017-03-06.
- ↑ "No! to SQL and No! to NoSQL | So Many Oracle Manuals, So Little Time". Iggyfernandez.wordpress.com. Retrieved 2017-03-06.
- ↑ Chapple, Mike. "एसिड मॉडल". about.com.
- ↑ Fiore, S. (2011). ग्रिड और क्लाउड डेटाबेस प्रबंधन. Springer Science & Business Media. p. 210.
- ↑ Lawrence, MySQL और MongoDB सहित रिलेशनल SQL और NoSQL सिस्टम का एकीकरण और वर्चुअलाइजेशन (2014). "MySQL और MongoDB सहित रिलेशनल SQL और NoSQL सिस्टम का एकीकरण और वर्चुअलाइजेशन". International Conference on Computational Science and Computational Intelligence 1.
- ↑ Lith, Adam; Mattson, Jakob (2010). "Investigating storage solutions for large data: A comparison of well performing and scalable data storage solutions for real time extraction and batch insertion of data" (PDF). Göteborg: Department of Computer Science and Engineering, Chalmers University of Technology. p. 70. Retrieved 12 May 2011.
Carlo Strozzi first used the term NoSQL in 1998 as a name for his open source relational database that did not offer a SQL interface[...]
- ↑ "NoSQL Relational Database Management System: Home Page". Strozzi.it. 2 October 2007. Retrieved 29 March 2010.
- ↑ "NoSQL 2009". Blog.sym-link.com. 12 May 2009. Archived from the original on 16 July 2011. Retrieved 29 March 2010.
- ↑ Strauch, Christof. "नोएसक्यूएल डेटाबेस" (PDF). pp. 23–24. Retrieved 2017-08-27.
- ↑ https://apacheignite.readme.io/docs Ignite Documentation
- ↑ https://www.infoworld.com/article/3135070/data-center/fire-up-big-data-processing-with-apache-ignite.html fire-up-big-data-processing-with-apache-ignite
- ↑ Sandy (14 January 2011). "मुख्य मूल्य भंडार और NoSQL गतिविधि". Stackexchange. Retrieved 1 January 2012.
Key–value stores allow the application developer to store schema-less data. This data usually consists of a string that represents the key, and the actual data that is considered the value in the "key–value" relationship. The data itself is usually some kind of primitive of the programming language (a string, an integer, or an array) or an object that is being marshaled by the programming language's bindings to the key-value store. This structure replaces the need for a fixed data model and allows proper formatting.
- ↑ Seeger, Marc (21 September 2009). "Key-Value Stores: a practical overview" (PDF). Marc Seeger. Retrieved 1 January 2012.
Key–value stores provide a high-performance alternative to relational database systems with respect to storing and accessing data. This paper provides a short overview of some of the currently available key–value stores and their interface to the Ruby programming language.
- ↑ Katsov, Ilya (1 March 2012). "NoSQL Data Modeling Techniques". Ilya Katsov. Retrieved 8 May 2014.
- ↑ "TerminusX - Why TerminusX". terminusdb.com. Retrieved 2021-12-16.
- ↑ Scofield, Ben (2010-01-14). "NoSQL - Death to Relational Databases(?)". Retrieved 2014-06-26.
- ↑ "संबंधपरक से NoSQL में जाना: कैसे आरंभ करें". Couchbase.com. Retrieved 11 November 2019.
- ↑ "Can't do joins with MarkLogic? It's just a matter of Semantics! - General Networks". Gennet.com. Archived from the original on 3 March 2017. Retrieved 2017-03-06.
- ↑ "Sharded Collection Restrictions". docs.mongodb.com. Retrieved 2020-01-24.
- ↑ "SQL Reference · OrientDB Manual". OrientDB.com. Retrieved 2020-01-24.
अग्रिम पठन
- Sadalage, Pramod; Fowler, Martin (2012). NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley. ISBN 978-0-321-82662-6.
- McCreary, Dan; Kelly, Ann (2013). Making Sense of NoSQL: A guide for managers and the rest of us. ISBN 9781617291074.
- Wiese, Lena (2015). Advanced Data Management for SQL, NoSQL, Cloud and Distributed Databases. DeGruyter/Oldenbourg. ISBN 978-3-11-044140-6.
- Strauch, Christof (2012). "NoSQL Databases" (PDF).
- Moniruzzaman, A. B.; Hossain, S. A. (2013). "NoSQL Database: New Era of Databases for Big data Analytics - Classification, Characteristics and Comparison". arXiv:1307.0191 [cs.DB].
- Orend, Kai (2013). "Analysis and Classification of NoSQL Databases and Evaluation of their Ability to Replace an Object-relational Persistence Layer". CiteSeerX 10.1.1.184.483.
- Krishnan, Ganesh; Kulkarni, Sarang; Dadbhawala, Dharmesh Kirit. "Method and system for versioned sharing, consolidating and reporting information".
बाहरी संबंध
- Strauch, Christof. "NoSQL whitepaper" (PDF). Stuttgart: Hochschule der Medien.
- Edlich, Stefan. "NoSQL database List".
- Neubauer, Peter (2010). "Graph Databases, NOSQL and Neo4j".
- Bushik, Sergey (2012). "A vendor-independent comparison of NoSQL databases: Cassandra, HBase, MongoDB, Riak". NetworkWorld.
- Zicari, Roberto V. (2014). "NoSQL Data Stores – Articles, Papers, Presentations". odbms.org.