BCA / B.Tech 12 min read

DDBMS in Hindi

What is DDBMS in RDBMS in Hindi | RDBMS में  DDBMS क्या है :


Distributed Database Management System (DDBMS) में "Placement" का मतलब यह है कि डेटा और डेटाबेस सिस्टम के विभिन्न घटकों को भौगोलिक रूप से वितरित और व्यवस्थित कैसे किया जाता है। DDBMS के अंतर्गत डेटा को एक केंद्रीकृत स्थान पर रखने के बजाय इसे विभिन्न साइट्स (लोकेशन्स) पर वितरित किया जाता है। इसका मुख्य उद्देश्य सिस्टम की स्केलेबिलिटी, प्रदर्शन, उपलब्धता, और विश्वसनीयता को बेहतर बनाना है। 

 Data Placement Strategies in DDBMS :

 Replication :
   Replication का मतलब है कि डेटाबेस की प्रतियां विभिन्न साइट्स पर रखी जाती हैं। इसके मुख्य लाभों में डेटा की उच्च उपलब्धता, फॉल्ट टॉलरेंस, और तेज़ डेटा एक्सेस शामिल हैं। 

   Types of Replication :

     Full Replication : पूरे डेटाबेस की प्रतियां हर साइट पर रखी जाती हैं। इसका फायदा यह है कि किसी भी साइट के असफल होने पर भी डेटा अन्य साइट्स पर उपलब्ध रहता है। लेकिन, इसका नकारात्मक पक्ष यह है कि डेटा को अपडेट करने पर सभी साइट्स पर सिंक्रोनाइज़ेशन की आवश्यकता होती है, जिससे नेटवर्क पर लोड बढ़ सकता है।

     Partial Replication : डेटाबेस के कुछ हिस्से (फ्रैगमेंट्स) ही विभिन्न साइट्स पर रखे जाते हैं। यह कम नेटवर्क लोड का कारण बनता है, लेकिन इसमें डेटा की उपलब्धता थोड़ी कम हो सकती है, क्योंकि सभी साइट्स पर सभी डेटा उपलब्ध नहीं होता।

 Fragmentation :

   Fragmentation डेटा को छोटे-छोटे टुकड़ों में विभाजित करके विभिन्न साइट्स पर वितरित करने की प्रक्रिया है। यह सुनिश्चित करता है कि डेटा को उसी स्थान पर स्टोर किया जाए जहां उसकी अधिक आवश्यकता होती है, जिससे डेटा एक्सेस तेज़ हो जाता है।
  
 Types of Fragmentation :

     Horizontal Fragmentation : इसमें टेबल के रिकॉर्ड्स को विभाजित किया जाता है, और विभिन्न साइट्स पर रखा जाता है। उदाहरण के लिए, अगर एक कंपनी के ग्राहक अलग-अलग देशों में हैं, तो हर देश के ग्राहकों का डेटा अलग-अलग साइट्स पर स्टोर किया जा सकता है।

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

     Mixed Fragmentation : यह हॉरिजॉन्टल और वर्टिकल फ्रैग्मेंटेशन का मिश्रण होता है, जहां डेटा को दोनों तरीके से विभाजित किया जाता है।

 Allocation :
   Allocation यह तय करता है कि डेटा के कौन से फ्रैगमेंट्स या रेप्लिकेशन किस साइट पर स्टोर किए जाएंगे। इस प्रक्रिया में डेटा की प्रकृति, नेटवर्क की क्षमता, और उपयोगकर्ता की आवश्यकताओं का ध्यान रखा जाता है।

   Factors Affecting Allocation :

  •      Data Access Patterns : डेटा का उपयोग कैसे और कहां किया जा रहा है, इसे समझकर डेटा को उचित रूप से वितरित किया जाता है।
  •      Network Latency : नेटवर्क की गति और प्रदर्शन भी निर्धारित करते हैं कि डेटा को कहां रखा जाना चाहिए ताकि तेजी से एक्सेस हो सके।
  •      Cost Consideration : डेटा को विभिन्न साइट्स पर स्टोर करने की लागत भी एक महत्वपूर्ण कारक है।


 What is Processing and Query Execution Placement in RDBMS in Hindi |  RDBMS में Processing and Query Execution Placement क्या है :


Processing: इसका मतलब है डेटा को संसाधित करना, जैसे कि किसी प्रश्न (query) का उत्तर देने के लिए डेटा को फ़िल्टर करना, जोड़ना, घटाना, या किसी अन्य प्रकार का गणितीय या तार्किक ऑपरेशन करना।
Query Execution: इसका मतलब है डेटाबेस में SQL क्वेरी (SQL Query) को निष्पादित करना और उसे पूरा करना, ताकि उपयोगकर्ता को उनका वांछित परिणाम मिल सके।


Query Execution Placement डेटाबेस सिस्टम में उस स्थान का निर्धारण करता है जहाँ पर प्रश्नों का निष्पादन होता है। इसमें मुख्यतः दो तरह की प्रक्रियाएँ शामिल होती हैं:

(a) Client-Side Processing (क्लाइंट-साइड प्रोसेसिंग) :
  •   क्लाइंट-साइड प्रोसेसिंग में, डेटा के बड़े हिस्से को क्लाइंट मशीन पर भेजा जाता है, और प्रोसेसिंग (जैसे कि फिल्टरिंग, जोड़ना, आदि) क्लाइंट मशीन पर की जाती है।
  • उदाहरण के लिए, अगर किसी क्वेरी का परिणाम बहुत बड़ा है, तो इसे सर्वर से क्लाइंट को भेजा जाता है और वहाँ पर परिणामों का अंतिम निष्पादन होता है।
  • लाभ: यह सर्वर पर भार को कम करता है।
  • हानि: बड़े डेटा सेट को क्लाइंट पर भेजने से नेटवर्क पर अधिक लोड पड़ता है और क्लाइंट मशीन के संसाधन अधिक उपयोग होते हैं।
(b) Server-Side Processing (सर्वर-साइड प्रोसेसिंग):
  • सर्वर-साइड प्रोसेसिंग में, सभी डेटा प्रोसेसिंग कार्य डेटाबेस सर्वर पर किए जाते हैं।
  • उपयोगकर्ता की क्वेरी सर्वर को भेजी जाती है, जहाँ पर सभी ऑपरेशन्स जैसे कि जोड़, घटाना, फ़िल्टरिंग, आदि किए जाते हैं और फिर परिणाम वापस क्लाइंट को भेजा जाता है।
  • लाभ: नेटवर्क पर डेटा का स्थानांतरण कम होता है, क्योंकि केवल अंतिम परिणाम ही क्लाइंट को भेजा जाता है।
  • हानि: सर्वर पर अधिक प्रोसेसिंग लोड हो सकता है, जिससे सर्वर का प्रदर्शन धीमा हो सकता है।
3. Distributed RDBMS में Processing और Query Execution Placement:
  • डिस्ट्रीब्यूटेड RDBMS (DDBMS) में, डेटा विभिन्न स्थानों पर संग्रहीत हो सकता है। इसलिए, Processing और Query Execution Placement और भी महत्वपूर्ण हो जाता है, क्योंकि इसे सुनिश्चित करना होता है कि:

  • डेटा की प्रोसेसिंग उस लोकेशन पर हो जहाँ डेटा संग्रहीत है, ताकि डेटा के स्थानांतरण को न्यूनतम किया जा सके।
  • क्वेरी को प्रभावी ढंग से विभाजित और निष्पादित किया जा सके ताकि सभी संसाधनों का इष्टतम उपयोग हो।
4. Processing और Query Execution Placement का महत्व:
  • प्रदर्शन (Performance): Query Execution Placement सीधे सिस्टम के प्रदर्शन को प्रभावित करता है। सर्वर-साइड प्रोसेसिंग नेटवर्क पर लोड को कम करता है लेकिन सर्वर की क्षमता पर निर्भर करता है। क्लाइंट-साइड प्रोसेसिंग क्लाइंट के संसाधनों का अधिक उपयोग करता है।
  • स्केलेबिलिटी (Scalability): सही प्रकार की प्रोसेसिंग और प्लेसमेंट तकनीक का उपयोग करके सिस्टम को आसानी से स्केल किया जा सकता है।
  • लागत (Cost): सही प्लेसमेंट का चयन करके हार्डवेयर और नेटवर्क संसाधनों की लागत को भी नियंत्रित किया जा सकता है।


A. Local Processing
    यूजर्स द्वारा की गई क्वेरी को पहले स्थानीय साइट पर प्रोसेस किया जाता है। यदि डेटा स्थानीय रूप से उपलब्ध है, तो उसे उसी साइट पर प्रोसेस किया जाता है। यह नेटवर्क ट्रैफिक को कम करता है और डेटा एक्सेस की गति बढ़ाता है।

B. Distributed Query Execution
    जब क्वेरी में विभिन्न साइट्स पर मौजूद डेटा की आवश्यकता होती है, तो क्वेरी को विभिन्न साइट्स पर वितरित किया जाता है, और उसके बाद परिणामों को एकीकृत किया जाता है। 
   Optimization Techniques : क्वेरी प्रोसेसिंग के दौरान, DDBMS विभिन्न ऑप्टिमाइज़ेशन तकनीकों का उपयोग करता है ताकि डेटा ट्रांसफर और प्रोसेसिंग का समय कम हो सके।



What is Transaction Management Placement in RDBMS in Hindi | RDBMS में  Transaction Management Placement क्या है 


A. Distributed Transactions
    Distributed Transactions वे ट्रांजेक्शन्स होते हैं जो विभिन्न साइट्स पर मौजूद डेटा को प्रभावित करते हैं। DDBMS को यह सुनिश्चित करना होता है कि इन ट्रांजेक्शन्स के दौरान सभी साइट्स पर डेटा की एकरूपता बनी रहे।
    Challenges : विभिन्न साइट्स पर ट्रांजेक्शन्स के प्रबंधन में चुनौतियां होती हैं जैसे डेटा की स्थिरता, समन्वय, और फेल होने की स्थिति में रिकवरी।

B. Two-Phase Commit Protocol
    यह प्रोटोकॉल यह सुनिश्चित करता है कि सभी साइट्स पर ट्रांजेक्शन या तो पूरी तरह से सफल हो या विफल। यह डेटा की अखंडता को बनाए रखने के लिए महत्वपूर्ण है। 
   Phases of Two-Phase Commit :
     Prepare Phase : इसमें सभी साइट्स को ट्रांजेक्शन की पुष्टि करने के लिए कहा जाता है।
     Commit Phase : अगर सभी साइट्स तैयार हैं, तो ट्रांजेक्शन को पूर्ण कर दिया जाता है; अन्यथा, उसे वापस ले लिया जाता है।

Fault Tolerance and Recovery Placement :

A. Redundancy and Backup
    डेटा की प्रतियों को विभिन्न साइट्स पर स्टोर करके सिस्टम को Fault Tolerant बनाया जाता है। यह सुनिश्चित करता है कि किसी साइट के असफल होने पर भी डेटा अन्य साइट्स पर उपलब्ध रहता है।
   Redundant Data Placement : डेटा की प्रतियां एक से अधिक साइट्स पर रखने से सिस्टम की विश्वसनीयता बढ़ती है।

B. Recovery Mechanisms
    DDBMS विभिन्न साइट्स पर स्टोर डेटा को रिकवर करने के लिए विभिन्न रिकवरी मेकेनिज्म का उपयोग करता है, जैसे कि लॉगिंग और चेकपॉइंटिंग। यह सुनिश्चित करता है कि किसी सिस्टम फेल्योर की स्थिति में डेटा को पुनः प्राप्त किया जा सके।

Conclusion :
Placement DDBMS का एक महत्वपूर्ण पहलू है जो यह निर्धारित करता है कि डेटा और सिस्टम के घटक विभिन्न स्थानों पर कैसे व्यवस्थित और प्रबंधित किए जाएंगे। यह रणनीति इस बात पर निर्भर करती है कि डेटा कैसे उपयोग किया जा रहा है, नेटवर्क की क्षमता क्या है, और उपयोगकर्ता की आवश्यकताएँ क्या हैं। सही प्लेसमेंट से DDBMS की स्केलेबिलिटी, प्रदर्शन, और विश्वसनीयता में सुधार होता है। DDBMS के Placement को सही ढंग से प्रबंधित करने से डेटाबेस सिस्टम की दक्षता और प्रभावशीलता को बढ़ाया जा सकता है, जिससे डेटा को तेजी से और सुरक्षित रूप से एक्सेस किया जा सकता है।

In this Chapter