What is a Relational Model?
The Relational Model is a clean and simple model that uses the concept of a relation using a table rather then a graph or shapes. The information is put into a grid like structure that consists of columns running up and down and rows that run from left to right, this is where information can be categorized and sorted.
The columns contain information related to name, age, and so on. The rows contain all the data of a single instance of the table such as a person named Michelle.
In the Relational Model, every row must have a unique identification or key used to allocate the data that will follow it. Often, keys are used to join data from two or more relations based on matching identification.
Here is a small example of the grid like Relational Model:
|
Name |
Date of Birth |
Annual Income |
Dependents |
M-000-00-0002 |
Michelle |
June 22nd, 1973 |
39,000 |
2 |
000-00-0001 |
Michael |
December 12th, 1949 |
78,510 |
4 |
000-00-0002 |
Grehetta |
March 5th, 1952 |
0 |
0 |
The Relational Model can often also include concepts known commonly as foreign keys, foreign keys are primary keys in one relation that are kept in another relation to allow for the joining of data.
An example of foreign keys is storing your mother’s and father’s social security number in the row that represents you. Your parents’ social security numbers are keys for the rows that represent them and are also foreign keys in the row that represents you. Now we can begin to understand how the Relational Model works.
How did we get the Relational Model?
Like most other things the Relational Model was born due to someone’s need. In 1969 Dr. Edgar F. Codd published the first use of the relational model though it was meant to be no more then a report for IBM, if swept across and through data analysis unlike any before it.
Codd’s paper was primarily concerned with what later came to be called the structural part of the relational model; that is, it discusses relations per se (and briefly mentions keys), but it does not get into the relational operations at all (what later came to be called the manipulative part of the model).
Codd’s discovery, his creation was a breath of fresh air for those digging through data banks, trying to categorize and define data. When he invented this model he truly may have not foreseen what an incredible impact it would have on the world of data.
Known Issues with the Relational Model
Some believe there is a great deal of room for improvement where the Relational Model is concerned. It may be a surprise to find not everyone supported relational model. There have been claims that the rectangular tables do not allow for large amounts of data to be recorded.
With the example of apples and oranges, both are fruits and therefore related in that way but apples have different attributes then oranges, At times a user may only want to see one or the other, then again the may want to view both. Handling this type of data with the relational model can be very tricky.
We are beginning to hear more and more about the need for a better model, a more adequate structure, still no one has been able to design something that can truly hold its own with the Relational Model.
True the model could use a bit of tweaking and leaves a little to be desired, yet, what would the perfect model be? What could we use that would apply to as many instances as the Relational model, and still surpass its usefulness?
{qbapagebreak title=Relational Model Advantages}
Advantages of the Relational Model
The Relational Model has survived through the years, though there are those who are always trying to construct a more efficient way, it has managed to come out the victor thus far. One reason may be due to the structure it is big enough to be worthy of optimizing.
Another notable reason is that the relational operations work on sets of data objects, this seems to make it a reasonably adequate model for remote access. Finally, it is a clean model and concise model that does not encourage design extravagance, or phrased as, “design cuteness.”
Some prefer the clean and simple style that the Relational Model offers, they can easily do with out colorful shapes and stylish layouts, instead wanting nothing more then the clear cut facts and relevant information.
Here are a few of the more obvious and noted advantages to the Relational Model:
- Allows for Data Independence. This helps to provide a sharp and clear boundary between the logical and physical aspects of database management.
. - Simplicity. This provides a more simple structure than those that were being before it. A simple structure that is easy to communicate to users and programmers and a wide variety of users in an enterprise can interact with a simple model.
. - A good theoretical background. This means that it provides a theoretical background for database management field.
Do not be surprised to find that these are nearly the very same advantages that Dr. Codd listed in the debut of this model. It is obvious that he was right, and these advantages have been restated again and again since the first publication on his report.
There has been no other model brought into view that has had the advantages of the Relational Model, though there have been hybrids of the model, some of which we will discuss in later articles.
The Relational Model versus Earlier Models
We began with the Hierarchical Model, this model allowed us to distribute our data in terms of relation, some what like that of a hierarchy, it showed a parent/child type of relation. It is one big down fall being that of the fact that each “child” could only have one parent, but a parent could have many children.
This model served us well in its time of glory, and sure there are still systems using it now, though trusting their more hefty loads of data to better equipped models.
Following the Hierarchical Model we investigated the Network Model. This model was closely kin to the Hierarchical Model in that it to allow for a parent/child view of data, its main advantage over the previous model being that it allowed for a many-to-many relationship between data sets.
Still the data had to be predefined. Though some forms of this model are still used today, it has become some what obsolete.
Finally we come to our current model. The Relational Model. Like those before it, it to expresses the relationships between data, only it allows for larger input and does not have to be predefined. This model allows users to record and relate large amounts of data.
This model also allows for multi-level relationships between data sets, meaning they can be related in many ways, or even only one way. It is easy to understand how this model has managed to out live those that came shortly before it. It is versatile, simple, clean in structure, and applicable to nearly every type of data we use.