The concepts of databases have been devised with an effort of serving several clients (users) by a centralized system (database). Here, data is stored in a computer system that can be retrieved and modified in any manner the user sees fit. Thus the collection of the data, files, records and the application used to retrieve and modify such data is referred to as a databases management system. There several types of databases management systems due to the different methods that are used to manage the data. These different management systems are all defined by the manner in which the data is described and the application programs used. There are two common databases management systems used, these are, the Relational Database Management System (RDBMS) and the Object Oriented Database Management Systems. This paper evaluates the difference between the two with a particular emphasis on the advantages and disadvantages that each model provides.
Relational Database Management Systems
This is a kind of database management system that defines data according to a special relation that exists between the components of the data. Relational databases define data in a manner that one object in the data has a direct relation of another in one way or another. This model then defines that data can be arranged in sort of tables and particularly two dimensional tables. Here, relation is expressed in rows and columns. Queries on the databases can be done using simple, methods that requests about either a field in the row or in the column.
Properties of Relational Models
There are distinct properties that define the concept of relational databases. Some of main attributes of relational databases include atomic values, unique rows and columns. Values in the column are also of the same kind with similar definitions. The sequence of the columns is insignificant as the order does not matter in querying any data. Similarly the sequence of the rows is also insignificant. However relational databases use primary key fields that allow the searching to data to be speeded up. This allows data to be selected in selected models and thus data can be easily discerned.
Object Oriented Database Management Systems (OODBMS)
The concepts of Objected Oriented DBMS can be defined as combining the ideals of object oriented programming with normal DBMS systems such as relational databases. This means that databases utilizes all advantages associated with object oriented programming such as inheritance and polymorphism and applies these on databases management systems. In this model, components are defined as objects with specific features and attributes. Thus data attributes define the manner in which objects in the database relate to each other. Object oriented programming allows such benefits such a code inheritance and polymorphism that allows data to be coded in less constraining methods. Object oriented programming will also imply that data is stored in types and classes that will allow simple relations such as hierarchies, concurrence, atomicity, durability, extensibility, recovery and ad hoc query.
Advantages of Relational Databases over Object Oriented DBMS
One of the major advantages of relational DBMS is the process of creating, updating and deleting tables. Unlike Object oriented databases, updating the database can be done independent of the actual application. On the other hand, deleting a class in object oriented databases must be done in the application so as related classes are taken care of.
The second advantage that a relational database is that it is independent of programming language. This also means that accessing the data is independent of specific programming languages. On the other side, object oriented programming means that only object oriented programming languages can be used in coding and accessing the database.
Finally, relational databases allow the creation of simple tables that link the different tables in the database. While these ad-hoc tables allow much quicker queries, this flexibility is highly reduced in object oriented databases as it is highly dependent of system design.
Advantages of Object Oriented DBMS over Relational DBMS
One of the major advantages that Object Oriented DBMS has over Relational models is the concept of defining data as objects. An object has been identified as composite components which can take any forms of data in any arbitrary nature. This then implies that data types are not limited and thus classes of infinite nature can be pooled together.
A second advantage that Object-Oriented DBMS have over the relational model is the hierarchies that are created by the classes. In general, all data in any organization can be organized into distinct hierarchies this is better implemented by object oriented programming.
The third divagate that object oriented DBMS have is inherent in the coding or the programming language used. Here code inheritance means that less code is used and there is no impedance mismatch. Also, object oriented programming implies that there is no need for a query language as interaction between the classes can be done by accessing the classes. Finally, object oriented programming does not require the definition of a primary classes or fields as each class is uniquely defined.
References
Barry & Associates. (2001, April 29). OODBMS Facts. Retrieved May 21, 2012, from www.odbmsfacts.co: http://www.odbmsfacts.com/
Harrington, & L., J. (2000). Object-Oriented Database Design Clearly Explained. Chicago: Morgan Kaufmann.
Sumathi, S., & Esakkirajan, S. (2007). Fundamentals of Relational Database Management Systems. Boston Mss: Springer,.
Wang, Y. (2010). Education and Educational Technology. Boston: Springer,.
Ward, P., & Dafoulas, G. (2006). Database Management Systems. New York: Cengage Learning EMEA.