डीबीएम (कंप्यूटिंग)

कंप्यूटिंग में, डीबीएम एक लाइब्रेरी (कंप्यूटिंग) और फ़ाइल प्रारूप है जो डेटा तक तेज़, एकल-कुंजी पहुंच प्रदान करता है। मूल यूनिक्स से एक कुंजी-मूल्य डेटाबेस, dbm NoSQL प्रणाली का एक प्रारंभिक उदाहरण है।

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

डीबीएम लाइब्रेरी निश्चित आकार की बकेट में एकल कुंजी (एक प्राथमिक कुंजी) के उपयोग से मनमाना डेटा संग्रहीत करती है और कुंजी द्वारा डेटा की तेजी से पुनर्प्राप्ति को सक्षम करने के लिए हैश फंकशन तकनीकों का उपयोग करती है।

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

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

कार्यान्वयन
मूल AT&T dbm लाइब्रेरी को इसके कई उत्तराधिकारी कार्यान्वयनों द्वारा प्रतिस्थापित कर दिया गया है। उल्लेखनीय उदाहरणों में शामिल हैं: * एनडीबीएम (नया डीबीएम), कुछ नई सुविधाओं के साथ मूल डीबीएम पर आधारित।
 * GDBM (GNU dbm), ndbm सुविधाओं और अपने स्वयं के इंटरफ़ेस को लागू करने वाली लाइब्रेरी का GNU पुनर्लेखन। डेटा स्थिरता की गारंटी के लिए क्रैश टॉलरेंस जैसी नई सुविधाएँ भी प्रदान करता है।
 * एसडीबीएम (छोटा डीबीएम), डीबीएम का एक सार्वजनिक डोमेन पुनर्लेखन। यह पर्ल के लिए मानक वितरण का एक हिस्सा है और रूबी_(प्रोग्रामिंग_लैंग्वेज) के लिए एक बाहरी लाइब्रेरी के रूप में उपलब्ध है।
 * क्यूडीबीएम (क्विक डेटाबेस मैनेजर), एक उच्च प्रदर्शन वाला डीबीएम जिसमें टोक्यो/क्योटो कैबिनेट जैसी कई तकनीकों का इस्तेमाल किया गया है। कैबिनेट में जाने से पहले उसी लेखक द्वारा लिखा गया।
 * टीडीबी (ट्रिवियल डेटाबेस), सांबा (सॉफ्टवेयर) द्वारा उपयोग किया जाने वाला एक सरल डेटाबेस जो कई लेखकों का समर्थन करता है। एक gdbm-आधारित API है।
 * बर्कले डीबी, 1991 में बर्कले सॉफ्टवेयर वितरण पर एटी एंड टी यूनिक्स कॉपीराइट से बचने के लिए स्लीपीकैट सॉफ्टवेयर (अब ओरेकल कॉर्पोरेशन) द्वारा एनडीबीएम का प्रतिस्थापन किया गया। इसमें समानता, लेनदेन नियंत्रण, हैशिंग और बी ट्री स्टोरेज जैसे कई एक्सटेंशन शामिल हैं।
 * लाइटनिंग मेमोरी-मैप्ड डेटाबेस: लिखने पर नकल मेमोरी-मैप की गई फ़ाइल | बर्कले-शैली एपीआई के साथ सी (प्रोग्रामिंग भाषा) में मेमोरी-मैप्ड बी+ पेड़  कार्यान्वयन।

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

उपलब्धता
2001 तक, डीबीएम का एनडीबीएम कार्यान्वयन सोलारिस और आईआरआईएक्स पर मानक था, जबकि जीडीबीएम लिनक्स पर सर्वव्यापी है। बर्कले डीबी कार्यान्वयन कुछ मुफ्त ऑपरेटिंग सिस्टम पर मानक थे। 2013 में बर्कले डीबी की लाइसेंसिंग को जीएनयू एजीपीएल में बदलने के बाद, डेबियन जैसी परियोजनाएं एलएमडीबी में स्थानांतरित हो गई हैं।

विश्वसनीयता
जब भ्रष्ट या अमान्य डेटाबेस फ़ाइलों की बात आती है तो कई DBM-फ़ैमिली डेटाबेस के विरुद्ध 2018 अमेरिकन फ़ज़ी लोप (फ़ज़र)फ़ज़र) फ़ज़िंग परीक्षण ने कार्यान्वयन में कई समस्याओं को उजागर किया। केवल डेनियल जे. बर्नस्टीन के सीडीबी (सॉफ़्टवेयर) में कोई क्रैश नहीं दिखा। जीडीबीएम, टीडीबी और एलएमडीबी के लेखकों ने तुरंत प्रतिक्रिया दी। अन्य मुद्दों की भारी संख्या के कारण बर्कले डीबी पिछड़ गया; ये सुधार ओपन-सोर्स सॉफ़्टवेयर उपयोगकर्ताओं के लिए अप्रासंगिक होंगे क्योंकि लाइसेंसिंग परिवर्तन के कारण उन्हें पुराने संस्करण पर वापस लॉक कर दिया जाएगा।

यह भी देखें

 * एंबेडेड डेटाबेस
 * फ़्लैट फ़ाइल डेटाबेस
 * मैं हूँ
 * कुंजी-मूल्य डेटाबेस
 * मोबाइल डेटाबेस
 * नोएसक्यूएल
 * सेमाफोर (प्रोग्रामिंग)

ग्रन्थसूची



 * SDBM library @Apache