Saturday, July 21, 2012
Wednesday, July 11, 2012
Hierarchical model
Hierarchical Database model can identify as a one of the oldest database models. It defines hierarchically arranged data. So according the hierarchical model tree structure is the most frequently occurring relationship.
History:
When we go back to the history of the hierarchical model we can identify that one of the first hierarchical database Information Management System (IMS) was developed jointly by North American Rockwell Company and IBM. So this was the world's leading mainframe hierarchical database system in the 1970s and early 1980s.
Overview:
In hierarchical model there is a hierarchy of parent and child data segments. So each parent can have many children but each child only has one parent. Because of that we can identify that there are one-to-many mapping between record types. According to this model data elements are organize as tabular rows. Hierarchical structures were widely used in the early mainframe database management systems.
Real world examples:
We can define some well known database systems using the Hierarchical Model as follows,
- IBM Information Management System(IMS):It is a joint hierarchical database and information management system with extensive translation processing capabilities
- Microsoft Windows Registry: It is a hierarchical database that stores configuration settings and options on Windows operating systems
--Advantages
When we go through the hierarchical model we can identify different types of advantages. We can summarized the main advantages of this database model can be define as follows,
Data Integrity: In the hierarchical model everything is based on the parent/child relationship. So there is always a link between the parent segment and the child segments
Efficiency: We can say that
hierarchical database model is a very efficient one when the database contains a large number of one-to-many relationships and when the users require large number of transactions, using data whose relationships are fixed
--Disadvantages
The main disadvantages of the hierarchical database model are,
Implementation Complexity: In hierarchal model Database designers should have very good knowledge of the physical data storage characteristics.
Programming Complexity: Because of the structural dependence and the navigational structure, the application programmers and the end users must know precisely how the data is distributed physically in the database in order to access data. This requires knowledge of complex pointer systems which is often beyond the grasp of ordinary.
Implementation Limitation: In hierarchal model parent, child relationship only can be represented. So there can see 1: M relationship and it doesn't support M:M relationship that can commonly identify in real life
Maintaining the database become difficult: If make any changes in the database structure of a hierarchical database, We needs to make the necessary changes in all the application programs that access the database. So maintaining the database can become very difficult.
Lack of flexibility: In hierarchical model non-hierarchical relationships are awkward to represent and redundancy may be required.