Comparing Database Models

Database models serve as structures or frameworks from which databases are patterned after. Database models, or the blueprints of databases, also serve various functions that ensure efficient performance of database systems. Database models serve as guides that relate how databases may be structured and formed, relate potential risks, threats, or problems that may be encountered during database operations, and thus, contribute to efficient and responsive database management approaches and strategies. (Rob, Coronel  Crockett 2008 33-34)

To understand the value and purpose of database models, the three major database models will be discussed in the succeeding sections, focusing on comparing the models in terms of structure, strengths, and limitations. The knowledge that will be obtained from the discussion will help in determining which database model is suited for specific needs and contexts.

The Database Models
Structure
The Relational Database Model was the brainchild of E. F. Codd, an associate of IBM, in 1970. The model was structured systematically, such that data may be processed and categorized logically in terms of relationship between the individual bits of data. Codd developed the Relational Database Model in order to provide users with a means to retrieve data that will be meaningful to them because data are arranged based on affiliation, unlike previous database models that merely stored and categorized models hierarchically. (Rob, Coronel,  Crockett 2008 70)

The Relational Database Model facilitates a logical arrangement of data through its simple and systematic table structure. The database is made up of different tables with many columns, called attributes, and rows, called as tuples. A table contains a group of related entities (Rob, Coronel,  Crockett 2008 70). For each row or column, data is stored according to affiliation or relationship. Storing data on the attributes and tuples is similar to the manual process of categorizing sets of similar information in rows or columns. If similar information is labeled under a single row or column, every affiliation or relation between bits of data are labeled in the database and placed in a single row or column. In this way, similar data is easier to retrieve by simply looking for the labels. (Rob, Coronel,  Crockett 2008 71)

The Object Oriented Database model is formatted with the use of various programming tools. Object databases are based primarily on object-oriented programming languages such as C, Java, and Smalltalk (Alapati 2008 39). Like the Relational Database Model, data is also arranged based on relations, but with the mechanism of various programming languages in the form of links. Data are defined in terms of a series of unique objects, which are organized into groups or similar phenomena (Johnson 2008 41). Related data are grouped within objects, which are also labeled with a unique identifier accessed through explicit links.

The Object Relational Model is a combination between the Relational Database and Object Oriented Database models. The model takes the benefits and advantages of each database model and combines them in order to provide a more efficient and less complex model. The table structure of the Relational Database is adopted, but data is still encapsulated in objects. (Alapati 2008 40). Thus, the Object-Relational Database model allows users to store data in distinct objects and rows and columns with more distinguishing and clearly identifiable labels.

Strengths
The Relational Database Model is easier to manage because the system is built in a less complex manner. Maintenance of a relational database is relatively easy because each table is independent of the others (Oz 2006 222). Furthermore, organizing and updating the tables are easy. Users can easily enter new data in the tables or delete entries without mixing up existing data in the database system. With the Relational Database Models labeling system, the retrieval of data is also simple. Users only need to take note of the keys or labels and enter them into the system when retrieval of data is required. (Oz 2006 222)

Unlike the Relational Database Model, data in the Object Oriented Database are interdependent. The structure of the database does not only include the categorization of data within the objects, but also include the automation of the process required to manipulate the data. Thus, the objects are interrelated with other entities in the database. (Oz 2006 225) The strengths of the Object Oriented Database based on its structure are related to the security of data. Programming language allows users to embed and secure information by encapsulating them in objects. The notion of encapsulation can be used to express security requirements in a way that is comprehensible to the users (Ceri, Tanaka  Tsur 1993 463). The Object Oriented Model also requires less storage space and the programming language, which enables affiliation between the objects, allows for a faster retrieval of data. (Jagoe 2002 31)

The Object Relational Database model, as previously discussed, takes the benefits and advantages of the Relational Database and Object Oriented Database model. Thus, the model is highly flexible and may be manipulated within a Relational Database or an Object Oriented Database. Furthermore, since the model retains the table structure of the Relational Database against the object structure of the Object Oriented Database, the technology used is more advanced, flexible, and easier to manipulate. Shifting from previous database models will also be less complex with users especially since the Object Relational Database model is patterned after older database models. (Becker 2001 222)

Limitations
One limitation of the Relational Database model is the allowable type of data that may be programmed in the tables of the database. Furthermore, the use of the Relational Database model requires close attention and involvement from users. The tables are incapable of categorizing data by relations mechanically. Thus, the full involvement of the user in making sure that data is stored and categorized properly and correctly into tables is necessary. (Ritchie 2002 206)

Since the Object Oriented Database model utilized programming language, the type of data that is allowed for encapsulation is limited. Like the Relational Database model, not all data types may be encapsulated in objects through the programming language. Other limitations include the exactness in the data encapsulated in the objects and the real world data being represented by the objects in the database. Data semantics is not rich, and the relationships between two entities cannot be represented in a natural way (Ma 2006 24).

The limitations of the Object Relational Database include the systems complexity. Although the system is built utilizing advanced technology in the form of programming language, some users may find it difficult to make use of the commands and protocols to establish and process the system. The learning curve for the application of the Object Relational Database is high, which sets limitations on its efficient use among users. Since the model was also patterned after the Relational Database and Object Oriented Database, some users find the combination complex especially since each database model was structured uniquely  one with the table structure, and the other with the object structure. Users who have been using the Relational Database may find it difficult to merge processing with Object Oriented Database features, and vice versa.  (Becker 2001 222)

Conclusion
Based on the brief comparison of the three database models, the structure, strengths, and limitations of each model were highlighted. Basically, the Relational Database model is a simple and easy to manipulate model, which allows a straightforward way of labeling data into rows or columns by relations and the retrieval of data through keys or identifiers. On the other hand, the Object Oriented Database model is a little more complex as it takes advantage of programming language in order to encapsulate related data into objects that are interrelated based on how each objects may be retrieved and manipulated. The Object Relational Database model is a combination of the two previous database models. Although the database model takes the strengths of the two other database models and thus, is flexible, the use of such system is more complicated and is associated with a high learning curve.

Overall, the use of each database system depends on the particular needs of users. The Relational Database model is simpler, but requires constant involvement of the user and selection of data that will fit the models table structure. The amount of data must also be controlled since the storage capacity is not accommodating enough. The Object Oriented Database model is meant for larger amounts of data since the encapsulation process lowers the size of data being stored. The Object Oriented Database also categorizes data mechanically, but will require knowledge of programming language and commands from the users for efficient application. The Object Relational Database requires the knowledge of both the Relational Database and Object Oriented Database. However, it takes advantage of the strengths and advantages of both older database models.

0 comments:

Post a Comment