The quest for better data management has led to different models that attempt to resolve the file system’s critical shortcomings. Because each data model evolved from its predecessors, it is essential to examine the major data models in roughly chronological order.
1.1 The Hierarchical Model
A Hierarchical Database Model is a data model in which the data is organized into a tree-like structure. The structure allows representing information using parent/child relationships: each parent can have many children, but each child has only parent. All attributes of a specific record are listed under an entity type.
Example of a hierarchical model
In a database an entity type is the equivalent of a table. Each individual record is represented as a row, and each attribute as a column. Entity types are related to each other using 1:N mappings, also known as one-to-many relationship. This model is recognized as the first database model created by IBM in the 1960’s. Currently the most widely used hierarchical database are IMS developed by IBM and Windows Registry by Microsoft
1. Conceptual simplicity
2. Database security
3. Data independence (because the data characteristics of the database structure are not defined in the programs accessing the database, instead the database structure and its data characteristics are defined in the data dictionary component of the DBMS. Therefore the programs accessing the database become independent of the database) 4. Database integrity (because data duplication or data redundancy is minimized as a result of relating the segments or records) 5. Efficiency (the hierarchical DBMS file storage organization and access methods are based on the new hierarchal database structure which is much faster than the file storage organization and access methods used in the old file system)
1. Complex implementation
2. Difficult to manage
3. Lacks structural independence (because the programmer still needs to write instructions on how and where to find the data stored on the computer disk, which depends on the database structure) 4. Complex applications programming and use
5. Implementation limitations (because the hierarchical data model does not support entities or record segments having multiple parents which are modeled in a M:M relationships between two or more entities) 6. Lack of standards among the implementation software (DBMS) developed by various software vendors
1.2 The Network Model
The Network Model is a database model conceived as a flexible way of representing objects and their relationships. Its distinguishing feature is that the schema, viewed as a graph in which object types are nodes and relationship types are arcs, in not restricted to being a hierarchy or lattice.
Example of Network Model
The network model’s original inventor was Charles Bachman, and it was developed into a standard specification published in 1969 by the CODASYL (Conference on Data Systems Languages) Consortium. OVERVIEW
Where the hierarchical database model structures data as a tree of records, with each record having one parent record and many children, the network model allows each record to have a multiple parent and child records, forming a generalized graph structure. This property applies at two levels: the schema is a generalized graph of record types connected by relationship types (called “set types” in CODASYL), and the database itself is generalized graph of record occurrences connected by relationships (CODASYL “sets”). Cycles are permitted at both levels.
1. Conceptual simplicity
2. Handles more relationship types
3. Data access flexibility
4. Promotes database integrity
5. Data independence
6. Conformance to standards
1. System complexity
2. Lack of structural independence (because the programmer still needs to write...