A database is a system that contains information about many categories and has the capacity to hold vast amounts of information. Over the years many different database types have been developed and, as things evolved, the relational database emerged.
The concept of a relational database was originally developed in the 1970s by E.F. Codd. Over the years it caught on as an efficient way to electronically store and arrange information. To date, the relational database has been the most popular.
It is a type of database that is a collection of logically connected tables (relations) and this information is organized to serve many applications with efficiency. A few advantages to using a relational database system are:
- Better abilities to share data
- Expand security
- Tighter control on redundancy
All three of these contribute to maintaining data integrity. When people share data via a database, it allows many users to access information simultaneously, allowing for a more efficient way to store records. Retrieval is almost instantaneous for multi-users. Historically, in earlier versions, users would have to wait for another to access data or would have delayed updates. The relational database design corrected these issues.
Storing and Sharing Data
As noted above, one of the great improvements the relational model added was the way users could update information (i.e. a phone number) and all users were immediately able to view the update. No longer was there lengthy waiting time for view new or updated information. Another plus is the relational model left room for flexibility if more data groups needed to be added, the entire application didn't need to be re-written in order to make some modifications.
When establishing a relational database, it's important to examine the users' needs and what information should be stored. The relational model allows for users to put questions in and get rapid answers to their questions due to the way the information is structured within the database underneath the interface.
The concept of a relational database is designed in the way that several tables are related to one another. What are tables? Tables are objects, such as "customer", "order" or "employees". Each of these entities is designated as a table, and within the table the individual records are contained.
Records are a "row" in the table that represents an individual occurrence that the entity represents. Each record is assigned a primary key, more commonly known as a unique identifier, and the entity's attributes are entered and stored.
In a database management system, the relationships between the entities are also stored. The term attribute in the relational model is used to describe the fields in a table; a field is more commonly known as a column and each one lists the characteristics of the entity (i.e. name or address).
When designing the database, it is important to accurately identify the relationships between the tables. The key to a well-designed database is to go through the process of normalization. Normalization "is when tables are defined to allow flexibility and increase data integrity and minimize redundancy. Each non-key column depends on whole key and nothing but key." (Post, 2005)
By going through this process, repeating groups of information are eliminated, further reducing the amount of data stored and making it more efficient to access.
Security is also a big plus in using a database management system. A database environment is designed to prohibit unauthorized users from accessing information and it can also limit the accessibility for authorized users as well.
It's important to pay attention to security these days. Most data breaches can be linked to human error.
By using the relational database approach, different levels of permissions can be assigned and, depending on the level of authorization, it enables the level of security desired. This is especially good for large organizations that have many people accessing records. With this design, some groups could have access to data and the ability to manipulate (change) data, while other groups may only be able to view all or only selected information that pertains to their jobs (think "need to know basis").
Studies repeatedly find that human error is the top contributor to data breaches. 3, 4 Best for decision makers to limit access to those who actually need it. This won't solve all security problems, but does add a layer of protection.
Controlling redundancy greatly reduces wasting space, maintains consistency and, as a result, creates better accuracy since there is less room for errors to be made if the proper controls are programmed in. It also enhances ability to make changes, it is no longer necessary to update each section where an address or name is listed.
For example, in an order where the address may appear multiple times, by reducing redundancy it saves the user the time and energy from having to weave through every record to make the change. If the user updates a name in a table, the database automatically updates all records relating to that person. Controlling this redundancy generates a much higher way of efficiency.
One of the aims of relational databases is to reduce/eliminate redundancy, making it easier to distinguish between two records (which may be similar in nature) and not have repeating information stored in different areas. The information is all linked together and can be displayed in different ways.
The relational database model is one of the most common ways organizations use to maintain important records. Yet, as technology rapidly progresses, this model too may someday become outdated as the tech and science industries work to develop other types of ways to manage the massive amount of data our society generates.
It's important though not to go after the latest tech, just because it is new. With any type of technology, it's important to examine organizational and user needs and build based on these requirements. Using traditional system analysis and data modeling approaches before jumping into the tech side of things can help lead to determining the best approach to storing and maintaining records. This way it avoids problems that can arise which may not be obvious until long down the road, making it costly to correct.
[ Related reading: An Overview of the Different Database Models ]
Additional Reference: Post, Gerald, "Database Management Systems", 3rd Edition, 2005