Data models क्या है?
Database में data को store करने के लिए विभिन्न प्रकार के विधि का उपयोग किया जाता है, इस विधि को database method के नाम से जाना जाता है। Database में डाटा store करने की अलग-अलग विधि होती है। DBMS में data store करने के लिए निम्न तीन method का उपयोग किया जाता है:
- Relational approach
- Hierarchical approach
- Network approach
1) Relational approach:
Relational model को 1970 में EF code के द्वारा develop किया गया था । इस model का उपयोग IBM (International Business Machine) company के द्वारा database में सबसे पहले उपयोग किया गया था।
इसमें किसी data को table के रूप में arrange किया जाता है और किसी organization का उदाहरण ले तो, table form में data को रखना सरल हो जाता है।
प्रत्येक table के निम्न विशेषताएं होते हैं:
- किसी table के एक दिए गए column में एक ही प्रकार के item को रखा जा सकता है।
- दो अलग-अलग table के रूप में data को रखने का एक अन्य लाभ यह होता है कि इसमें relation के लिए mathematical operations projection, union, joins इत्यादि को perform करना आसान हो जाता है।
- प्रत्येक item एक simple number or character string होता है
- Table के प्रत्येक row अलग अलग होते हैं, दूसरे शब्दों में किसी table के दो row के सभी value समान नहीं हो सकता।
- यदि table में 'n' column होते हैं तब इसे 'n' degree कहा जाता है कभी-कभी इसे cardinality कहा जाता है।
- किसी table में row के order का कोई महत्व नहीं होता है।
- प्रत्येक table के column के एक distinct name होता है और table में इसके order का कोई प्रभाव नहीं होता है।
Example of Relational Approach With ER Daigram and Table:
Figure: ER Diagram |
Table: Relational Model |
Advantages of the Relational Model:
i) Easy of use:
इस database model का उपयोग करना अन्य model की अपेक्षा आसान होता है। इसे किसी उपयोगकर्ता के द्वारा समझना आसान होता है।
ii) Flexibility:
इस database में किसी प्रकार का परिवर्तन करना आसान होता है और इसमें किसी data को manipulate करना भी आसान होता है।
iii) Precision:
Relational model में relational algebra and relational calculus का उपयोग किया जाता है, जिससे database में किसी प्रकार का संदेह नहीं होता और डाटा हमेंशा correct होता
(iv) Security:
इसमें किसी authorization को control करना सरल होता हैं। किसी sensitive data को किसी separate space में store करके इसका आसानी से उपयोग किया जा सकता है।
v) Data Independence:
Relational database में data independence को प्राप्त करना आसान होता है। इसके द्वारा database में किसी प्रकार का परिवर्तन किया जाता है, जिसका प्रभाव application program पर नहीं होता है।
vi) Data manipulation Language:
इसमें किसी data को access करने के लिए DML का उपयोग किया जाता है, जिससे किसी डाटा को manipulate करना आसान होता है। अधिकांशतः relational database में DML का उपयोग data को access करने के लिए किया जाता है।
Read Also - Data Dictionary क्या है?
2) Network approach:
Network model के अन्तर्गत m:n (many to many) relationship को represent कर सकते हैं। उदाहरण के लिए, कई supplier के द्वारा अलग-अलग part में माल को supply किया जाता है, तब इस प्रकार के relationship को hierarchical model के द्वारा represent नहीं किया जा सकता।
इसके लिए network model का ही उपयोग किया जाता है। निम्न table में m:n (many to many) relationship को दिखाया गया है:
Table: Network Model |
Network data model को 1960 में database task group of conference on data system language (DBTS) CODSL) के द्वारा तैयार किया गया था। इसके पहले इस model के structure को कई बार परिवर्तन किया गया और इसमें network data model के specification को रखा गया, जिसे DBTC data model कहा जाता है।
कई database application में इस model का उपयोग किया जाता है और commercial DBMS system में भी इसका उपयोग किया जाता है। DBTC model में data structure को represent करने के लिए दो प्रकार के structure का उपयोग किया जाता है, जिसे record type or Set type कहा जाता है।
एक record type का उपयोग किसी entity को represent करने के लिए किया जाता है, जबकि set type का use इसके attribute को represent करने के लिए किया जाता है। DBTC network model को represent करने के लिए record उसका basic unit होता है।
एक model के basic structure को निम्न प्रकार से दिखाया गया है:
Figure: Network Model |
Advantages of Network Model:
Network data model का hierarchical database mode की अपेक्षा कई advantages होते हैं। इसके मुख्य dvantages निम्न हैं:
- इसमें m:n (many-to-many) relationship आसानी से represent किया जा सकता है।
- इसमें data access करना आसान होता है और किसी प्रकार का परिवर्तन करना hierarchical model की अपेक्षा आसान होता है।
- Network database model में database integrity को लागू करना आसान होता है।
- Network database model data independency प्राप्त करना आसान होता है इसमें programmer को किसी storage structure की जानकारी नहीं रखनी होती।
Disadvantages of Network Model:
- Network model को design करना और इसका उपयोग करना कठिन होता है। किसी उपयोगकर्ता को database structure की अच्छी जानकारी होनी चाहिए।
- इसमें किसी database में किसी प्रकार का परिवर्तन करना कठिन होता है और कुछ प्रकार के change असंभव होता है।
- Network data model à aga complex structure create होता है, जिसे application programmer के द्वारा उपयोग करना कठिन होता है।
- इस model में किसी एक data से दूसरे data को access करना या database में move करना कठिन होता है।
Read Also - Data Language क्या है?
3) Hierarchical approach:
इस method में data कई label में store किया जाता है। यह model inverted tree की तरह दिखता है, जिसमें root को सबसे ऊपर रखा जाता है। इस model को tree structure model भी कहा जाता है और इसमें data hierarchical structure के रूप में store होता है। निम्न चित्र में इसे दिखाया गया है:
figure: Hierarchical model |
DBMS जिसमें hierarchical data model का उपयोग किया जाता है, इसमें किसी record के बीच में relationship को दिखाने के लिए tree structure का उपयोग किया जाता है।
इस प्रकार के structure की निम्न विशेषताएं होती हैं:
- इसमें ऊपर के मुख्य data item को root या parent कहा जाता है और इसके बाद के part को child segment कहा जाता है।
- इसके अन्तर्गत 1:m (one to many) relationship represent किया जाता है।
- इस model में m:n (many to many) relationship के represent नहीं किया जा सकता।
- इसमें किसी database के logical structure को represent करने के लिए tree structure diagram का उपयोग किया जाता है, जबकि relationship model में relationship का उपयोग किया जाता है।इसमें root node के कई अन्य node हो सकते हैं, जिसे child record कहा जाता है।
Advantages of Hierarchical Model:
- इसमें किसी relationship को parent child में relationship के द्वारा represent किया जाता है। इसलिए parent and child के बीच में automatic reference create होता है और data integrity को बनाना आसान होता है।
- इस model में data को common database में रखा जाता है इसीलिए एक data से दूसरे में sharing आसान होती है।
- जब data की value बहुत अधिक होती है, तब इस प्रकार के data को hierarchical order में store करना और इसे access करना आसान होता है।
- इसमें 1:m relationship से data को store किया जाता है इसीलिए किसी data को access करने में कम समय लगता है।
Disadvantages of Hierarchical Model
- इसमें केवल 1:m relationship को represent किया जा सकता है।
- यदि data model में many to many relationship का उपयोग किया गया हो, तब इसे hierarchical model में implement करना कठिन होता है।
- Hierarchical database model को manage करना कठिन होता है और इसमें किसी प्रकार का परिवर्तन करना भी कठिन होता है।
- इसमें किसी application program को तैयार करना जटिल होता है और यह time consuming भी है।
- Database structure में यदि किसी प्रकार modification करना हो, तब application program के द्वारा database के structure को परिवर्तन करना होता है, जिसमे डाटा independance को maintain करना कठिन होता है।
- Hierarchical Model का कोई specific standard नहीं होता,इसलिए इसमें datamodel को implement करना कठिन होता है।
0 Comments