DBMS (transaction in dbms in hindi) दिखने में तो बहुत ही छोटा शब्द है लेकिन इसका महत्व बहुत ही बड़ा है। DBMS सिस्टम सूचना संग्रह प्रणाली का बहुत ही अहम हिस्सा होता है जो डेटा को संग्रहित एवं प्रबंधित रखने के लिए महत्वपूर्ण होता है। इस आर्टिकल में हम आज DBMS के बारे में अधिक विस्तार से जानेंगे।
जब DBMS में बहुत सारें ट्रांजैक्शन एक साथ execute होते है तो Concurrency control की प्रक्रिया यह सुनश्चित करती है कि DBMS में डेटा सही तरीके से अपडेट हुआ है या नही। Concurrency control का इस्तेमाल DBMS में प्रॉब्लम को सॉल्व करने में किया जाता है।
क्या होता है DBMS? ( What is DBMS Transaction in Hindi)
DBMS (Database Management System) डेटा को स्टोर और मैनेज करने के लिए एक सॉफ्टवेयर है। यह व्यापक डेटा को संग्रहित करने और उसे मैनेज करने में भी सहायक होता है। डेटाबेस मैनेजमेंट सिस्टम में कई तरह के कमांड होते है जिनका इस्तेमाल हम डेटा स्टोर करने, बदलने, डिलीट करने एवं अन्य आवश्यक गतिविधियों के लिए कर सकते है।
वर्तमान में हमें कई सारे बिजनेस और कंपनी मिलेगी जहां पर इस प्रकार की डाटा रखने की आवश्यकता होती है। इन सभी कंपनीज में डाटा बेस मैनेजमेंट सिस्टम (DBMS) का इस्तेमाल करके ही डाटा स्टोर किया जाता है। वर्तमान समय में डेटाबेस मैनेजमेंट सिस्टम (DBMS Transaction in hindi) का इस्तेमाल बहुत ही अहम हो गया है।
DBMS यूजर एवं डेटा के मध्य एक प्रणाली का काम करते हु डेटा को क्रिएट और मैनेज करता है। DBMS से यूजर समय – समय पर डेटा को अपडेट कर सकता है।
DBMS का पूरा नाम (What is DBMS Full Form in Hindi)
DBMS का पूरा नाम डेटाबेस मैनेजमेंट सिस्टम (Database Management System) है। फुल फॉर्म पढ़ने के बाद अब DBMS क्या है, इसक बारे में विस्तार से जानते हैं।
कोई भी ट्रांजैक्शन operations का समूह होता है जो कि सिर्फ एक लॉजिकल ऑपरेशन की तरह ट्रीट होता है। जैसे कि जब हम अपने बैंक से पैसे निकालते है या बैंक में पैसे जमा करवाते है।
ट्रांजैक्शन की चार प्रॉपर्टीज होती है जिसे हम ACID Properties (What is ACID Properties in Hindi) कहते है।
A-Atomicity
C-Consistency
I-IsolationD-Durability
Atomicity: जब कोई भी ट्रांजैक्शन एक ही स्टेप में पूर्ण होता है तो वो atomic होता है।
Consistency: जब ट्रांजैक्शन होता है तो डेटाबेस एक स्टेट से दूसरे स्टेट में consistence होता है।
Isolation: दो या उससे अधिक ट्रांजैक्शन एक साथ execute होते है तो एक ट्रांजैक्शन दूसरे ट्रांजैक्शन को प्रभावित नही करता है।
Durability: जब एक ट्रांजैक्शन पूरी तरह से हो जाता है तो जो परिवर्तन होते है वह हमेशा के लिए सिस्टम में रहते है।
यानी कि ट्रांजैक्शन ड्यूरेबल होना चाहिए।
ट्रांजैक्शन भी दो प्रकार के होते है:
Implicit Transaction: Implicit Transaction में, SQL डेटाबेस इंजन एक नए transaction को शुरू करता है जब वर्तमान Transaction committed या rollback होता है।
Explicit Transaction: एक explicit transaction में दोनों starting तथा ending transaction को स्पष्ट रूप से डिफाइन किया जाता है।
“Implicit तथा Explicit में मुख्या अंतर यह है कि Implicit transaction ऑटोमैटिक होता है और Explicit transaction यूजर डिफाइंड होता है।”
DBMS का इतिहास? (History of DBMS in Hindi)
सबसे पहले 1960 में Charles Bachman ने Integrated Data Store बनाया था। यह नेटवर्क डेटा मॉडल के आधार पर डिज़ाइन किया गया था जिसके बाद चार्ल्स बेचमेन को अवार्ड से भी नवाजा गया था।
साल 1969 के अंत तक IBM ने hierarchical model पर अपना Integrated Management System निर्मित कर लिया था।
1970 में Edgar Codd ने रिलेशनल डेटाबेस मॉडल पर आधारित Information Management System बनाया।
साल 1980 के दौरान IBM ने structured query language का निर्माण किया जिसे बाद में ISO ओर ANSI ने queries के लिए standard language की मान्यता दी गई।
1991 में MIcrosoft Windows ने microsoft access DBMS को windows में प्रस्तुत किया।
उस बाद तो कई तरह के DBMS सॉफ्टवेयर्स का निर्माण हुआ और नई टेक्नोलॉजी ओर इंटरनेट प्रसार के साथ DBMS के क्षेत्र में वृद्धि होती गई और DBMS एडवांस हो गया है।
DBMS कैसे काम करता है?
DBMS इस्तेमाल करने का तरीका अलग हो सकता है लेकिन इनके काम करने की एक प्रक्रिया एक जैसी ही होती है। जब भी यूजर डेटा एक्सेस करने के लिए कोई एक्शन लेता है तो फौरन ही DBMS यूजर की मांग आईडेंटिफाई कर उसे आवश्यक डेटा उपलब्ध कराता है। DBMS यूजर को वही डेटा दिखाते हैं जिसकी उसे Admin द्वारा परमिशन दी गयी है।
DBMS के प्रकार (Types of DBMS in Hindi)
DBMS के मुख्यत: चार प्रकार होते हैं।
- रिलेशन डेटाबेस मैनेजमेंट सिस्टम
रिलेशन डेटाबेस मैनेजमेंट सिस्टम को शार्ट फॉर्म में RDBMS कहते है। RDBMS में डेटा को row और column के स्ट्रक्चर में बनाया जाता है। RDBMS (Relational Database Management System) में डेटा टेबल फॉर्म में होने से यूजर के लिए इसे समझना आसान हो जाता है।
- ऑब्जेक्ट ओरिएंटेड डाटाबेस मैनेजमेंट सिस्टम
इस सिस्टम को OODBMS भी कहते है जिसमें डेटा को ऑब्जेक्ट्स के रूप में दर्शाया जाता है। Object oriented database managemnet system में कम कोड की आवश्यकता होती है और इसे इस्तेमाल करना भी आसान होता है।
- Hierarchical database Management System
hirearchical database model में डेटा Tree स्ट्रक्चर में होता है। इसमें एक डेटा element के एक से अधिक रिलेशन होते हैं। इस प्रकार के डेटाबेस मॉडल में एक पैरेंट रिकॉर्ड के एक से अधिक चाइल्ड रिकॉर्ड हो सकते हैं। किंतु यह मॉडल यह भी निर्धारित करता है कि child record का पैरेंट रिकॉर्ड एक ही होना चाहिए।
उदाहरण के तौर पर एक कंप्यूटर फोल्डर के अंदर कई फाइल्स होती है परंतु उन सभी फाइल्स का फोल्डर एक ही होता है।
- नेटवर्क डेटाबेस मैनेजमेंट सिस्टम
नेटवर्क डेटाबेस मॉडल भी Hierarchical Model के समान होता है परंतु इसमें child record के एक से अधिक पैरेंट रिकॉर्ड होते हैं। इस मॉडल को ग्राफ के रूप में दर्शाया जा सकता है। Network database Management System में डेटा रिकार्ड्स और उनके मध्य रिलेशन को दर्शाया जाता है।
DBMS के फंक्शन ( What is DBMS Functions in Hindi)
Data Dictionary Management
डेटा डिक्शनरी DBMS में विभिन्न डेटा और उनसे जुड़े हुए तत्वों को स्टोर करके रखती है। Data Dictionary में Data Defination और relative metadata का संग्रहण होता है। डेटा डिक्शनरी में डेटाबेस की सम्पूर्ण जानकारी होती है।
इसके अलावा कौन आप के डाटा को एक्सेस कर रहा है और कहां स्टोर है यह सारी महत्वपूर्ण जानकारी भी आप Data Dictionary की सहायता से हासिल कर सकते हैं।
डेटा डिक्शनरी के दो प्रकार हैं:
एक्टिव डेटा डिक्शनरी
Active Data Dictionary ओरिजिनल डेटा के साथ जुड़ी हुई होती है। यदि डेटा में कभी भी कोई भी बदलाव होता है तो वह बदलाव डेटा डिक्शनरी में नये बदलाव के साथ Update हो जाएगा।
Passive Data Dictionary
पैसिव डेटा डिक्शनरी Active Data Dictionary की तुलना में ज्यादा उपयोगी नहीं है। इसमें स्टोर किया हुआ डेटा डेटाबेस में बदलाव होने पर अपने आप अपडेट नहीं होता!
Data Storage Management
इस फंक्शन का इस्तेमाल सूचना संग्रहण के लिए होता है। इसमें डेटा, कोड, फ़ोटो एवं वीडियो भी स्टोर कर सकते है।
Data Transformation
यह फंक्शन का डेटा के फॉर्मेट को एक फॉर्मेट से दूसरे फॉर्मेट में बदलने के लिए उपयोगी है।
Security Management
सेक्युरिटी मैनेजमेंट DBMS का एक महत्वपूर्ण फंक्शन है। यह फंक्शन कंट्रोल करता है कि यूजर किस प्रकार की इनफार्मेशन देख ओर मैनेज कर सकते हैं।
Multi customer Access Control
एक ही समय पर एक से ज्यादा डाटा को एक्सेस करने के लिए इस फंक्शन का इस्तेमाल किया जाता है। डीबीएमएस के लिए यह फंक्शन बहुत ही महत्वपूर्ण है।
Backup & Recovery Management
बैकअप और रिकवरी फंक्शन की सहायता से आवश्यकता होने पर डेटा को बैकअप एवं रिकवर कर सकते है।
Data Integrity Management
Data Integrity का मत डेटा की accuracy, completeness और reliability है। यह फंक्शन तय करता है कि डेटा शुद्ध, सम्पूर्ण एवं विश्वसनीय हो।
Database Access Languages and Application Interface
प्रोग्रामिंग लैंग्वेज के द्वारा भी DBMS में डेटा एक्सेस कर सकते है। प्रोग्रामिंग लैंग्वेज से डेटा एक्सेस करने के लिए यूजर को डेटाबेस को केवल यह बताना होता है कि उसे क्या करना है। उसे प्रोसेसिंग टेक्निक्स बताने की आवश्यकता नहीं होती है।
Database Communication Interfaces
सभी यूज़र्स के DBMS से interaction करने का तरीका और query ढूंढने का तरीका अलग होता है। डेटाबेस कम्युनिकेशन इन्टरफेस यूजर के डेटा खोजने और उपलब्ध कराने के तरीके को आसान बनाता है।
Transaction Management
ट्रांसेक्शन मैनेजमेंट एक डेटाबेस आपरेशन की सीरीज है। DBMS में यह फंक्शन होना जरूरी है ताकि सभी transaction और उनसे जुड़ी जानकारी से अपडेटेड रहे।
DBMS के कॉम्पोनेंट्स ( What is Components of DBMS in Hindi)
सभी DBMS में जरूरत के अनुसार अलग तरह के components होते हैं। हम यहां चुनिंदा DBMS Components के बारे में बता रहे हैं जो DBMS में इस्तेमाल होते हैं।
-
स्टोरेज इंजन
स्टोरेज इंजन (Storage engine) DBMS का एक मुख्य भाग है। यह कॉम्पोनेंट सिस्टम में डेटा स्टोर करने का काम करता है और डेटाबेस इंटरेक्शन की हर एक्टिविटी स्टोरेज इंजन के जरिये ही गुजरती है।
-
Query Language
DBMS एक या अधिक प्रोग्रामिंग लैंग्वेज को सपोर्ट कर सकता है, जिससे डेटाबेस एक्सेस किया जा सकता है। Query Language द्वारा डाटाबेस में डेटा create, और retrive भी कर सकते हैं। ज्यादातर DBMS में SQL Programing Language का इस्तेमाल होता है।
-
Query Processor
Query Processor यूजर ओर डेटाबेस के बीच एक माध्यम होता है। query processor यूजर के interaction को क्रियान्वित कर उचित डेटा उपलब्ध कराता है।
-
Optimization Engine
यह फंक्शन (Optimization Engine) DBMS की performance को और भी बेहतर बनाने का काम करता है।
-
Metadata Catalog
मेटाडाटा कैटलॉग फंक्शन में DBMS में संग्रहित Objects का meta data स्टोर होता है। जब भी एक object क्रिएट होता है तो उसका मेटाडाटा कैटलॉग में स्टोर होता है।
-
Log Manager
Log Manager एक महत्वपूर्ण कॉम्पोनेंट् है जो यूज़र्स द्वारा किये लॉगिन और उनकी एक्टिविटी की जानकारी रखता है।
-
Reporting and Monitoring Tools
यह टूल्स यूज़र्स को डेटा रिपोर्ट जेनेरेट करने की फेसिलिटी प्रदान करते हैं और मॉनिटरिंग टूल की मदद से यूजर एक्टिविटी, और डेटाबेस की इन्फोर्मेशन प्राप्त की जा सकती है।
DBMS की विशेषताएं (What is Characteristics of DBMS in Hindi)
- DBMS हर तरह का डेटा स्टोर करने में सक्षम होता है।
- DBMS कई यूज़र्स को एक समय पर डेटाबेस एक्सेस करने की सुविधा प्रदान करता है।
- DBMS में यूज़र्स के डेटा को सुरक्षित रखने और जरूरत पड़ने पर बैकअप और रिस्टोर करने की विशेषता होती है।
- Query language के जरिये डेटा insert, अपडेट, डिलिट और retrieve की सुविधा प्रदान करता है।
DBMS के फायदे (What are the Advantages of DBMS in Hindi)
- DBMS से स्टोर करना ओर एक्सेस करना बहुत आसान होता है।
- यह फंक्शन डेटा को स्टोर करने के साथ सिक्योरिटी भी प्रदान करता है।
- DBMS में डुप्लीकेट डेटा स्टोर नहीं हो सकता।
- DBMS पर मल्टीयूज़र की सुविधा उपलब्ध कराता है।
- DBMS Query Language अलाऊ करता है जिससे डेटाबेस के साथ Interaction करना आसान होता है।
- DBMS डेटा बैकअप और रिकवरी की सुविधा प्रदान करता है जिससे डेटा में error या फैलियर हो तो backup data को रिकवर हो सकता है।
DBMS के नुकसान (Disadvantages of DBMS in Hindi)
हार्डवेयर ओर सॉफ्टवेयर की लागत
डेटाबेस मैनेजमेंट का पहले संभावित नुकसान के तौर पर हार्डवेयर ओर सॉफ्टवेयर की लागत (DBMS Software & Hardware Cost in Hindi) अधिक होती है। DBMS के लिए यूजर को हाई मेमोरी और एक अच्छे प्रॉसेसर की आवश्यकता होती है। DBMS सॉफ्टवेयर की लागत भी अधिक होती है।
ट्रेनिंग की लागत
इस सिस्टम को इस्तेमाल करने के लिए यूजर को Training की आवश्यकता होती है। इसलिए डेटाबेस मैनेजमेंट सिस्टम के सॉफ्टवेयर के साथ ट्रेनिंग का खर्च भी शामिल होता है।
बड़ा डेटा साइज
कई बार अधिक डेटा स्टोर करने से DBMS में समस्या भी आ सकती है और यह इसका एक नुकसान है।
Technichal Team की आवश्यकता
DBMS के लिए technical team की आवश्यकता भी होती है क्योंकि DBMS में आने वाली कई समस्या एक non-technical व्यक्ति नहीं समझ सकता। Technichal Team को काम पर रखने की आवश्यकता व्यवसाय की लागत को बढ़ाता है।
डेटाबेस फैलियर
DBMS में व्यवसाय का पूरा डेटा स्टोर होता है लेकिन कई बार Database Failure की वजह से व्यवसाय में समस्या होती है। इस टेक्निकल इश्यू के कारण बहुत बड़ा नुकसान होने की संभावनाएं बनी रहती है। इन टेक्निकल इश्यू को सोल्व करने के लिए बैकअप और रिकवर जैसे फंक्शन का इस्तेमाल किया जाता है।