In past and present, the database is considered as the place which is used to store the collection of data for the future use. So, they store it in the paper at past. As they store it in the paper they need separate file and cabinet to keep that paper secure. In this method, the cabinet acts as the database management system. After the usage of the computer and in present, the users start to store the data in notepad, excel as the non-relational database. Even it is a computer based one the users feel difficulties to filter and sort the data from the database so they start to find out another best way. To overcome this situation, they create database management system. Database management system (DBMS) is considered as the system which is used to store and retrieve the data easily and can manage the space easily. This DBMS is classified into different database models. The database model is considered as the internal logical structure of a database. Such database models are follows
- Traditional file keeping model
- Hierarchical model
- Network model
- Relational model
- Object oriented model
Traditional file keeping model
The first database model is considered as the traditional database model. This model is considered as the manual paperwork. In this model, the data are stored in manual papers and that papers were stored on file and the collections of files were stored in the cabinet. So, this model faced a lot of problem when storing and retrieving the data. So, computer experts later find different models. After the usage of different data models the traditional model becomes useless but in early this help to store and retrieve the data when needed. Now it only has limitations.
Benefits of traditional model
- This is the first model which arrived to store the data so data lost can be protected by writing and keeping in a file for long term.
- Papers, pens are used so it will be easy to develop and maintained by anyone no need an expert to implement.
- No need to study separately to work on this system.
- Simplest data storage system so expense is low.
Limitations in traditional model
- Difficult to edit the stored details because the data will be written on the paper by using pen if they want to edit they must cut and rewrite with the correct data or they use any correction ink or otherwise they should rewrite all the details on that certain page to another new sheet.
- Need separate space to keep the cabinet and need the bulky amount of papers as cabinet need a large space to keep.
- All the details will be in handwritten format so it is difficult to read and understand if the handwriting is worse.
- Need to manage the risk of natural disasters. If the user didn’t consider the natural disasters like flood, wild fire these will affect the store data in the cabinet by wash off the contents.
- Need special and separate employee to manage the cabinet in a proper way as there will be thousands of files so a separate human should need to arrange them on the cabinet.
- Difficult to retrieve a single data from tons of data. If the user want one person data, he should read the whole tons of details until he gets the details of the searched person.
- There is a high chance for the data duplication. Because all the details will be written by using pen so the user can rewrite the same data as careless.
- Less in security as it will be easy to misuse the data and the chance for data loss. Because anyone can access all the details as in this method the user can’t set any grant and revoke function.
- Need time to filter the data. If the user need to filter some person’s data by age or address the user should read every detail from start up to the end as there may be tons of data so it need time.
- Can’t use the query to sort the necessary data. It is a manual based one so the user can’t write any codes to filter the details from the whole details.
This model was developed in the 1960s by IBM. This model follows the structure of a tree and as a mother-child format. So, this model has one to many relationships. In this model, each record only has a single parent record but the parent can have many child records. In past, this model looks as best but in present, the usage of this model is less because of its limitations. The best example for this model is the folder file pathway of the computer system. If the user store one word file into a folder in local disk drive E (E:\New folder\word) the user want to open This PC then local disk E and then open the new folder then only he can access the word file. This method is considered as the hierarchical model. The formation of the human body will clearly explain the hierarchical model. The human body was formed by organs which are the collection of tissue and the tissue is the collection of cells.
Benefits of hierarchical model
- As this is a computer based system it is easy to access and filter data because user can speedily search and filter the data by following the correct pathway by using its name.
- Easy to manage a large amount of data in small space because no need to keep any cabinet only a computer system with hard disk capacity is enough.
- Easy to revoke some data to the access by a user because in computer the user can grant and revoke some data by setting password and access permission.
- Easy to add and modify data because in computer user can add a data by open the correct file and easily edit the store details by using the keys of the keyboard.
- The data at the top can be access quickly because the top data will be act as parent data so when the user start to access the database the starting data and file will be displayed as first so the needed time to access that top data will be low.
- Easy to use for the real incidents/ situations like employees under one manager. In this case manager act as the top and parent data and employees act as the child.
Limitations of hierarchical model
- Need time when try to access the data in the last bottom of the model. If the data is stored in several branches, then it takes time to go to the last branch through accessing from the top.
- Need to store the same data in many entities so data duplication is available. Because in this model only one relationship is possible so if a name is needed to connect with two data like an employee work under a team and a leader the name will be store under leader data and in group member data at that time the same name will be stored in two places so data duplication will occur.
- Need to run the whole database from top to the place where the required data is located. As the access, can be take place in a sequential form so the user should start from the parent data or the top data of the model and follow the correct path until he gets the required details.
- Many to many relationships will not be used. Because the relationship will be available with parent and a child and one child can only follow one parent but parent can have many children so one to many relationship or one to one is possible.
- There is a chance for the unwanted access while goes through the full system. If a user access the data from top, he can view the un relevant data which is available before the required data which means an employee can view the other employee data by accessing through the parent data.
- Lack of structural independence. Because changes made to a child or parent data will affect the formation of the model like if the user want to delete a folder which contain multiple folder and which is in the multiple folder will affect the pathway of access and model.
In 1969 Charles Bachman introduced this model when he was work at the Honeywell company with the database name of Codasyl. The hierarchical model has high flaw so he plans to overcome that issue and decide to develop this model with more flexibility. That’s why he develops this model. This model is considered as the flexible way of representing the object by point out their relationship. In this model, the records are connected to one or more parent record so the many to many relationship can be possible. Relationship types are considered as arcs and the objects are considered as nodes and developed as a graph, this is the only unique schema which makes different from hierarchical model.
In this the data will not be stored as the table so each data will be in a record form as nodes. Nodes will be linked through relationship by keeping the same data in different records. The department, student, course, professor data will be connected by using the same name field. It is easy to do any update to this network by creating that data as a record and join with these nodes by using a common data and easy to delete a node by removing the link. So, this model is more flexible than the hierarchical model.
Benefits of network model
- This is a simple model and similar to hierarchical model so easy to manage. Because use can have experience on pervious computer based model.
- Can easily manage a lot of data than the hierarchical model. Because in this model one child can have multiple parents so more links and data can be added.
- Easy to manage different type of relationships like one to many and many to many as one child will be linked with multiple parent record.
- Data independence level is higher when compared with the above method. Because in this model a single data will be linked with multiple data so deleting of one data will not affect the system and the model as the other links will be manage the structure.
- Easy to retrieve the data with high speed when needed by following the links as it have more link to a single data easy to access by following different ways and no need to access from the top so it is easy to search a single data.
- All the data will relate to at least one another data so no data will be kept without any relationship.
- This method is more flexible than hierarchical model. As the user, can access from different pathway and no need to start from the top so this is more flexible one.
Limitations of network model
- This model will be look as difficult for the first-time access because the user can’t easily understand the links at first time.
- System will become complex as each and every record should be linked with another one or more data.
- In this model, also there is some limitation in the update, delete as the user need to follow every link to make a small change.
- Changes made to the structure force to change in the application it will happen when deleting and adding multiple data which has lot of links but it is better than hierarchical model.
Edgar F. Codd introduced and proposed the relational model in 1970 to the IBM company as he is the one of the employees of that. But the IBM rejected his proposal as they already successfully running the hierarchical model. So later two students of him Eugene Wong and Michael Stonebrake in 1973 use his paper and develop the relational model with the name of Ingres by using the code Quel as an open source software. Later the oracle start to access this proposed model and developed a new software and released as oracle database.
This is the most common model used up to now. This is the first method which stores the data in table form. In table form, the data will be stored as rows and attributes. The collection of the attribute is called as row or tuple. These tables can be related to the different type of keys like primary key, foreign key, etc. The relationship also can be classified as one to one, one to many, many to many.
ID is considered as the primary key and the field from one table which is accessed in another table is considered as the foreign key. The primary key is used to store the data as unique and not null value and foreign key is used to connect a table with another by accessing the other field to the second table. ORACLE, SQL, MYSQL are the software developed by using the relational model.
Benefits of relational model
- Easy to use as this is simpler than the other models because it uses table format to keep the data.
- Speed retrieving and easy to filter the data by using the simple and separate query.
- Easy to write even complex query in other model there is no option to write any query like this model.
- Data duplication will be stopped by the primary key. Primary key only allows unique data and not null data so this key will be set to a field in a table.
- Can have the different type of relationship like one to one, one to many and many to many as every relationship is possible in between tables by using foreign key concept.
- Data in this method was in the form of normalization so there is no chance in the data repeating.
- Security level is higher than the other model because grant and revoke function and password protection can be given to this model.
- It has high flexibility for the usage as the versatile table can be created when filtering the data.
- Operations like insert, delete, update can be done easily because there will be no changes occur when adding or deleting the data in a table deleting a table also will not affect the system.
- It is a structural independence model as changes in the structure will not affect the application.
Limitations of relational model
- Need high performance system to get maximum efficiency as this is a big application and need high RAM memory and storage capacity to run a large database.
- Cost is high to implement and maintain this type of database because the price of a software and the high-performance system is high.
- Some limitation can be found in field length and character length for some data types. In varchar data type 256 characters can be possible and in boolean data type true or false value will be possible.
Object oriented model
This model was developed in 1980 by using the knowledge of object oriented programming concept. In this model as the name implies the database will be defined by using objects. Attributes define the characters of the data and method define the behavior of data and called as methods. This method has the relationship of many to many and used when there is a complex data to store or when the data has the complex relationship. It can’t use when the user needs to store few tables with the higher number of data.
This is most suitable for computer aided engineering, computer aided design, computer aided manufacturing.
Example, each box is considered as objects and each object relate to other with the relationship. This is a simple example of an object-oriented method.
Benefits of object oriented model
- No need any special time to save and retrieve data when storing it as objects.
- Less code is enough to develop the database. Because no need to write the same coding again when need only calling the name of the object is possible so length of the code will be reduced.
- Easy to direct through the full database by analyzing the object name.
- Mostly suitable for the real-world problems as this is used to store complex data.
- Can store different type of data like pictures, audios.
- This type of model can be extendibility so the subclass can be extending to super class as objects are created within classes.
Limitations of object oriented model
- There is no universally agreed model because anyone can develop different objects by collecting the codes as a group according to their needs.
- This is a more expensive database type because it is difficult to manage so the employee who manage the database required high salary and the price of the model also differ according to the language used so this will be an expensive one.
- Difficult to understand all the features clearly as it didn’t use one method to create and it used different language to develop so difficult to understand for a new user.
- This can be developed by using different programming languages so there is no fixed standard coding.
- There is a high competition with the relational model as the relational model has a standard SQL to develop the database.
- Security level is low as the user can’t revoke and grant access to individual classes.
- The database will be more complex when using advanced features like super class sub class.