As with just about everything else in the world, there are many different types of databases. There are also different ways to classify these types of databases. Two popular ways to differentiate between databases is by the function of the database and by the data model of the database.
First, we shall take a look at classifying by the function of the database.
There are different databases that are used for different tasks and jobs. The
two categories here are analytic databases and operational databases:
Analytic databases, also called On Line Analytical Processing (OLAP), are databases that are primarily used to keep track of statistics. Usually, they are read-only, meaning that you can only retrieve data, but you can't modify the data in any way. They are often used by stores as inventory catalogs. They keep track of the company's sales, and then can be read and analyzed to determine how and when more products are sold. These databases can hold all sorts of descriptive information about the goods stored in a company's inventory.
Operational databases, also called On Line Transaction Processing (OLTP), are databases that have a completely different job. These databases, unlike the analytic databases, let you actually change and manipulate the data. While analytic databases only let you view the data, these databases let you modify the data in any way you would like- you can add data, delete data, or even change the data.
Another way of classifying databases is by their data model. So, what's a data model? A data model is the intangible form in which data is stored. It is kind of like the structure of a database, but data models are only a theoretical idea; they are abstract concepts that you cannot touch. Data models are used to describe how the data is stored and retrieved in a database. Now, we will discuss a few of the types of data models.
The flat-file data model is generally used by the old paper-based databases. In this system, data was stored in numerous files. However, the files were not linked, so often, data might be repeated in more than one file. This caused everything to be quite redundant. The original "database," flat-file databases inspired scientists to find a way to link files so that they would not be repetitive.
Hierarchical Database Model:
The hierarchical database model took steps to get rid of the repetitiveness of the flat-file database model, but although it was somewhat successful, it did not completely succeed. There is still a level of redundant data in hierarchical databases.
A hierarchical database consists of a series of databases that are grouped together to resemble a family tree:
Each of the boxes in the diagram represents one database. The top database in the hierarchical model is called the "parent" database. The databases under it are called "child" databases. One "parent" can have many "children," but a "child" can only have one "parent." The child databases are all connected to the parent database via links called "pointers."
To get to a child database in the hierarchical database model, you must first go through the parent database, and then through the levels above it. If you have Microsoft Windows, you might realize that this is how Windows Explorer works. First, you open up a file- usually it's "My Computer." Under "My Computer," you can then choose from a list of drives. Pretend you clicked on the "Disk Drive C" icon. Then, under this, you can choose from a series of folders. After opening one folder, you can open another folder, and another, until you reach the file that you want.
Notice in the diagram above how the child databases on the same level are not connected. This presents a problem in the hierarchical database model and makes searching for data extremely difficult. Another problem is that data cannot be entered into the child databases until that field has been added to the parent database. This method was quite inefficient. Thus, although the hierarchical database model reduced some repetitiveness of data, it also presented many new problems.
Network Database Model:
The network database model was designed to help resolve some of the hierarchical database model's problems. For one thing, it allowed for links between the child databases. This no only reduces the chance of redundant data, but also makes searching for data much easier!
Another improvement of the network database model over the hierarchical model is that while in the hierarchical model a child database can only have one parent, in the network model, a child database can have more than one parent!
However, the network database model still had its share of problems. For one thing, it was difficult to execute and maintain. Only database experts could successfully use these databases. It was difficult for the general public to use network databases for real-life applications.
Relational Database Model:
The relational database model came in at full swing during the 1980s. Modeled after the work of Dr. E. F. Codd of IBM, the relational database model is extremely popular because it solved many of the problems displayed in the hierarchical and network database models.
The relational database model is different from the hierarchical and network database models in that there are no "parent" and "child" databases. Rather, all of the databases in the relational database model are equal.
Data can be stored in any number of separate databases. Then, these databases are connected by a "key" field. A key field is a field (in case you don't remember, a field is the columns in the database where the data is stored- see "Parts of a Database" for more details) that is found in all of the databases that are being linked together. All of the databases can be used to hold different types of data. For example, let's pretend that we have an address book, which is a paper-based database. If we were to use the relational database model, then we would store all of the data in separate databases. One database could hold a person's address; another could hold the person's phone number, etc. However, all of the databases might have one field that is the same, like, for example, the person's name.
This makes it easy to search for and extract data from the databases. It is also very efficient and easy to use. No wonder why this database model is so popular!
You might realize that databases can not only store text and numeric values, but that there are special databases that can also store photos, sounds, videos, and all sorts of graphics. How is this possible? Well, I can tell you one thing, the old hierarchical, network, and relational databases couldn't store all of these types of data! As a matter of fact, this is where the object-oriented database models come in.
Object-oriented database models let databases store and manipulate not only text, but also sounds, images, and all sorts of media clips! They are extremely useful, but unfortunately, they are large in size and are extremely expensive. Thus, they are only found in large commercial or governmental organizations.
As you probably know, the Internet is one of the most popular usages of a computer. Client/server databases are the databases that you will use for the Internet and for the World Wide Web. The database is left on 24 hours a day, 7 days a week. This is so that users, or clients, can access the web sites or whatever other data is contained in the database at any time they want. This is especially necessary if you want to make the applications available to anybody, anywhere in the world. There is a special type of interface that lets the clients submit certain data requests from the database. Then, the database will handle and process the requests!
Now that you know all
about the different types of databases head over to:
How Databases Work