बहु-मॉडल डेटाबेस
डेटाबेस डिज़ाइन के क्षेत्र में, बहु-मॉडल डेटाबेस एक डेटाबेस प्रबंधन प्रणाली है जिसे एकल, एकीकृत पश्च सिरा के विरुद्ध कई डेटाबेस मॉडल का समर्थन करने के लिए डिज़ाइन किया गया है। इसके विपरीत, अधिकांश डेटाबेस प्रबंधन प्रणालियाँ एकल डेटा मॉडल के आसपास व्यवस्थित होती हैं जो यह निर्धारित करती हैं कि डेटा को कैसे व्यवस्थित, संग्रहीत और हेरफेर किया जा सकता है।[1] दस्तावेज़-उन्मुख डेटाबेस, ग्राफ डेटाबेस, संबंध का डेटाबेस और की-वैल्यू मॉडल डेटा मॉडल के उदाहरण हैं जो बहु-मॉडल डेटाबेस द्वारा समर्थित हो सकते हैं।
पृष्ठभूमि
1970 में एडगर एफ. कॉड द्वारा प्रकाशन के बाद संबंधपरक मॉडल डेटा मॉडल लोकप्रिय हो गया था। क्षैतिज मापनीयता और दोष सहिष्णुता के लिए बढ़ती आवश्यकताओं के कारण, नोएसक्यूएल डेटाबेस 2009 के बाद प्रमुख हो गए। नोएसक्यूएल डेटाबेस विभिन्न प्रकार के डेटा मॉडल का उपयोग करते हैं, साथ में दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस और कुंजी-मूल्य मॉडल लोकप्रिय हैं।[2]
बहु-मॉडल डेटाबेस डेटाबेस है जो से अधिक मॉडल में डेटा को भण्डारण, सूचकांक और क्वेरी कर सकता है। कुछ समय के लिए, डेटाबेस ने मुख्य रूप से केवल मॉडल का समर्थन किया है, जैसे: संबंधपरक डेटाबेस, दस्तावेज़-उन्मुख डेटाबेस, ग्राफ़ डेटाबेस या ट्रिपलस्टोर। डेटाबेस जो इनमें से कई को जोड़ता है वह बहु-मॉडल है।
कुछ समय के लिए, यह सब भूल गया था (या अप्रासंगिक माना जाता था) कि रिलेशनल के अतिरिक्त कोई अन्य डेटाबेस मॉडल भी थे। संबंधपरक मॉडल और तीसरे सामान्य रूप की धारणा सभी डेटा संग्रहण के लिए डिफ़ॉल्ट मानक थे। चूँकि, रिलेशनल डेटा मॉडलिंग के प्रभुत्व से पहले, लगभग 1980 से 2005 तक, पदानुक्रमित डेटाबेस मॉडल का सम्मिलित उपयोग किया जाता था। 2000 या 2010 के बाद से, कई नोएसक्यूएल मॉडल जो गैर-संबंधपरक हैं, जिनमें दस्तावेज़, ट्रिपल, की-वैल्यू स्टोर और ग्राफ़ सम्मिलित हैं, लोकप्रिय हैं। निश्चित रूप से, भू-स्थानिक डेटा, टेम्पोरल डेटा और टेक्स्ट डेटा भी अलग-अलग मॉडल हैं, हालांकि अनुक्रमित, क्वेरी करने योग्य टेक्स्ट डेटा को सम्मिलित डेटाबेस के अतिरिक्त खोज इंजन कहा जाता है।[citation needed]
पहली बार बहु-मॉडल शब्द को डेटाबेस से जोड़ा गया है, 30 मई, 2012 को कोलोन, जर्मनी में, लुका गरुल्ली के मुख्य नोट नोएसक्यूएल एडॉप्शन - व्हाट्स द नेक्स्ट स्टेप के दौरान? .[3][4] लुका गरुल्ली ने पहली पीढ़ी के नोएसक्यूएल उत्पादों के नए उत्पादों में विकास की कल्पना की, जिसमें कई उपयोग मामलों द्वारा उपयोग की जाने वाली अधिक सुविधाएँ हैं।
बहु-मॉडल डेटाबेस के विचार को 1990 के दशक की शुरुआत में ऑब्जेक्ट-रिलेशनल डेटाबेस मैनेजमेंट सिस्टम्स (ओआरडीबीएमएस) और 1980 के दशक की शुरुआत में फ़ेडरेटेड और एकीकृत डीबीएमएसएस तक अधिक व्यापक दायरे में देखा जा सकता है। ओआरडीबीएमएस सिस्टम डीबीएमएस कर्नेल में डोमेन विशिष्ट डेटा प्रकार, फ़ंक्शंस और इंडेक्स कार्यान्वयन को प्लग करके विभिन्न प्रकार के डेटा जैसे रिलेशनल, ऑब्जेक्ट, टेक्स्ट और स्थानिक का प्रबंधन करता है। मार्टिन फाउलर द्वारा वर्णित बहु-मॉडल क्षमता प्राप्त करने के लिए, बहु-मॉडल डेटाबेस सबसे प्रत्यक्ष रूप से बहु-डेटाबेस उत्पादों को साथ बुनाई के बहुभाषा दृढ़ता दृष्टिकोण की प्रतिक्रिया है, प्रत्येक अलग मॉडल को सौंपता है।[5] इस रणनीति के दो प्रमुख हानि हैं: यह परिचालन जटिलता में उल्लेखनीय वृद्धि की ओर जाता है, और अलग-अलग डेटा स्टोरों में डेटा स्थिरता बनाए रखने के लिए कोई समर्थन नहीं है, इसलिए बहु-मॉडल डेटाबेस ने इस अंतर को भरना शुरू कर दिया है।
बहु-मॉडल डेटाबेस का उद्देश्य बिना किसी हानि के बहुभाषाविद दृढ़ता के डेटा मॉडलिंग लाभों की प्रस्तुति करना है।[5] परिचालन जटिलता, विशेष रूप से, एकल डेटा स्टोर के उपयोग के माध्यम से कम हो जाती है।[2]
डेटाबेस
बहु-मॉडल डेटाबेस में सम्मिलित हैं (वर्णमाला क्रम में):
- एलेग्रोग्राफ - दस्तावेज़ (जेएसओएन, जेएसओएन-एलडी), ग्राफ़
- आरंगोडीबी - दस्तावेज़ (जेएसओएन), ग्राफ़, की-वैल्यू
- आर्केडडीबी - दस्तावेज़ (जेएसओएन), ग्राफ, कुंजी-मूल्य, समय-श्रृंखला, एसक्यूएल, साइफर (क्वेरी भाषा), ग्रेमलिन (क्वेरी भाषा)
- ब्रह्मांड डीबी - दस्तावेज़ (जेएसओएन), ग्राफ़,[6] की-वैल्यू, एसक्यूएल
- काउचबेस - दस्तावेज़ (जेएसओएन), की-वैल्यू, N1QL
- डेटास्टैक्स - कुंजी-मूल्य, सारणीबद्ध, ग्राफ
- एंटरप्राइजडीबी - दस्तावेज़ (एक्सएमएल और जेएसओएन), की-वैल्यू
- मार्कलॉजिक - दस्तावेज़ (एक्सएमएल और जेएसओएन), ग्राफ़ ट्रिपलस्टोर, बाइनरी, एसक्यूएल
- माइक्रोसॉफ्ट एज़्योर एसक्यूएल डेटाबेस - संबंधपरक, दस्तावेज़ (जेएसओएन), ग्राफ़, एक्सएमएल
- ओरेकल डाटाबेस - रिलेशनल, डॉक्यूमेंट (जेएसओएन और एक्सएमएल), ग्राफ ट्रिपलस्टोर, प्रॉपर्टी ग्राफ, की-वैल्यू, ऑब्जेक्ट्स
- ओरिएंटडीबी - दस्तावेज़ (जेएसओएन), ग्राफ, कुंजी-मूल्य, प्रतिक्रियाशील, एसक्यूएल
- पोस्टग्रेजएसक्यूएल - रिलेशनल, डॉक्यूमेंट (जेएसओएन और एक्सएमएल), की-वैल्यू, ग्राफ, एरेज़, ऑब्जेक्ट्स
- रेडिस - की-वैल्यू, डॉक्यूमेंट (जेएसओएन), प्रॉपर्टी ग्राफ, स्ट्रीमिंग, टाइम-सीरीज़
- सैप हाना - संबंधपरक, दस्तावेज़ (जेएसओएन), ग्राफ, स्ट्रीमिंग
- कलाप्रवीण व्यक्ति यूनिवर्सल सर्वर - ओरेकल डाटाबेस, डॉक्यूमेंट (एक्सएमएल), ट्रिपलस्टोर
बहु-मॉडल डेटाबेस बेंचमार्किंग
जैसा कि बहु-मॉडल डेटा से निपटने के लिए अधिक से अधिक प्लेटफॉर्म प्रस्तावित हैं, बहु-मॉडल डेटाबेस बेंचमार्किंग पर कुछ कार्य हैं। उदाहरण के लिए, प्लूसीनिक,[7] ओलिविएरा,[8] और यूनीबेंच[9] वर्तमान बहु-मॉडल डेटाबेस की समीक्षा की और क्रमशः बहु-मॉडल डेटाबेस और अन्य एसक्यूएल और नोएसक्यूएल डेटाबेस की तुलना करने के लिए मूल्यांकन प्रयास किया था। उन्होंने बताया कि एकल-मॉडल डेटाबेस की तुलना में बहु-मॉडल डेटाबेस के लाभ इस प्रकार हैं:
- वे विभिन्न प्रकार के डेटा प्रारूपों जैसे सीएसवी (ग्राफ़, रिलेशनल सहित), जेएसओएन को बिना किसी अतिरिक्त प्रयास के स्टोरेज में ले जाने में सक्षम हैं।
- वे सहसंबद्ध बहु-मॉडल डेटा, जैसे ग्राफ़-जेएसओएन-कुंजी/मान, एक्सएमएल-रिलेशनल, और जेएसओएन-रिलेशनल को पुनः प्राप्त करने के लिए एक्यूएल, ओरिएंट एसक्यूएल, एसक्यूएल/एक्सएमएल, एसक्यूएल/जेएसओएन जैसी एकीकृत प्लैटफ़ॉर्म क्वेरी भाषा को नियोजित कर सकते हैं।
- वे स्टैंड-अलोन मोड में बहु-मॉडल एसीआईडी लेनदेन का समर्थन करने में सक्षम हैं।
वास्तु
उपलब्ध बहु-मॉडल डेटाबेस के बीच मुख्य अंतर उनके आर्किटेक्चर से संबंधित है। बहु-मॉडल डेटाबेस इंजन के भीतर या इंजन के शीर्ष पर विभिन्न परतों के माध्यम से विभिन्न मॉडलों का समर्थन कर सकते हैं। कुछ उत्पाद इंजन प्रदान कर सकते हैं जो दस्तावेज़ों और ग्राफ़ का समर्थन करता है जबकि अन्य कुंजी-कुंजी स्टोर के शीर्ष पर परतें प्रदान करते हैं।[10] स्तरित वास्तुकला के साथ, प्रत्येक डेटा मॉडल अपने घटक-आधारित सॉफ़्टवेयर इंजीनियरिंग के माध्यम से प्रदान किया जाता है।
उपयोगकर्ता परिभाषित डेटा मॉडल
डेटा स्टोर में कई डेटा मॉडल पेश करने के अतिरिक्त, कुछ डेटाबेस डेवलपर्स को कस्टम डेटा मॉडल को आसानी से परिभाषित करने की अनुमति देते हैं। यह क्षमता उच्च प्रदर्शन और मापनीयता के साथ एसीआईडी लेनदेन द्वारा सक्षम है। कस्टम डेटा मॉडल के लिए समवर्ती अद्यतनों का समर्थन करने के लिए, डेटाबेस को कई कुंजियों में अद्यतनों को सिंक्रनाइज़ करने में सक्षम होना चाहिए। एसीआईडी लेन-देन, यदि वे पर्याप्त रूप से निष्पादक हैं, तो ऐसे तुल्यकालन की अनुमति दें।[11] जेएसओएन दस्तावेज़, ग्राफ़ और रिलेशनल टेबल सभी को इस तरह से लागू किया जा सकता है जो अंतर्निहित डेटा स्टोर की क्षैतिज मापनीयता और दोष-सहिष्णुता को प्राप्त करता है।
यह भी देखें
- बहु-मॉडल डेटाबेस की तुलना
- अम्ल
- बड़ा डेटा
- नोएसक्यूएल
- संरचित भंडारण सॉफ्टवेयर की तुलना
- डेटाबेस लेनदेन
- डेटा विश्लेषण
- वितरित डेटाबेस
- वितरित एसक्यूएल
- वितरित लेनदेन
- दस्तावेज़-उन्मुख डेटाबेस
- ग्राफ डेटाबेस
- संबंधपरक मॉडल
संदर्भ
- ↑ The 451 Group, "Neither Fish Nor Fowl: The Rise of Multi-Model Databases"
- ↑ 2.0 2.1 Infoworld, "The Rise of the Multi-Model Database"
- ↑ "Multi-Model storage 1/2 one product". 2012-06-01.
- ↑ "Nosql Matters Conference 2012 | NoSQL Matters CGN 2012" (PDF). 2012.nosql-matters.org. Retrieved 2017-01-12.
- ↑ 5.0 5.1 Polyglot Persistence
- ↑ "Build an Azure Cosmos DB .NET Framework, Core application using the Gremlin API".
- ↑ Ewa Pluciennik and Kamil Zgorzalek. "The Multi-model Databases - A Review". Bdas 2017: 141–152.
- ↑ Fábio Roberto Oliveira, Luis del Val Cura. "Performance Evaluation of NoSQL Multi-Model Data Stores in Polyglot Persistence Applications". Ideas '16: 230–235.
- ↑ 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) - ↑ "layer"
- ↑ ODBMS, "Polyglot Persistence or Multiple Data Models?"