A Comparison of the Hierarchical, Network, and Relational, Database Models
A Comparison of the Hierarchical, Network and Relational, Database Models
Database models continue to evolve as the information management needs of organizations become more complex. From flat files to relational databases, the growing demands on data integrity, reliability and performance of database management systems (DBMS), has shaped the design of databases and their underlying models. In this document, three database models are discussed comparing and contrasting their major features. The three models in order of discussion are Hierarchical, Network and Relational database models.
Hierarchical Database Model
The hierarchical model is the oldest of the three models discussed here. This model is an improvement of the flat-file database system since it employs a simple data relationship scheme. The relationships in the hierarchical model are child/parent relationships. The name “hierarchical” is derived from one major restriction on the child/parent relationships, that is, although a parent entity can have several child entities, a child entity can only have one and only one parent. For this reason all the relationships form a hierarchy that traces back to one root. In fact, this model is often visualized as an upside down tree, where the entity at the top is seen as a root and as such all other entities sprout from the root. A simple example is shown in Figure 1 below:
“Products” in Figure 1 above is the root entity of the hierarchical model in the example.
As shown in the diagram, one major problem with the hierarchical model is the increased risk of data inconsistency. In the case above, a separate “Customers” table must exist for every product line due to the fact that a child entity cannot have more than one parent. However, there is a great chance that there are many customers who purchased more than one type of product. Consequently, information about those customers must exist in more than one table causing data redundancy. Another problem with the hierarchical model is the inflexibility of the model. For example, in the diagram above, the database is restricted to three product lines. Adding a new product line would require redesigning the database since all the relationships must be predefined. Finally, another problem with the hierarchical model is in the child/parent relationship restriction. Every child must have a parent. Therefore, in the example above, it is impossible to add new customers who have not bought any new products yet. To overcome some of the limitations of the hierarchical model, the network model was created.
Network Database Model
The network model is an improvement to its predecessor, the hierarchical model. In the network model, a child entity can have more than one parent. Therefore, the design can be visualized as several inverted trees interconnected by branches as opposed to the single inverted tree characteristic of the hierarchical model. Figure 2 below illustrates the network database model of the hierarchical database discussed previously.
As shown above, the network database model eliminates the need to [next page]