Hierarchical and Relational Database Models

A database consists of data in many files.  In order to be able to access data from one or more files easily, it is necessary to have some kind of structure or organization of data.  Three main kinds of database structures are commonly recognized, termed hierarchical, network, and relational.

Hierarchical data structures:

·        When the data have a parent/child or one to many relation, such as soil series within a soil family, or pixels within a region, hierarchical methods provide quick and convenient means of data access. 

·        Hierarchical systems of data organization are used for plant and animal taxonomies, soil classification, and so on. 

·        Hierarchical systems assume that each part of the hierarchy can be reached by using a key (i.e. a set of discriminating criteria) and the associated attributes that the items may possess. 

·        Hierarchical systems have the advantage that they are easy to understand and they are easy to update and expand. 

·        Data access via the keys is easy for key attributes, but unfortunately is very difficult for associated attributes. 

·        Consequently hierarchical systems are good for data retrieval if the structure of all possible queries can be known beforehand. 

·        This is commonly the case with bibliography, bank or airline retrieval systems. 

·        For environmental data, however, the exploratory nature of many retrieval requests cannot be accommodated by the rigid hierarchy and the critical user may reject the system as impossibly inflexible. 

·        For example in a hierarchical database of a herbarium collection it may not be possible to

Fig 1: Hierarchical database structure commonly used in soil science.

know as to how many plants in the collection come from a certain region.

·        Further disadvantages of hierarchical database structures are that last index files have to be maintained, and certain attribute values may have to be repeated many times leading to data redundancy, which increases storage and access costs (Fig 1).

Network data structures:

·        In hierarchical systems, travel within the database is restricted to the paths up and down the taxonomic pathways. 

·        In many situations much more rapid link­age is required, particularly in data structures for graphics features where adjacent items in a map or figure need to be linked together even though the actual data about their coordinates may be written in very different parts of the database. 

·        Network systems fulfill this need.

·        Consider Fig. 2(a), which consists of a simple map of two polygons. 

·        Figure. 2(a) shows the map as it appears to the human brain; that is the two polygons are defined by a set of lines, one of which is common to both. 

·        The lines, in turn, are defined by coordinate pairs, with each coordinate pair common to two lines. 

·        Clearly, a hierarchical data structure for the map would result in a clumsy representation involving much redundancy (Fig. 2(b, e)). 

·        Each coordinate pair would have to be repeated twice, and coordinates 3 and 4 would have to be repeated four times because line c has to be repeated twice. 

·        The structure is not only wasteful of space; it is clumsy, for if an operation were made to give polygons I and II the same name there is

Fig 2: Network data structures for simple polygons. (a) The Map M. (b) The two component polygons I and II. (c) Network structure linking all polygons, lines and points. (d) A ring pointer structure for M. (e) A hierarchical data structure for M.

no easy way to suppress the display of line c, which would become unnecessary.

·        These problems are avoided by the compact network structure shown in Fig. 2(c), in which each line and each coordinate need appear only once.

·        With this structure it is a simple matter to suppress the printing of line c whenever it is referenced by polygons having the same name, thus making map generation easier.

·        Very often in graphics, network structures are used that have a ring pointer structure. 

·        Ring pointer struc­tures (Fig. 2(d)), are very useful ways of navigating around complex topological structures.

·        Network sys­tems are very useful when the relations or linkages can be specified beforehand.  They avoid data redundancy and make good use of available data. 

·        The disadvan­tages are that the database is enlarged by the overhead of the pointers, which in complex systems can become quite a substantial part of the database. 

·        These pointers must be updated/maintained every time a change is made to the database and the building and maintenance of pointer structures can be a considerable over­head for the database system.

 

Relational Database Structures:

·        The relational database structure in its simplest form stores no pointers and has no hierarchy. 

·        Instead, the data are stored in simple records, known as tuples, containing an ordered set of attribute values that are grouped together in two-dimensional tables, known as relations.

·         Each table or relation is usually a separate file. 

·        The pointer structures in network models and the keys in hierarchical structures are replaced by data redundancy in the form of identification codes that are used as unique keys to identify the records in each file (Fig. 3).

·        Data are extracted from a relational database through a procedure in which the user defines the re­lation that is appropriate for the query. 

·        This relation is not necessarily already present in the existing files, so the controlling program uses the methods of rela­tional algebra to construct the new tables.

Fig 3: Relational database structure for map M.

·        Relational databases have the great advantage that their structure is very flexible and can meet the de­mands of all queries that can be formulated using the rules of Boolean logic and of mathematical operations.

·        They allow different kinds of data to be searched, com­bined, and compared. 

·        Addition or removal of data is easy too, because this just involves adding or removing a tuple

·        The disadvantage of relational databases is that many of the operations involve sequential searches through the files to find the right data to satisfy the specified relations. 

·        This can involve a con­siderable amount of time with large databases, even on fast computers. 

·        Consequently commercial rela­tional database systems have to be very skillfully de­signed in order to support the search capabilities with reasonable speed, which is why they are so expensive. 

·        They have found widespread applications in geographical information systems.

Notes & Handouts

The Himalayas

Kumaon Himalayas

Askot Basemetals

University

   


This website is hosted by

S. Farooq

Department of Geology

Aligarh Muslim University, Aligarh - 202 002 (India)

Phone: 91-571-2721150

email: farooq.amu@gmail.com