बहु-मॉडल डेटाबेस: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
 
(6 intermediate revisions by 3 users not shown)
Line 3: Line 3:


== पृष्ठभूमि ==
== पृष्ठभूमि ==
1970 में एडगर एफ. कॉड द्वारा प्रकाशन के बाद [[संबंधपरक मॉडल]] डेटा मॉडल लोकप्रिय हो गया था। क्षैतिज मापनीयता और [[दोष सहिष्णुता]] के लिए बढ़ती आवश्यकताओं के कारण, [[NoSQL]] डेटाबेस 2009 के बाद प्रमुख हो गए। NoSQL डेटाबेस विभिन्न प्रकार के डेटा मॉडल का उपयोग करते हैं, साथ में दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस और कुंजी-मूल्य मॉडल लोकप्रिय हैं।<ref name="rise">[http://www.infoworld.com/article/2861579/database/the-rise-of-the-multimodel-database.html Infoworld, "The Rise of the Multi-Model Database"]</ref>
1970 में एडगर एफ. कॉड द्वारा प्रकाशन के बाद [[संबंधपरक मॉडल]] डेटा मॉडल लोकप्रिय हो गया था। क्षैतिज मापनीयता और [[दोष सहिष्णुता]] के लिए बढ़ती आवश्यकताओं के कारण, [[NoSQL|नोएसक्यूएल]] डेटाबेस 2009 के बाद प्रमुख हो गए। नोएसक्यूएल डेटाबेस विभिन्न प्रकार के डेटा मॉडल का उपयोग करते हैं, साथ में दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस और कुंजी-मूल्य मॉडल लोकप्रिय हैं।<ref name="rise">[http://www.infoworld.com/article/2861579/database/the-rise-of-the-multimodel-database.html Infoworld, "The Rise of the Multi-Model Database"]</ref>


बहु-मॉडल डेटाबेस डेटाबेस है जो से अधिक मॉडल में डेटा को भण्डारण, सूचकांक और क्वेरी कर सकता है। कुछ समय के लिए, डेटाबेस ने मुख्य रूप से केवल मॉडल का समर्थन किया है, जैसे: संबंधपरक डेटाबेस, दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस या [[tiktor|ट्रिपलस्टोर]]। डेटाबेस जो इनमें से कई को जोड़ता है वह बहु-मॉडल है।
बहु-मॉडल डेटाबेस डेटाबेस है जो से अधिक मॉडल में डेटा को भण्डारण, सूचकांक और क्वेरी कर सकता है। कुछ समय के लिए, डेटाबेस ने मुख्य रूप से केवल मॉडल का समर्थन किया है, जैसे: संबंधपरक डेटाबेस, दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस या [[tiktor|ट्रिपलस्टोर]]। डेटाबेस जो इनमें से कई को जोड़ता है वह बहु-मॉडल है।


कुछ समय के लिए, यह सब भूल गया था (या अप्रासंगिक माना जाता था) कि रिलेशनल के अलावा कोई अन्य डेटाबेस मॉडल भी थे। संबंधपरक मॉडल और तीसरे सामान्य रूप की धारणा सभी डेटा संग्रहण के लिए डिफ़ॉल्ट मानक थे। हालाँकि, रिलेशनल डेटा मॉडलिंग के प्रभुत्व से पहले, लगभग 1980 से 2005 तक, [[पदानुक्रमित डेटाबेस मॉडल]] का आमतौर पर उपयोग किया जाता था। 2000 या 2010 के बाद से, कई NoSQL मॉडल जो गैर-संबंधपरक हैं, जिनमें दस्तावेज़, ट्रिपल, की-वैल्यू स्टोर और ग्राफ़ शामिल हैं, लोकप्रिय हैं। निश्चित रूप से, भू-स्थानिक डेटा, टेम्पोरल डेटा और टेक्स्ट डेटा भी अलग-अलग मॉडल हैं, हालांकि अनुक्रमित, क्वेरी करने योग्य टेक्स्ट डेटा को आमतौर पर डेटाबेस के बजाय [[खोज इंजन]] कहा जाता है।{{Citation needed|date=March 2021}}
कुछ समय के लिए, यह सब भूल गया था (या अप्रासंगिक माना जाता था) कि रिलेशनल के अतिरिक्त कोई अन्य डेटाबेस मॉडल भी थे। संबंधपरक मॉडल और तीसरे सामान्य रूप की धारणा सभी डेटा संग्रहण के लिए डिफ़ॉल्ट मानक थे। चूँकि, रिलेशनल डेटा मॉडलिंग के प्रभुत्व से पहले, लगभग 1980 से 2005 तक, [[पदानुक्रमित डेटाबेस मॉडल]] का सम्मिलित उपयोग किया जाता था। 2000 या 2010 के बाद से, कई नोएसक्यूएल मॉडल जो गैर-संबंधपरक हैं, जिनमें दस्तावेज़, ट्रिपल, की-वैल्यू स्टोर और ग्राफ़ सम्मिलित हैं, लोकप्रिय हैं। निश्चित रूप से, भू-स्थानिक डेटा, टेम्पोरल डेटा और टेक्स्ट डेटा भी अलग-अलग मॉडल हैं, हालांकि अनुक्रमित, क्वेरी करने योग्य टेक्स्ट डेटा को सम्मिलित डेटाबेस के अतिरिक्त [[खोज इंजन]] कहा जाता है।{{Citation needed|date=March 2021}}


पहली बार मल्टी-मॉडल शब्द को डेटाबेस से जोड़ा गया है, 30 मई, 2012 को कोलोन, जर्मनी में, [[लुका गरुल्ली]] के मुख्य नोट NoSQL एडॉप्शन - व्हाट्स द नेक्स्ट स्टेप के दौरान? .<ref>{{Cite web|date=2012-06-01|title=Multi-Model storage 1/2 one product|url=http://www.slideshare.net/lvca/no-sql-matters2012keynote/47-MultiModel_storage_12_one_product}}</ref><ref>{{Cite web|url=https://2012.nosql-matters.org/cgn/wp-content/uploads/2012/06/KeyNote-Luca-Garulli.pdf|title=Nosql Matters Conference 2012 {{!}} NoSQL Matters CGN 2012|website=2012.nosql-matters.org|access-date=2017-01-12}}</ref> लुका गरुल्ली ने पहली पीढ़ी के NoSQL उत्पादों के नए उत्पादों में विकास की कल्पना की, जिसमें कई उपयोग मामलों द्वारा उपयोग की जाने वाली अधिक सुविधाएँ हैं।
पहली बार बहु-मॉडल शब्द को डेटाबेस से जोड़ा गया है, 30 मई, 2012 को कोलोन, जर्मनी में, [[लुका गरुल्ली]] के मुख्य नोट नोएसक्यूएल एडॉप्शन - व्हाट्स द नेक्स्ट स्टेप के दौरान? .<ref>{{Cite web|date=2012-06-01|title=Multi-Model storage 1/2 one product|url=http://www.slideshare.net/lvca/no-sql-matters2012keynote/47-MultiModel_storage_12_one_product}}</ref><ref>{{Cite web|url=https://2012.nosql-matters.org/cgn/wp-content/uploads/2012/06/KeyNote-Luca-Garulli.pdf|title=Nosql Matters Conference 2012 {{!}} NoSQL Matters CGN 2012|website=2012.nosql-matters.org|access-date=2017-01-12}}</ref> लुका गरुल्ली ने पहली पीढ़ी के नोएसक्यूएल उत्पादों के नए उत्पादों में विकास की कल्पना की, जिसमें कई उपयोग मामलों द्वारा उपयोग की जाने वाली अधिक सुविधाएँ हैं।


बहु-मॉडल डेटाबेस के विचार को 1990 के दशक की शुरुआत में ऑब्जेक्ट-रिलेशनल डेटाबेस | ऑब्जेक्ट-रिलेशनल डेटा मैनेजमेंट सिस्टम्स (ORDBMS) और 1980 के दशक की शुरुआत में फ़ेडरेटेड और एकीकृत DBMSs तक अधिक व्यापक दायरे में देखा जा सकता है। ORDBMS सिस्टम DBMS कर्नेल में डोमेन विशिष्ट डेटा प्रकार, फ़ंक्शंस और इंडेक्स कार्यान्वयन को प्लग करके विभिन्न प्रकार के डेटा जैसे रिलेशनल, ऑब्जेक्ट, टेक्स्ट और स्थानिक का प्रबंधन करता है। मार्टिन फाउलर द्वारा वर्णित बहु-मॉडल क्षमता प्राप्त करने के लिए, बहु-मॉडल डेटाबेस सबसे प्रत्यक्ष रूप से बहु-डेटाबेस उत्पादों को साथ बुनाई के बहुभाषा दृढ़ता दृष्टिकोण की प्रतिक्रिया है, प्रत्येक अलग मॉडल को सौंपता है।<ref name="polyglot">[http://martinfowler.com/bliki/PolyglotPersistence.html Polyglot Persistence]</ref> इस रणनीति के दो प्रमुख नुकसान हैं: यह परिचालन जटिलता में उल्लेखनीय वृद्धि की ओर जाता है, और अलग-अलग डेटा स्टोरों में डेटा स्थिरता बनाए रखने के लिए कोई समर्थन नहीं है, इसलिए बहु-मॉडल डेटाबेस ने इस अंतर को भरना शुरू कर दिया है।
बहु-मॉडल डेटाबेस के विचार को 1990 के दशक की शुरुआत में ऑब्जेक्ट-रिलेशनल डेटाबेस मैनेजमेंट सिस्टम्स (ओआरडीबीएमएस) और 1980 के दशक की शुरुआत में फ़ेडरेटेड और एकीकृत डीबीएमएसएस तक अधिक व्यापक दायरे में देखा जा सकता है। ओआरडीबीएमएस सिस्टम डीबीएमएस कर्नेल में डोमेन विशिष्ट डेटा प्रकार, फ़ंक्शंस और इंडेक्स कार्यान्वयन को प्लग करके विभिन्न प्रकार के डेटा जैसे रिलेशनल, ऑब्जेक्ट, टेक्स्ट और स्थानिक का प्रबंधन करता है। मार्टिन फाउलर द्वारा वर्णित बहु-मॉडल क्षमता प्राप्त करने के लिए, बहु-मॉडल डेटाबेस सबसे प्रत्यक्ष रूप से बहु-डेटाबेस उत्पादों को साथ बुनाई के बहुभाषा दृढ़ता दृष्टिकोण की प्रतिक्रिया है, प्रत्येक अलग मॉडल को सौंपता है।<ref name="polyglot">[http://martinfowler.com/bliki/PolyglotPersistence.html Polyglot Persistence]</ref> इस रणनीति के दो प्रमुख हानि हैं: यह परिचालन जटिलता में उल्लेखनीय वृद्धि की ओर जाता है, और अलग-अलग डेटा स्टोरों में डेटा स्थिरता बनाए रखने के लिए कोई समर्थन नहीं है, इसलिए बहु-मॉडल डेटाबेस ने इस अंतर को भरना शुरू कर दिया है।


बहु-मॉडल डेटाबेस का उद्देश्य बहुभाषाविद दृढ़ता के डेटा मॉडलिंग लाभों की पेशकश करना है,<ref name="polyglot"/>इसके नुकसान के बिना। परिचालन जटिलता, विशेष रूप से, एकल डेटा स्टोर के उपयोग के माध्यम से कम हो जाती है।<ref name="rise"/>
बहु-मॉडल डेटाबेस का उद्देश्य बिना किसी हानि के बहुभाषाविद दृढ़ता के डेटा मॉडलिंग लाभों की प्रस्तुति करना है।<ref name="polyglot"/> परिचालन जटिलता, विशेष रूप से, एकल डेटा स्टोर के उपयोग के माध्यम से कम हो जाती है।<ref name="rise"/>




== डेटाबेस ==
== डेटाबेस ==
{{Main article|Comparison of multi-model databases}}
{{Main article|बहु-मॉडल डेटाबेस की तुलना}}
बहु-मॉडल डेटाबेस में शामिल हैं (वर्णमाला क्रम में):
बहु-मॉडल डेटाबेस में सम्मिलित हैं (वर्णमाला क्रम में):
* [[AllegroGraph]] - दस्तावेज़ (JSON, JSON-LD), ग्राफ़
* [[AllegroGraph|एलेग्रोग्राफ]] - दस्तावेज़ (जेएसओएन, जेएसओएन-एलडी), ग्राफ़
* [[ArangoDB]] - दस्तावेज़ (JSON), ग्राफ़, की-वैल्यू
* [[ArangoDB|आरंगोडीबी]] - दस्तावेज़ (जेएसओएन), ग्राफ़, की-वैल्यू
* [[आर्केडडीबी]] - दस्तावेज़ (जेएसओएन), ग्राफ, कुंजी-मूल्य, समय-श्रृंखला, [[एसक्यूएल]], [[साइफर (क्वेरी भाषा)]], [[ग्रेमलिन (क्वेरी भाषा)]]
* [[आर्केडडीबी]] - दस्तावेज़ (जेएसओएन), ग्राफ, कुंजी-मूल्य, समय-श्रृंखला, [[एसक्यूएल]], [[साइफर (क्वेरी भाषा)]], [[ग्रेमलिन (क्वेरी भाषा)]]
* [[Cosmos DB]] - दस्तावेज़ (JSON), ग्राफ़,<ref>{{Cite web|url=https://docs.microsoft.com/en-us/azure/cosmos-db/create-graph-dotnet|title = Build an Azure Cosmos DB .NET Framework, Core application using the Gremlin API}}</ref> की-वैल्यू, एसक्यूएल
* [[Cosmos DB|ब्रह्मांड डीबी]] - दस्तावेज़ (जेएसओएन), ग्राफ़,<ref>{{Cite web|url=https://docs.microsoft.com/en-us/azure/cosmos-db/create-graph-dotnet|title = Build an Azure Cosmos DB .NET Framework, Core application using the Gremlin API}}</ref> की-वैल्यू, एसक्यूएल
* [[काउचबेस]] - दस्तावेज़ (JSON), की-वैल्यू, [[N1QL]]
* [[काउचबेस]] - दस्तावेज़ (जेएसओएन), की-वैल्यू, [[N1QL]]
* [[डेटास्टैक्स]] - कुंजी-मूल्य, सारणीबद्ध, ग्राफ
* [[डेटास्टैक्स]] - कुंजी-मूल्य, सारणीबद्ध, ग्राफ
* [[EnterpriseDB]] - दस्तावेज़ ([[XML]] और JSON), की-वैल्यू
* [[EnterpriseDB|एंटरप्राइजडीबी]] - दस्तावेज़ ([[XML|एक्सएमएल]] और जेएसओएन), की-वैल्यू
* [[MarkLogic]] - दस्तावेज़ (XML और JSON), ग्राफ़ ट्रिपलस्टोर, बाइनरी, SQL
* [[MarkLogic|मार्कलॉजिक]] - दस्तावेज़ (एक्सएमएल और जेएसओएन), ग्राफ़ ट्रिपलस्टोर, बाइनरी, एसक्यूएल
* [[Microsoft Azure SQL डेटाबेस]] - संबंधपरक, दस्तावेज़ (JSON), ग्राफ़, XML
* [[Microsoft Azure SQL डेटाबेस|माइक्रोसॉफ्ट एज़्योर एसक्यूएल डेटाबेस]] - संबंधपरक, दस्तावेज़ (जेएसओएन), ग्राफ़, एक्सएमएल
* Oracle डाटाबेस - रिलेशनल, डॉक्यूमेंट (JSON और XML), ग्राफ ट्रिपलस्टोर, प्रॉपर्टी ग्राफ, की-वैल्यू, ऑब्जेक्ट्स
* ओरेकल डाटाबेस - रिलेशनल, डॉक्यूमेंट (जेएसओएन और एक्सएमएल), ग्राफ ट्रिपलस्टोर, प्रॉपर्टी ग्राफ, की-वैल्यू, ऑब्जेक्ट्स
* [[ओरिएंटडीबी]] - दस्तावेज़ (जेएसओएन), ग्राफ, कुंजी-मूल्य, प्रतिक्रियाशील, एसक्यूएल
* [[ओरिएंटडीबी]] - दस्तावेज़ (जेएसओएन), ग्राफ, कुंजी-मूल्य, प्रतिक्रियाशील, एसक्यूएल
* [[PostgreSQL]] - रिलेशनल, डॉक्यूमेंट (JSON और XML), की-वैल्यू, ग्राफ, एरेज़, ऑब्जेक्ट्स
* [[PostgreSQL|पोस्टग्रेजएसक्यूएल]] - रिलेशनल, डॉक्यूमेंट (जेएसओएन और एक्सएमएल), की-वैल्यू, ग्राफ, एरेज़, ऑब्जेक्ट्स
* [[रेडिस]] - की-वैल्यू, डॉक्यूमेंट (JSON), प्रॉपर्टी ग्राफ, स्ट्रीमिंग, टाइम-सीरीज़
* [[रेडिस]] - की-वैल्यू, डॉक्यूमेंट (जेएसओएन), प्रॉपर्टी ग्राफ, स्ट्रीमिंग, टाइम-सीरीज़
* [[सैप हाना]] - संबंधपरक, दस्तावेज़ (जेएसओएन), ग्राफ, स्ट्रीमिंग
* [[सैप हाना]] - संबंधपरक, दस्तावेज़ (जेएसओएन), ग्राफ, स्ट्रीमिंग
* [[कलाप्रवीण व्यक्ति यूनिवर्सल सर्वर]] - [[ओरेकल डाटाबेस]], डॉक्यूमेंट (XML), ट्रिपलस्टोर
* [[कलाप्रवीण व्यक्ति यूनिवर्सल सर्वर]] - [[ओरेकल डाटाबेस]], डॉक्यूमेंट (एक्सएमएल), ट्रिपलस्टोर


== बहु-मॉडल डेटाबेस बेंचमार्किंग ==
== बहु-मॉडल डेटाबेस बेंचमार्किंग ==
जैसा कि बहु-मॉडल डेटा से निपटने के लिए अधिक से अधिक प्लेटफॉर्म प्रस्तावित हैं, बहु-मॉडल डेटाबेस बेंचमार्किंग पर कुछ कार्य हैं। उदाहरण के लिए, प्लूसीनिक,<ref>{{Cite journal|last=Ewa Pluciennik and Kamil Zgorzalek|title=The Multi-model Databases - A Review|journal=Bdas 2017|pages=141–152}}</ref> ओलिविएरा,<ref>{{Cite journal|last=Fábio Roberto Oliveira, Luis del Val Cura|title=Performance Evaluation of NoSQL Multi-Model Data Stores in Polyglot Persistence Applications|journal=Ideas '16|pages=230–235}}</ref> और यूनीबेंच<ref>{{Cite journal|last=Chao Zhang, Jiaheng Lu, Pengfei Xu, Yuxing Chen|title=UniBench: A Benchmark for Multi-Model Database Management Systems|url=https://www.cs.helsinki.fi/u/jilu/documents/UniBench.pdf|journal=TPCTC 2018}}</ref> मौजूदा मल्टी-मॉडल डेटाबेस की समीक्षा की और क्रमशः मल्टी-मॉडल डेटाबेस और अन्य SQL और NoSQL डेटाबेस की तुलना करने के लिए मूल्यांकन प्रयास किया। उन्होंने बताया कि एकल-मॉडल डेटाबेस की तुलना में मल्टी-मॉडल डेटाबेस के लाभ इस प्रकार हैं: {{olist|list-style-type=lower-roman| they are able to ingest a variety of data formats such as CSV (including Graph, Relational), JSON into storage without any additional efforts. | they can employ a unified query language such as AQL, Orient SQL, SQL/XML, SQL/JSON to retrieve correlated multi-model data, such as graph-JSON-key/value, XML-relational, and JSON-relational in a single platform. | they are able to support multi-model ACID transactions in the stand-alone mode.}}
जैसा कि बहु-मॉडल डेटा से निपटने के लिए अधिक से अधिक प्लेटफॉर्म प्रस्तावित हैं, बहु-मॉडल डेटाबेस बेंचमार्किंग पर कुछ कार्य हैं। उदाहरण के लिए, प्लूसीनिक,<ref>{{Cite journal|last=Ewa Pluciennik and Kamil Zgorzalek|title=The Multi-model Databases - A Review|journal=Bdas 2017|pages=141–152}}</ref> ओलिविएरा,<ref>{{Cite journal|last=Fábio Roberto Oliveira, Luis del Val Cura|title=Performance Evaluation of NoSQL Multi-Model Data Stores in Polyglot Persistence Applications|journal=Ideas '16|pages=230–235}}</ref> और यूनीबेंच<ref>{{Cite journal|last=Chao Zhang, Jiaheng Lu, Pengfei Xu, Yuxing Chen|title=UniBench: A Benchmark for Multi-Model Database Management Systems|url=https://www.cs.helsinki.fi/u/jilu/documents/UniBench.pdf|journal=TPCTC 2018}}</ref> वर्तमान बहु-मॉडल डेटाबेस की समीक्षा की और क्रमशः बहु-मॉडल डेटाबेस और अन्य एसक्यूएल और नोएसक्यूएल डेटाबेस की तुलना करने के लिए मूल्यांकन प्रयास किया था। उन्होंने बताया कि एकल-मॉडल डेटाबेस की तुलना में बहु-मॉडल डेटाबेस के लाभ इस प्रकार हैं: {{olist|list-style-type=निचला रोमन|वे विभिन्न प्रकार के डेटा प्रारूपों जैसे सीएसवी (ग्राफ़, रिलेशनल सहित), जेएसओएन को बिना किसी अतिरिक्त प्रयास के स्टोरेज में ले जाने में सक्षम हैं।|वे सहसंबद्ध बहु-मॉडल डेटा, जैसे ग्राफ़-जेएसओएन-कुंजी/मान, एक्सएमएल-रिलेशनल, और जेएसओएन-रिलेशनल को पुनः प्राप्त करने के लिए एक्यूएल, ओरिएंट एसक्यूएल, एसक्यूएल/एक्सएमएल, एसक्यूएल/जेएसओएन जैसी एकीकृत  प्लैटफ़ॉर्म क्वेरी भाषा को नियोजित कर सकते हैं।|वे स्टैंड-अलोन मोड में बहु-मॉडल एसीआईडी ​​लेनदेन का समर्थन करने में सक्षम हैं।}}




== वास्तु ==
== वास्तु ==
उपलब्ध मल्टी-मॉडल डेटाबेस के बीच मुख्य अंतर उनके आर्किटेक्चर से संबंधित है। बहु-मॉडल डेटाबेस इंजन के भीतर या इंजन के शीर्ष पर विभिन्न परतों के माध्यम से विभिन्न मॉडलों का समर्थन कर सकते हैं। कुछ उत्पाद इंजन प्रदान कर सकते हैं जो दस्तावेज़ों और ग्राफ़ का समर्थन करता है जबकि अन्य कुंजी-कुंजी स्टोर के शीर्ष पर परतें प्रदान करते हैं।<ref>[http://blog.foundationdb.com/7-things-that-make-google-f1-and-the-foundationdb-sql-layer-so-strikingly-similar, "layer"]</ref> स्तरित वास्तुकला के साथ, प्रत्येक डेटा मॉडल अपने घटक-आधारित सॉफ़्टवेयर इंजीनियरिंग के माध्यम से प्रदान किया जाता है।
उपलब्ध बहु-मॉडल डेटाबेस के बीच मुख्य अंतर उनके आर्किटेक्चर से संबंधित है। बहु-मॉडल डेटाबेस इंजन के भीतर या इंजन के शीर्ष पर विभिन्न परतों के माध्यम से विभिन्न मॉडलों का समर्थन कर सकते हैं। कुछ उत्पाद इंजन प्रदान कर सकते हैं जो दस्तावेज़ों और ग्राफ़ का समर्थन करता है जबकि अन्य कुंजी-कुंजी स्टोर के शीर्ष पर परतें प्रदान करते हैं।<ref>[http://blog.foundationdb.com/7-things-that-make-google-f1-and-the-foundationdb-sql-layer-so-strikingly-similar, "layer"]</ref> स्तरित वास्तुकला के साथ, प्रत्येक डेटा मॉडल अपने घटक-आधारित सॉफ़्टवेयर इंजीनियरिंग के माध्यम से प्रदान किया जाता है।


== उपयोगकर्ता परिभाषित डेटा मॉडल ==
== उपयोगकर्ता परिभाषित डेटा मॉडल ==
डेटा स्टोर में कई डेटा मॉडल पेश करने के अलावा, कुछ डेटाबेस डेवलपर्स को कस्टम डेटा मॉडल को आसानी से परिभाषित करने की अनुमति देते हैं। यह क्षमता उच्च प्रदर्शन और मापनीयता के साथ एसीआईडी ​​​​लेनदेन द्वारा सक्षम है। कस्टम डेटा मॉडल के लिए समवर्ती अद्यतनों का समर्थन करने के लिए, डेटाबेस को कई कुंजियों में अद्यतनों को सिंक्रनाइज़ करने में सक्षम होना चाहिए। ACID लेन-देन, यदि वे पर्याप्त रूप से निष्पादक हैं, तो ऐसे तुल्यकालन की अनुमति दें।<ref name="multiple">[http://www.odbms.org/wp-content/uploads/2014/04/Multiple-Data-Models.pdf ODBMS, "Polyglot Persistence or Multiple Data Models?"]</ref> JSON दस्तावेज़, ग्राफ़ और रिलेशनल टेबल सभी को इस तरह से लागू किया जा सकता है जो अंतर्निहित डेटा स्टोर की क्षैतिज मापनीयता और दोष-सहिष्णुता को प्राप्त करता है।
डेटा स्टोर में कई डेटा मॉडल पेश करने के अतिरिक्त, कुछ डेटाबेस डेवलपर्स को कस्टम डेटा मॉडल को आसानी से परिभाषित करने की अनुमति देते हैं। यह क्षमता उच्च प्रदर्शन और मापनीयता के साथ एसीआईडी ​​​​लेनदेन द्वारा सक्षम है। कस्टम डेटा मॉडल के लिए समवर्ती अद्यतनों का समर्थन करने के लिए, डेटाबेस को कई कुंजियों में अद्यतनों को सिंक्रनाइज़ करने में सक्षम होना चाहिए। एसीआईडी लेन-देन, यदि वे पर्याप्त रूप से निष्पादक हैं, तो ऐसे तुल्यकालन की अनुमति दें।<ref name="multiple">[http://www.odbms.org/wp-content/uploads/2014/04/Multiple-Data-Models.pdf ODBMS, "Polyglot Persistence or Multiple Data Models?"]</ref> जेएसओएन दस्तावेज़, ग्राफ़ और रिलेशनल टेबल सभी को इस तरह से लागू किया जा सकता है जो अंतर्निहित डेटा स्टोर की क्षैतिज मापनीयता और दोष-सहिष्णुता को प्राप्त करता है।


== यह भी देखें ==
== यह भी देखें ==
Line 67: Line 67:
* [http://martinfowler.com/bliki/PolyglotPersistence.html Polyglot Persistence]
* [http://martinfowler.com/bliki/PolyglotPersistence.html Polyglot Persistence]
* [http://blogs.the451group.com/information_management/2013/02/08/neither-fish-nor-fowl/ The 451 Group, "Neither Fish Nor Fowl: The Rise of Multi-Model Databases"]
* [http://blogs.the451group.com/information_management/2013/02/08/neither-fish-nor-fowl/ The 451 Group, "Neither Fish Nor Fowl: The Rise of Multi-Model Databases"]
* [http://www.odbms.org/blog/2013/10/on-multi-model-databases-interview-with-martin-schonert-and-frank-celler/ ODBMS, "On Multi-Model Databases. Interview with Martin Schönert and Frank Celler."]
* [http://www.odbms.org/blog/2013/10/on-multi-model-databases-interview-with-martin-schonert-and-frank-celler/ Oडीबीएमएस, "On Multi-Model Databases. Interview with Martin Schönert and Frank Celler."]
* [http://www.odbms.org/wp-content/uploads/2014/04/Multiple-Data-Models.pdf ODBMS, "Polyglot Persistence or Multiple Data Models?"]
* [http://www.odbms.org/wp-content/uploads/2014/04/Multiple-Data-Models.pdf Oडीबीएमएस, "Polyglot Persistence or Multiple Data Models?"]
* [http://www.infoworld.com/article/2861579/database/the-rise-of-the-multimodel-database.html Infoworld, "The Rise of the Multi-Model Database"]
* [http://www.infoworld.com/article/2861579/database/the-rise-of-the-multimodel-database.html Infoworld, "The Rise of the Multi-Model Database"]


{{DEFAULTSORT:Multi-model Database}}[[Category: वितरित कंप्यूटिंग के अनुप्रयोग]] [[Category: डेटाबेस]] [[Category: डेटा प्रबंधन]] [[Category: वितरित कंप्यूटिंग वास्तुकला]] [[Category: वितरित डेटा स्टोर]] [[Category: नोएसक्यूएल]] [[Category: संरचित भंडारण]] [[Category: लेनदेन प्रक्रिया]] [[Category: डेटा विश्लेषण]] [[Category: बड़ा डेटा]]
{{DEFAULTSORT:Multi-model Database}}


 
[[Category:All articles with unsourced statements|Multi-model Database]]
 
[[Category:Articles with hatnote templates targeting a nonexistent page|Multi-model Database]]
[[Category: Machine Translated Page]]
[[Category:Articles with unsourced statements from March 2021|Multi-model Database]]
[[Category:Created On 16/02/2023]]
[[Category:CS1 maint]]
[[Category:Created On 16/02/2023|Multi-model Database]]
[[Category:Lua-based templates|Multi-model Database]]
[[Category:Machine Translated Page|Multi-model Database]]
[[Category:Pages with script errors|Multi-model Database]]
[[Category:Short description with empty Wikidata description|Multi-model Database]]
[[Category:Templates Vigyan Ready|Multi-model Database]]
[[Category:Templates that add a tracking category|Multi-model Database]]
[[Category:Templates that generate short descriptions|Multi-model Database]]
[[Category:Templates using TemplateData|Multi-model Database]]
[[Category:डेटा प्रबंधन|Multi-model Database]]
[[Category:डेटा विश्लेषण|Multi-model Database]]
[[Category:डेटाबेस|Multi-model Database]]
[[Category:नोएसक्यूएल|Multi-model Database]]
[[Category:बड़ा डेटा|Multi-model Database]]
[[Category:लेनदेन प्रक्रिया|Multi-model Database]]
[[Category:वितरित कंप्यूटिंग के अनुप्रयोग|Multi-model Database]]
[[Category:वितरित कंप्यूटिंग वास्तुकला|Multi-model Database]]
[[Category:वितरित डेटा स्टोर|Multi-model Database]]
[[Category:संरचित भंडारण|Multi-model Database]]

Latest revision as of 15:30, 16 March 2023

डेटाबेस डिज़ाइन के क्षेत्र में, बहु-मॉडल डेटाबेस एक डेटाबेस प्रबंधन प्रणाली है जिसे एकल, एकीकृत पश्‍च सिरा के विरुद्ध कई डेटाबेस मॉडल का समर्थन करने के लिए डिज़ाइन किया गया है। इसके विपरीत, अधिकांश डेटाबेस प्रबंधन प्रणालियाँ एकल डेटा मॉडल के आसपास व्यवस्थित होती हैं जो यह निर्धारित करती हैं कि डेटा को कैसे व्यवस्थित, संग्रहीत और हेरफेर किया जा सकता है।[1] दस्तावेज़-उन्मुख डेटाबेस, ग्राफ डेटाबेस, संबंध का डेटाबेस और की-वैल्यू मॉडल डेटा मॉडल के उदाहरण हैं जो बहु-मॉडल डेटाबेस द्वारा समर्थित हो सकते हैं।

पृष्ठभूमि

1970 में एडगर एफ. कॉड द्वारा प्रकाशन के बाद संबंधपरक मॉडल डेटा मॉडल लोकप्रिय हो गया था। क्षैतिज मापनीयता और दोष सहिष्णुता के लिए बढ़ती आवश्यकताओं के कारण, नोएसक्यूएल डेटाबेस 2009 के बाद प्रमुख हो गए। नोएसक्यूएल डेटाबेस विभिन्न प्रकार के डेटा मॉडल का उपयोग करते हैं, साथ में दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस और कुंजी-मूल्य मॉडल लोकप्रिय हैं।[2]

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

कुछ समय के लिए, यह सब भूल गया था (या अप्रासंगिक माना जाता था) कि रिलेशनल के अतिरिक्त कोई अन्य डेटाबेस मॉडल भी थे। संबंधपरक मॉडल और तीसरे सामान्य रूप की धारणा सभी डेटा संग्रहण के लिए डिफ़ॉल्ट मानक थे। चूँकि, रिलेशनल डेटा मॉडलिंग के प्रभुत्व से पहले, लगभग 1980 से 2005 तक, पदानुक्रमित डेटाबेस मॉडल का सम्मिलित उपयोग किया जाता था। 2000 या 2010 के बाद से, कई नोएसक्यूएल मॉडल जो गैर-संबंधपरक हैं, जिनमें दस्तावेज़, ट्रिपल, की-वैल्यू स्टोर और ग्राफ़ सम्मिलित हैं, लोकप्रिय हैं। निश्चित रूप से, भू-स्थानिक डेटा, टेम्पोरल डेटा और टेक्स्ट डेटा भी अलग-अलग मॉडल हैं, हालांकि अनुक्रमित, क्वेरी करने योग्य टेक्स्ट डेटा को सम्मिलित डेटाबेस के अतिरिक्त खोज इंजन कहा जाता है।[citation needed]

पहली बार बहु-मॉडल शब्द को डेटाबेस से जोड़ा गया है, 30 मई, 2012 को कोलोन, जर्मनी में, लुका गरुल्ली के मुख्य नोट नोएसक्यूएल एडॉप्शन - व्हाट्स द नेक्स्ट स्टेप के दौरान? .[3][4] लुका गरुल्ली ने पहली पीढ़ी के नोएसक्यूएल उत्पादों के नए उत्पादों में विकास की कल्पना की, जिसमें कई उपयोग मामलों द्वारा उपयोग की जाने वाली अधिक सुविधाएँ हैं।

बहु-मॉडल डेटाबेस के विचार को 1990 के दशक की शुरुआत में ऑब्जेक्ट-रिलेशनल डेटाबेस मैनेजमेंट सिस्टम्स (ओआरडीबीएमएस) और 1980 के दशक की शुरुआत में फ़ेडरेटेड और एकीकृत डीबीएमएसएस तक अधिक व्यापक दायरे में देखा जा सकता है। ओआरडीबीएमएस सिस्टम डीबीएमएस कर्नेल में डोमेन विशिष्ट डेटा प्रकार, फ़ंक्शंस और इंडेक्स कार्यान्वयन को प्लग करके विभिन्न प्रकार के डेटा जैसे रिलेशनल, ऑब्जेक्ट, टेक्स्ट और स्थानिक का प्रबंधन करता है। मार्टिन फाउलर द्वारा वर्णित बहु-मॉडल क्षमता प्राप्त करने के लिए, बहु-मॉडल डेटाबेस सबसे प्रत्यक्ष रूप से बहु-डेटाबेस उत्पादों को साथ बुनाई के बहुभाषा दृढ़ता दृष्टिकोण की प्रतिक्रिया है, प्रत्येक अलग मॉडल को सौंपता है।[5] इस रणनीति के दो प्रमुख हानि हैं: यह परिचालन जटिलता में उल्लेखनीय वृद्धि की ओर जाता है, और अलग-अलग डेटा स्टोरों में डेटा स्थिरता बनाए रखने के लिए कोई समर्थन नहीं है, इसलिए बहु-मॉडल डेटाबेस ने इस अंतर को भरना शुरू कर दिया है।

बहु-मॉडल डेटाबेस का उद्देश्य बिना किसी हानि के बहुभाषाविद दृढ़ता के डेटा मॉडलिंग लाभों की प्रस्तुति करना है।[5] परिचालन जटिलता, विशेष रूप से, एकल डेटा स्टोर के उपयोग के माध्यम से कम हो जाती है।[2]


डेटाबेस

बहु-मॉडल डेटाबेस में सम्मिलित हैं (वर्णमाला क्रम में):

बहु-मॉडल डेटाबेस बेंचमार्किंग

जैसा कि बहु-मॉडल डेटा से निपटने के लिए अधिक से अधिक प्लेटफॉर्म प्रस्तावित हैं, बहु-मॉडल डेटाबेस बेंचमार्किंग पर कुछ कार्य हैं। उदाहरण के लिए, प्लूसीनिक,[7] ओलिविएरा,[8] और यूनीबेंच[9] वर्तमान बहु-मॉडल डेटाबेस की समीक्षा की और क्रमशः बहु-मॉडल डेटाबेस और अन्य एसक्यूएल और नोएसक्यूएल डेटाबेस की तुलना करने के लिए मूल्यांकन प्रयास किया था। उन्होंने बताया कि एकल-मॉडल डेटाबेस की तुलना में बहु-मॉडल डेटाबेस के लाभ इस प्रकार हैं:

  1. वे विभिन्न प्रकार के डेटा प्रारूपों जैसे सीएसवी (ग्राफ़, रिलेशनल सहित), जेएसओएन को बिना किसी अतिरिक्त प्रयास के स्टोरेज में ले जाने में सक्षम हैं।
  2. वे सहसंबद्ध बहु-मॉडल डेटा, जैसे ग्राफ़-जेएसओएन-कुंजी/मान, एक्सएमएल-रिलेशनल, और जेएसओएन-रिलेशनल को पुनः प्राप्त करने के लिए एक्यूएल, ओरिएंट एसक्यूएल, एसक्यूएल/एक्सएमएल, एसक्यूएल/जेएसओएन जैसी एकीकृत प्लैटफ़ॉर्म क्वेरी भाषा को नियोजित कर सकते हैं।
  3. वे स्टैंड-अलोन मोड में बहु-मॉडल एसीआईडी ​​लेनदेन का समर्थन करने में सक्षम हैं।


वास्तु

उपलब्ध बहु-मॉडल डेटाबेस के बीच मुख्य अंतर उनके आर्किटेक्चर से संबंधित है। बहु-मॉडल डेटाबेस इंजन के भीतर या इंजन के शीर्ष पर विभिन्न परतों के माध्यम से विभिन्न मॉडलों का समर्थन कर सकते हैं। कुछ उत्पाद इंजन प्रदान कर सकते हैं जो दस्तावेज़ों और ग्राफ़ का समर्थन करता है जबकि अन्य कुंजी-कुंजी स्टोर के शीर्ष पर परतें प्रदान करते हैं।[10] स्तरित वास्तुकला के साथ, प्रत्येक डेटा मॉडल अपने घटक-आधारित सॉफ़्टवेयर इंजीनियरिंग के माध्यम से प्रदान किया जाता है।

उपयोगकर्ता परिभाषित डेटा मॉडल

डेटा स्टोर में कई डेटा मॉडल पेश करने के अतिरिक्त, कुछ डेटाबेस डेवलपर्स को कस्टम डेटा मॉडल को आसानी से परिभाषित करने की अनुमति देते हैं। यह क्षमता उच्च प्रदर्शन और मापनीयता के साथ एसीआईडी ​​​​लेनदेन द्वारा सक्षम है। कस्टम डेटा मॉडल के लिए समवर्ती अद्यतनों का समर्थन करने के लिए, डेटाबेस को कई कुंजियों में अद्यतनों को सिंक्रनाइज़ करने में सक्षम होना चाहिए। एसीआईडी लेन-देन, यदि वे पर्याप्त रूप से निष्पादक हैं, तो ऐसे तुल्यकालन की अनुमति दें।[11] जेएसओएन दस्तावेज़, ग्राफ़ और रिलेशनल टेबल सभी को इस तरह से लागू किया जा सकता है जो अंतर्निहित डेटा स्टोर की क्षैतिज मापनीयता और दोष-सहिष्णुता को प्राप्त करता है।

यह भी देखें

संदर्भ

  1. The 451 Group, "Neither Fish Nor Fowl: The Rise of Multi-Model Databases"
  2. 2.0 2.1 Infoworld, "The Rise of the Multi-Model Database"
  3. "Multi-Model storage 1/2 one product". 2012-06-01.
  4. "Nosql Matters Conference 2012 | NoSQL Matters CGN 2012" (PDF). 2012.nosql-matters.org. Retrieved 2017-01-12.
  5. 5.0 5.1 Polyglot Persistence
  6. "Build an Azure Cosmos DB .NET Framework, Core application using the Gremlin API".
  7. Ewa Pluciennik and Kamil Zgorzalek. "The Multi-model Databases - A Review". Bdas 2017: 141–152.
  8. Fábio Roberto Oliveira, Luis del Val Cura. "Performance Evaluation of NoSQL Multi-Model Data Stores in Polyglot Persistence Applications". Ideas '16: 230–235.
  9. Chao Zhang, Jiaheng Lu, Pengfei Xu, Yuxing Chen. "UniBench: A Benchmark for Multi-Model Database Management Systems" (PDF). TPCTC 2018.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  10. "layer"
  11. ODBMS, "Polyglot Persistence or Multiple Data Models?"


बाहरी संबंध