Differences between object oriented databases and relational

Document Sample
Differences between object oriented databases and relational Powered By Docstoc
					            Compare and Contrast OODBMSs and RDBMSs - Page 1




       Individual Assignment Week 3



Compare and Contrast OODBMSs and RDBMSs



          Nancy Flowers-Mangs



       Database Concepts - DBA 330



         Instructor - Murry Jensen

             March 17, 2004
                                    Compare and Contrast OODBMSs and RDBMSs - Page 2


                                       Introduction

       Databases are used throughout the computer industry to store and

manage data of different types and scales. To provide the best possible

solution, several types of DBMSs are available to meet the needs of the specific

business problem that needs to be addressed. The benefits and drawbacks of

the two major types of DBMSs, Object Oriented Database Management

Systems (OODBMSs) and Relational Database Management Systems

(RDBMSs ) will be discussed in this paper.


                        Relational Database Management System

       The most widely used DBMS is the Relational Database Management

System (RDBMS). This system is based on a table structure that stores and

manages data. A table is a predefined categories of datum that are made up of

rows and columns. The columns store the fields that define the category of

data. Each row holds a complete record for the table where the data is stored.

Each table has a key field that uniquely identifies the table. The key field is the

field that is used to create relationships between other tables in an effort to

connect data. This type of organization allows data to be stored in smaller

increments and then connected by through association. A key field is a unique

field that identifies the table and allows relationships to be created between

tables. Business rules are applied to the tables and fields to ensure the data is
                                   Compare and Contrast OODBMSs and RDBMSs - Page 3


accessed and used properly. SQL (Standard Query Language) is the

tool/language that is used to interact with and between tables to utilize the data

in ways that is meaningful to the business rules.

       The Object Oriented Database Management System (OODMS) do not

have as high a usage rate. This type of DBMS provides high performance for

companies with extensive amounts of data that is highly complex. OODMSs

incorporate Object Oriented technology where the data is seen as an object.

Data is defined as an objects and classes (collections of like minded objects).

The data objects utilize the concept of inheritance, where the lower classes

inherit the data definitions and methods from the upper classes. The class

defines only the data it is associated with. This helps to determine how the

classes of objects relate to each other. Data is accessed in a transparent manner

through intersections of persistent objects.

       So why would one choose RDBMS or OODBMS? There is no real right

or wrong answer to this question. The choice made is based on the data to be

stored/managed, the type of database needed and the technology preferences

of the company providing the service or company who is receiving the service.

Often the choice is made based on the skill set available and the DBMS that is

already available.
                                    Compare and Contrast OODBMSs and RDBMSs - Page 4


                     Benefits and Drawback of Each System

       Regardless of the preference, each DBMS has its benefits and

drawbacks. OOBMS are documented as being easy to maintain as classes and

objects can be developed and updated separate from the system. Performance

is also high with OODBMSs as one can store complex datasets in their entirety

and therefore process data more quickly. Due to the class structure, the data

can be more easily distributed across networks as well as the distribution of

work. A query language is not necessary since the interaction of the data is

done by transparently accessing the objects. No keys are needed to identify the

datasets or create connections between the relationships. Many developers find

the programming time to be reduced with an OODBMS since objects inherit

the characteristics of the classes. The use of classes also helps to ensure the

integrity of the data. In addition, a class is reusable for the existing database and

other databases so that it can be distributed more easily across networks.

       On the other hand, Relational Database Management Systems (RDMS)

are much easier to learn and create. Many of the available systems have a GUI

interface that makes the technology available to people who are not highly

technical. Since the database is not dependent on a complex schema, increasing

the capability and size is relatively easy. Ad-hoc queries can also be added using

Structured Query Language (SQL) once the production database has been
                                     Compare and Contrast OODBMSs and RDBMSs - Page 5


completed. In addition, the data can be used independently as the tables are set

up as separate entities rather than grouped in class.

       Both systems have their drawbacks as well. OODBMSs have their

drawbacks. They can be somewhat complex and difficult to learn due to the

object oriented technology. When a change needs to be made to the database,

the entire schema must be updated. Queries are dependent upon the system

and therefore must be predetermined in the planning stages. Adding queries to

the database after the fact is a difficult task.

       While RDBMSs are easier to use, they are limited to simple data types

and therefore do not support more complex types such as multimedia. In

addition, if the data that needs to be processed is complicated and extensive,

performance may suffer. While there are lots of solutions within this family of

database systems, they may not be robust enough to handle larger scale

projects.

                                     Conclusion

       Both types of database technologies provide a solution for the right type

of project. The choice to use one vs. the other depends on the type of project,

skills of the development group and the technology available for the company

who is looking for a DBMS.
                                 Compare and Contrast OODBMSs and RDBMSs - Page 6


                                  References
       Barry & Associates (n.d.) Object-oriented database articles and products
Retrieved from the World Wide Web March 13, 2004. http://www.service-
architecture.com/object-oriented-databases/

      Lozano, F. (n.d.) Introduction to Relational Database Design. Retrieved
from the World Wide Web March 13, 2004.
http://www.edm2.com/0612/msql7.html

      Definition of a Relational Database. (n.d) Retrieved from the World
Wide Web March 13, 2004.
http://www.digitale.it/lezione/database/whatis/relation.htm

       Tech-Target.com Object Oriented Programming – Definition. (n.d)
Retrieved from the World Wide Web March 13, 2004.
http://searchwin2000.techtarget.com/sDefinition/0,,sid1_gci212681,00.html

      Carnegie Mellon Software Engineering Institute - Object Oriented
Database (2004). Retrieved from the World Wide Web March 13, 2004.
http://www.sei.cmu.edu/str/descriptions/oodatabase_body.html

     Leavitt Communications Inc. (2004) Industry Trends – Whatever
happened to Object Oriented Databases. Retrieved from the World Wide Web
March 13, 2004. http://www.leavcom.com/db_08_00.htm

      Obasanjo, D. (2001) An Exploration of Object Oriented Database
Management Systems
http://www.25hoursaday.com/WhyArentYouUsingAnOODBMS.html