Free Essays - Computer Science Essays

A Critical Evaluation of the Advantages and Disadvantages of the Relational, Object-Relational and Object-Oriented Data Models.

Abstract

Information that is extracted from raw data is being increasingly used in nearly every facet of human endeavour to make better and more informed decisions. The efficient management of data requires its storage in a computer database from which this stored data may be easily queried and manipulated, or data mining may be used to yield important trends in data that can provide useful information. However, good database design is crucial and facilitates data processing or manipulation. Databases became necessary because of the shortcomings of the computer file systems from which even the simplest data retrieval task required extensive programming. The shortcomings of the file systems have resulted in theoretical database constructs that are represented by various data models which are used to represent the data structure and the relationship between sets of data inside a database. The conceptual data models focus on the logical nature of data representation, while the implementation models place an emphasis on how the data is represented in a database. Examples of data models include the hierarchical, networked, relational, object-relational as well as the object-oriented models. These data models evolved over time from their predecessors and have inherent advantages as well as disadvantages in relation to the storage, manipulation, retrieval and processing of data that is stored in a database. The stored data may present different types of associations in data sets and there may be different requirements for access, retrieval as well as processing, making a particular data model more suited to an application. In this paper, an attempt has been made to study the relative advantages and disadvantages of the relational, object-relational and the object-oriented data models, with an attempt to incorporate the latest thinking from published research. A simple case has been used to illustrate the ideas that are presented.

Introduction

Organisations today are constantly generating large amounts of data as a result of the natural consequence of their operations. This data can provide useful information which may be required to make informed decisions for the future. However, in order to process the raw data which may be related to sales, consumer purchasing behaviour, electricity consumption in a utility or any of the many and varied measures that may be in use for various situations, there is a need to store and manipulate a large data set which may be processed using the computing resources to yield information. A database consists of a set of large, persistent, dynamic and integrated data which provides mechanisms for the description, manipulation, establishment and access to the stored data. A database management system or the DBMS is the software which makes it possible to query, manipulate, build and maintain the database. Data manipulation languages as well as services associated with storage structures and efficient access, as well as crash recovery may be provided. The DBMS model consists of the physical layer which describes the physical organisation of the data in the storage media, the conceptual layer which describes the data model for the data that is stored in the database and the external layer which describes the presentation of the stored data to external users. The DBMS is therefore defined by metadata and schema definitions related to the database. The DBMS languages consist of schema languages which include the data definition languages or the DDL which describes the construction of models of information that are maintained by the DBMS and the data query language as well as the data manipulation language or the DML which facilitate the querying as well as the manipulation of data maintained by the database. The schema definition languages define the fundamental models related to data in a database and the database model is described by a set of logical constructs that are used to describe the data structure and the data relationships that exist in the stored data. The conceptual models place an emphasis on the logic of data representation while the implementation model describes the manner in which data is represented in the database. Examples of the DBMS data models include the hierarchical data model, the network data model, the relational data model, object-relational data model and the object-oriented data model. [Lisbeth 1998]; [Rob 2002]

The relational data model presents information that is organised in relations or tables, with each relation consisting of a set of tuples or records and the tuples consist of a set of records or fields which can contain a variety of values including integers, real, text etc. The mathematical foundations of relational algebra form the basis of the relational data model. Common links between tables make it possible to form links between records which may be stored in different tables of the database. The data relationships that exist in the relational data model may be 1:1, 1: M or M: N. The relational database model has been in extensive use and has been the database implementation standard for quite a while. Set theory and predicate logic is used for relational data models. Hence, two sets S1 = {x1, y1} and S2 = {x2, y2, z2} will have a Cartesian product S1 x S2 = {(x1, x2), (x1, y2), (x1, z2), (y1, x2), (y1, y2), (y1, z2)} and any subset of this Cartesian product will be a relation. [Lisbeth 1998]

Customer

 

 

Student ID

Student Name

1001

Frank Costello



Products

 

 

 

 

Stock Number

Product Name

 

 

2376

Book

 

 

2376A

Chapter 1

 

 

 

 

4568

Periodical

 

 

4568A

Periodical Article 1

 

 

 

 

3856

Video

 

 

 

 



Sales Orders

 

 

 

 

Order No.

Student ID

Stock Number

Quantity

  2376AO1

1001

2376A

1

 

4568O3

2001

4568

1

 

 

 

 

 

 

 

The Relational Data Model using Tables

The object-oriented data model has the database information organised in graphs of objects and it is closer to the real world. An object represents only one individual occurrence of an entity and each object has a number of attributes which may be simple values or complex values that may be part of objects and references to other objects and methods. Attributes describe the properties of an object and thus a student who purchases at a college bookshop may be stored as a student object with attributes of name, student identification number and date of birth. Classes describe a collection of similar objects. The important elements associated with object-oriented data models are abstraction, encapsulation, modularity and hierarchy. [Henrik 1997]; [Lisbeth 1998]; [Rob 2002]

The Object-Oriented Database using Objects

An object-relational data model supports both the relational and the object-oriented model in the implementation of the database. The entities in the data model are represented as objects that are also represented as relational tables. It has been suggested in literature that a better label for the object-relational data model is in fact the extended relational data model because the object-relational model extends the limited operations of the relational data model to include new operations and methods. [Alan 1998]

In this paper, an attempt has been made to critically examine the advantages as well as the disadvantages of the relational, object-relational and the object-oriented data models with efforts being made to incorporate the latest thinking. A discussion related to the previously mentioned data models is presented below.

Order Now. It takes less than 2 minutes.

  1.  
  2.  
  1.  

2.1 A Critical Examination of the Relational, Object-Relational and the Object-Oriented Data Models
The relational data model presents a number of advantages including structural independence which makes it possible for the data to be accessed regardless of the changes that may occur to the database, an improved conceptual simplicity, easier database design as well as management and use, along with simple and flexible querying. The disadvantages on the other hand present relatively high hardware and software overhead associated with operations on the relational database because the relational data model attempts to hide the system complexities. This means that the relational database is slower to query as compared to other databases based on other data models. There is a tendency in the relational data model to encourage improper design because of its simplicity and this can become a problem as the size of the data model grows, resulting in slower systems and the presence of data anomalies. Because of the relative ease of creating a relational database and the existence of a great number of users with the ability to create a relational data application, there may be a tendency to promote inconsistent data in an organisation with resulting problems related to information generation and validation at the organisational level in which there are many users and sources of data. The disadvantages associated with the relational data model are, minor as compared to the simplicity of use and design but the poor performance benchmarks and the availability of better models has meant that its use will continue to decline. New data models were needed in order to cater for the increasing complexity in the data model requirements and the object-relational as well as the object-oriented models presented better performance. [Rob 2002]; [Lisbeth 1998]

There was a requirement to develop the object-oriented data model because of the need to reduce development costs and encourage code reusability. The object-oriented data model lends itself to permitting modular code being used for its manipulation. In a college bookshop which may be selling audio, video and files of chapters from books and journals over the internet, graphics, video and sounds in addition to text and numbers will be required to be included in the database for transfer over the web. Hence, there are increasingly complex data types with rather different system requirements which can put a strain on the relational data model. The object-relational data model is more suited to the college bookshop application because of its ability to handle the complex data types and its lower development costs. The object-oriented data model was designed to handle these complex data types and to support the associated complex transaction requirements. Although additional computing power is required for the object-oriented data model implementation, the falling costs of computer hardware and software will make it possible to provide the requisite capabilities required for an object-oriented data implementation without resulting in excessive cost overheads. The object-oriented data model permits the addition of semantic content and provides greater meaning. Thus the purchasing student and the sales order as well as the content of the sales order all lie within the customer object. It is, therefore, possible to visualise more complex relationships within and between the objects in the object-oriented data model. Although the object-oriented data model may contain more complex objects and increasingly complex relationships between as well as within objects, inheritance can be readily used to protect data model integrity. The object-oriented principles on which the data model is constructed permit structural and data independence as a result of the object being an autonomous entity within the model.  Despite the object-oriented principles that are enshrined in the object-oriented data model, there is a prevailing lack of standards and there are no standardised data access methods. Hence, those who may want to use the object –oriented data model will have to establish a common method for access which can be complex. In spite of this it will be possible for the college bookshop application designers to provide a standard method for online data access to those who may want to purchase online. Objects can, however, be complex things to deal with and to program resulting in longer learning curves associated with the implementation of an object-oriented data models in a database application which will be required for the college bookshop application. The online application designers will also have to be careful to ensure that the use of the object-oriented data model does not slow down the online transactions. Because the object-oriented model’s complexity can be substantially greater then that of the relational model, therefore, substantial operating system overheads, system resource requirements and hardware requirements can result in a slower system. [Rob 2002]; [Lisbeth 1998]

Because of the complexities that can be handled by the object-oriented data model and that fact that even today a lot of installed relational database systems exist, there is a tendency to reserve the object-oriented data models for the relatively sophisticated scientific and engineering applications. The wide use of the relational model tends to support a transition to the object-relational model rather then the object-oriented model. Hence, there is a tendency for the increasing use of the object-relational data model in the business applications arena where more semantics need to be included in the data model. However, the support that is provided to objects in the object-relational data models is considered to be insufficient especially in regard to support for objects, classes, inheritance, polymorphic methods amongst others. The object-relational data model is a synthesis of the relational and the object-oriented data model. It cannot be considered to be a stepping stone for upgrading the relational models into the object-oriented models which hold some promise for the future. Oracle 8i is an object-relational database and has been in wide use in the business sector which serves to illustrate the point. The relational data model is becoming obsolete because for complex data types such as SGML documents which are in wide use in the world today, the performance of every relational database will have to be enhanced tenfold, something which cannot be contemplated. Relational databases are generally not suited for the object oriented data which is likely to be found in use today because the number of tables becomes too large and the performance drops to an unacceptable level. The version of SQL which is in use today can be used to support complex user defined data types and sets that support the object-relational and the object-oriented data models. [Allan 1998]; [Rob 2002]; [Henrik 1997]; [Paige 2004]

The requirements that need to be considered when selecting a data model for an application include persistence, recovery, query facility, concurrency, security as well as the management of secondary storage. Persistence refers to the ability of a database to retain data when it has been processed with the data remaining in the database even when not in use. Concurrency refers to the ability to protect data when several users are using the database. Secondary storage management refers to features such as query optimisation and index management which remain transparent to the user. Recovery refers to the restoration of a database to its original state after a hardware or software failure. The user should also be able to effectively as well as efficiently query a database. Object databases directly store objects into the database but object-relational models need a complex mapping mechanism and although the coding is more efficient, the question remains that the existing database investments cannot be just discarded and replaced with something new at substantial cost and effort. The decisions to switch to object-oriented data models have to be made after carefully considering what applications to change and why. Object-relational databases included Oracle 8i, DB/2, Informix and Unidata. When considering a data model, the requirements of the stakeholders need to be considered and these include matters associated with development costs, functionality, time to market, operating costs and investment protection. On the other hand, the requirements of the end users are also important and consist of matters related to functionality, performance and reliability. Operational requirements consist of matters related to reliability, administrative costs, recovery, resources, access control, administrative effort and maintainability. Vendor support, licensing costs, training requirements, development efforts required as well as investment protection are important from a project management point of view. Stability, tool support, vendor support, architecture and DB features are important to the development team. It has to be realised that database applications in an enterprise are supporting more then one application and the addition of object-oriented databases can result in additional communications and data standardisation requirements. After considering the many factors that are involved in the selection of a data model, it can be concluded that applications that involve querying require relational or object-relational type models, while navigational applications involving opening tasks and projects while working with objects require object-oriented data models. Object-relational data models certainly improve the navigational characteristics, but do not provide substantial improvements. Both the object-relational and the object-oriented models are capable of working with very large databases and can provide extremely good scalability. Object-oriented databases also present far superior performance benchmarks for the storage of GIF and JPEG images and are generally better when considering their performance with regard to emulation of access characteristics, database size, multi-user performance and checks on fragmentation. Availability of skills required for designing object-oriented data models is also critical in their adoption. [Paige 2004]; [Jens 1998]; [Ron 2002]; [Lisbeth 1998]

The next section presents a summary of the evaluation of the different data models.

Object Store Benchmarks for Various Database Models

General Benchmarks for Various Database Models

3.1 Summary and Conclusions
The tabular views which improve conceptual understanding are an important attraction for the relational data model along with the ad-hoc query capability and its relatively simple implementation and management. However, substantial hardware and system software overheads are associated with this simplicity and in large organisations data validation and poor usage can become a problem. With the availability of the object-relational model, most applications have shifted to this model especially in business because the performance of the relational model was just proving to be inadequate.  Even though the object-oriented model is capable of providing an even better performance especially in regard to the storage and retrieval of complex data objects, addition of semantic content and better data integrity as a result of inheritance, the developing standards related to this data model, high system overheads and a steep learning curve have limited its use to demanding scientific and engineering applications. The object-relational model remains the most popular with implementations in DB/2, Oracle 8i and Informix etc providing a data model that is more suited to querying applications rather then the navigational applications for which the object-oriented model is preferred. The object-oriented model is, however, likely to proliferate given the time to develop better standards and requisite skills for its use. 

References/ Bibliography

Web Sources

  1. Akmal B. Chaudhri and Norman Revell. 2002. Benchmarking Object Databases: Past, Present and Future. The City University. Retrieved: March 9, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/1763/http:zSzzSzwww.cs.city.ac.
    ukzSz~akmalzSzhtml.dirzSz..zSzpapers.dirzSz94.seminar.pdf/benchma
    rking-object-databases-past.pdf
  2. Akmal B. Chaudhri. 2000. An Annotated Bibliography of Benchmarks for Object Databases. The City University. Retrieved: March 9, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/10333/http:zSzzSzwww.cs.city.ac
    .ukzSzhomeszSzakmalzSzhtml.dirzSz..zSzpapers.dirzSz95.biblio.pdf/chaudhri95annotated.pdf
  3. Allan R. Lassen. 1998. Object Relational Modeling. Ramboll Informatics. Retrieved: March 10, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/13106/http:zSzzSzwww.cit.dkzSzCO
    TzSzreportszSzreportszSzCase4zSz04-v1.0zSzcot-4-04-1.0.pdf/object-relational-modeling.pdf
  4. Baiju H. Devani. June, 2004. Data Warehousing for Scientific Behavioral Data. Queen’s University. Retrieved: March 9, 2005. From: http://www.cs.queensu.ca/home/cords/bd.pdf
  5. Bloor Research. 2001. Databases: An Evaluation and Comparison. Bloor Research. Retrieved: March 10, 2005. From: http://www-306.ibm.com/software/data/pubs/pdfs/bloor.pdf
  6. Cetus Team. 2002. General Information on Object Oriented Databases. Cetus Team. Retrieved: March 10, 2005. From: http://www.objenv.com/cetus/oo_data_bases.html
  7. Erhard Rahm. 1998. Evaluation of Object-Relational Database Systems for Full Text Retrieval. Leipzig University. Retrieved: March 10, 2005. From: http://lips.informatik.uni-leipzig.de:80/pub/showDoc.Fulltext/dokument.pdf
    ?lang=en&doc=1998-8&format=pdf&compression=&rank=0
  8. Frank Manola. 1994. An Evaluation of Object Oriented DBMS Developments. GTE Labs. Retrieved: March 10, 2005. From: http://www.db.ucsd.edu/cse132B/manola94-1.pdf
  9. Frank Stajano. May, 1998. A Gentle Introduction to Relational and Object Oriented Databases. The Olivetti and Oracle Research Laboratories. Retrieved: March 9, 2005. From: http://www-lce.eng.cam.ac.uk/publications/files/tr.98.2.pdf
  10. Georges Gardarin et al. 2004. Federating Object-Oriented and Relational Databases: The IRO-DB Experience. European IRO-DB Project. Retrieved: March 9, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/2019/ftp:zSzzSzftp.darmstadt.gmd.dezS
    zpubzSzoasyszSzreportszSzP-97-23.pdf/gardarin97federating.pdf
  11. Gunter Saake et al. 1995. Object Oriented Database Design: What is the Difference with Relational Database Design? Otto Von Guericke University Magdeburg. Retrieved: March 10, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/6461/http:zSzzSzwwwit
    i.cs.uni-magdeburg.dezSzpublikationenzSz95zSzSaaConSch95.pdf/saake95objectoriented.pdf
  12. Hande Demirel. February 15, 2002.  An Integrated Approach to the Conceptual Data Modeling of an Entire Highway Agency Geographic Information System (GIS). University of Berlin. Retrieved: March 10, 2005. From: http://edocs.tu-berlin.de/diss/2002/demirel_hande.pdf
  13. Henrik Berg. 1997. SGML Document Database Relational vs. Object-Oriented Databases. Uppsala University. Retrieved: March 10, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/15644/ftp:zSzzSzftp.csd.uu.sezSzpubz
    SzpaperszSzmasters-theseszSz0110-berg.pdf/berg97sgml.pdf
  14. Jakub Wroblewski. 2000. Analyzing Relational Databases using Rough Set Models. Warsaw University. Retrieved: March 10, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/15398/http:zSzzSzalfa.mimuw.edu.plzSz~jakub
    wzSzbibliographyzSzIPMU2000.pdf/wroblewski00analyzing.pdf
  15. Jens Coldewe. 1998. Choosing a Database Technology. Coldewe Consulting. Retrieved: March 10, 2005. From: http://www.coldewey.com/publikationen/ChoosingDatabaseTech.pdf
  16. Jong P. Yoon. 1993. A Framework for Knowledge Discovery and Evolution in Databases. George Mason University. Retrieved: March 9, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/374/ftp:zSzzSzisse.gmu.eduzSzpubzSzte
    chrepzSzby_indexzSzISSE-TR-93-109.pdf/yoon93framework.pdf
  17. KJELL ORSBORN. 1996. An Extensible and Object Relational Database Technology for Finite Element Analysis Applications. Linkoping University of Science and Technology. Retrieved: March 10, 2005. From: http://user.it.uu.se/~udbl/Theses/KjellOrsbornPhD.pdf
  18. Klara Nelson. 2002. Determinants of Data Quality Management Adoption and Implementation. The University of Tampa. Retrieved: March 9, 2005. From: http://aisel.isworld.org/Publications/AMCIS/2002/020305.pdf
  19. Lenvendo Software Consulting. 2005. Database Links. Lenvando Software Consulting. Retrieved: March 10, 2005. From: http://www.lenvendo.ru/ru/info/links/
  20. Lisbeth Bergholt et al. 1998. Database Management Systems: Relational, Object-Relational, and Object-Oriented Data Models. Center for Object Technology. Retrieved: March 9, 2005. From: http://citeseer.ist.psu.edu/cache/papers/cs/13106/http:zSzzSzwww.cit.dkz
    SzCOTzSzreportszSzreportszSzCase4zSz05-v1.1zSzcot-4-05-1.1.pdf/bergholt98database.pdf
  21. Marianne Murphy, Ramesh Venkataraman, Uday Kulkerni. 2002. A Critical Evaluation of Schema Integration Methodologies and Trends. Eighth American Conference on Information Systems. Retrieved: March 9, 2005. From: http://aisel.isworld.org/Publications/AMCIS/2002/020304.pdf
  22. Mario Piattini, Coral Calero1, Houari Sahraoui, Hakim Lounis. March, 2001. Object Relational Database Matrices. University of Castilla-La Mancha. Retrieved: March 9, 2005. From: http://www.iro.umontreal.ca/~sahraouh/papers/lobjet00_1.pdf
  23. Naphtali Rishe, 1990. A Benchmarking Technique for DBMS and Advanced Data Models. Florida International University. Retrieved: March 10, 2005. From: http://www.cs.fiu.edu/~chens/PDF/ADBIS00.pdf
  24. Neil Leavitt. August 2000. Whatever Happened to Object Oriented Databases? The University of Melbourne. Retrieved: March 10, 2005. From: http://www.leavcom.com/pdf/DBpdf.pdf
  25. Paige S. Rutener, Susan R. Williams, E. Reed Doke. 2002. Implementing Database Solutions: Object, Relational or Both. Eighth American Conference on Information Technology. Retrieved: March 9, 2005. From: http://aisel.isworld.org/Publications/AMCIS/2002/020306.pdf
  26. Puhr D.A. 2002. A Thesis on the Clinical Data Warehouse. Wien University. Retrieved: March 10, 2005. From: http://www.akh-wien.ac.at/imc/mias/studarbeiten/2002-DA-Puhr.pdf
  27. Reinhard Braumandl. February 28, 2002. Quality of Service and Optimization in Data Integration Systems. University of Passau. Retrieved: March 10, 2005. From: http://www.opus-bayern.de/uni-passau/volltexte/2003/27/pdf/braumand.pdf
  28. Stefan Wagner. 2002. A Data Warehouse for Cross-Species Anatomy. Heriot-Watt University. Retrieved: March 10, 2005. From:  http://citeseer.ist.psu.edu/cache/papers/cs/30470/http:zSzzSzwww4.in.tu
    m.dezSz~wagnerstzSzpublzSzwagner_msc_dissertation.pdf/a-data-warehouse-for.pdf
  29. Steve McClure. August, 1997. . IDC Bulletin. Retrieved: March 9, 2004. From: http://www.ca.com/products/jasmine/analyst/idc/14821E.htm
  30. Wolfgang Keller, Christian Mitterbauer, Klaus Wagner. March, 2001. Object Oriented Data Integration. German Ministry of Research and Technology. Retrieved: March 10, 2005. From: http://www.objectarchitects.de/ObjectArchitects/papers/Published/ZippedPapers/onleng01.pdf
  31. Yasser Abdel Kader. November, 2003. An Enhanced Data Model and Query Algebra for Partially Structured XML Database. The University of Sheffield. Retrieved: March 10, 2005. From: http://www.dcs.shef.ac.uk/research/resmes/papers/CS0308.pdf

References Related to Data Models from British Libraries

Computer-science Essays - Find your free computer-science essays...

We have a large assortment of free computer-science essays available to use as research material. Visit our computer-science essays from our free essays section.

All of the essays in the Free Essays section were written by students and then submitted to us to display and help others. Thanks to all the students who have submitted their essays to us. You should not hand in our essays as your own. We do not condone plagiarism!