User:S1121454/sandbox

Hierarchical Data Model

Definition

A hierarchical database model is a data model in which the data are organized into a tree-like structure. The data are stored as records which are connected to one another through links. A record is a collection of fields, with each field containing only one value. The type of a record defines which fields the record contains.

Background of hierarchical data model

A hierarchical data model is collection of data and records connected with links in a tree-like structure. The data (field) are branched from a single parent. In fact, these kind of data models are designed in the early mainframe database management such as the IBM’s Information Management System (IMS).  Features of the hierarchical data model

If and only if there is a node that it does not have parents’ node, it is the root node. Other nodes if and only if they have one parents’ node. All exact records need to be looked up according to its route, then it could reveal all of its mean. There is no child node could exist without parents’ node.

In Figure E1 sample database, the fields are branched down from a dummy parent node. The tree structured diagram includes boxes (that correlate with record types) and lines (that correlate with links). The only difference between the tree-like structure data model and the data-structure diagram in the network model is that, the records are organised in an arbitrary graph in the latter, while in the former, they are organised through a rooted-tree structure.

https://commons.wikimedia.org/wiki/File:Hierarchical_Data_Model.png

Advantage

The model structure is easy, so it could be manipulated by several commands and easy to use. The model structure is clear, because if you know the parents nodes, you could know all of the model structure. The model offers excellent completeness support. The data of tables are inherent because of which a record in a child table must be connected to a current record in a parent table, alongside that if a record erased in the parent table, at that point that will make all related records in the child table be erased also. Disadvantage When client have to store a record in a child table which is irrelevant to any record in a parent table, the difficulty appears in recording and users must insert an additional entry in the parent table. This type of database cannot support complicated relationships, it is based on the one-to-many table rather than many-to-many, and there is also a problem of data duplication, which can result in creating invalid information due to the conflict of data at various sites. There is too much restriction for inserting and deleting. You need to inquire child nodes by parents’ nodes, and it also restricts storing. Because of the tight structure, so the commands tend to user-unfriendly.

References Kamfonas, M.J. (2014). Recursive Hierarchies : The Relational Taboo ! Making their use possible in dimensional models.

周屹、李艳娟(2013). 数据库原理及开发应用（第二版）(页32-34). 清华大学出版社.

Dvi, Bk. (n.d.). Hierarchical data model. Retrieved from https://www.db-book.com/db6/appendices-dir/e.pdf.

Dontigney, E. (2019, January 22). What Are the Advantages & Disadvantages of Hierarchical Structure? Bizfluent. Retrieved from https://bizfluent.com/info-8536984-advantages-disadvantages-hierarchical-structure.html