Saturday, July 21, 2012

Sorry, All the contents of this website has move to http://newtutorial2012.blogspot.com/

 Sorry, All the contents of this website has move to


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,

 Performance: When we go though the hieracial model we can identify that navigating among the records in a hierarchical database is very fast. Reason for this fast navigation among the records is parent/child relationships are implemented with pointers from one data record to another. So after finding the first record, the program does not have to search an index to find the next record.

 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.