A set of inter-related data is known as database and the software that manages it is known as database management system or DBMS. Hence DBMS can be described as “a computer-based record keeping system which consists of software for processing a collection of interrelated data”. A set of structures and relationships that meet a specific need is called as a schema.
The database is centrally managed by a person known as the database administrator or the DBA. The DBA initially studies the System and accordingly decides the types of data to be used, then the structures to be used to hold the data and the interrelationships between the data structures. He then defines data to the DBMS. The DBA also ensures the security of the database. The DBA usually controls access to the data through the user codes and passwords and by restricting the views or operations that the user can perform on the database.
Characteristics of DBMS
Control of data redundancy: When the same data is stored in a number of files it brings in data redundancy. In such cases, if the data is changed at one place, the change has to be duplicated in each of the files.
The main disadvantages of data redundancy are:
1)Storage space gets wasted.
2)Processing time may be wasted as more data is to be handled.
3)Inconsistencies may creep in.
4)DBMS help in removing redundancies by providing means of integration.
Sharing of data: DBMS allow many applications to share the data.
Maintenance of Integrity: Integrity to data refers to correctness, consistency and the interrelationship of data with respect to the application that uses the data. Some of the aspects of data integrity are:
1)Many data items can only take a restricted set of values.
2)Certain field values are not to be duplicated across records. Such restrictions, called primary key constraints can be defined to the DBMS.
3)Data integrity which defines the relationships between files is called referential integrity rules, which can also be specified to the DBMS.
Support for Transaction Control and Recovery: Multiple changes to the database can be clubbed together as a single ‘logical transaction’. The DBMS will ensure that the updates take place physically only when the logical transaction is complete.
Data Independence: In conventional file based applications, programs need to know the data organization and access technique to be able to access the data. This means that if you make any change in the way the data is organized you will also have to take care to make changes to the application programs that apply to the data. In DBMS, the application programs are transparent to the physical organization and access techniques.
Availability of Productivity tools: Tools like query language, screen and report painter and other 4GL tools are available. These tools can be utilized by the end-users to query, print reports etc. SQL is one such language, which is emerging as standard.
Control over Security: DBMS provide tools by which the DBA can ensure security of the database.
Hardware Independence: Most DBMS are available across hardware platforms and operating systems. Thus the application programs need not be changed or rewritten when the hardware platform or operating system is changed or upgraded.
The DBMS Model
The range of data structures supported and the availability of data handling language depend on the model of DBMS is based. The models are:
1) The hierarchical model.
2) The network model.
3) The relational model.
The hierarchical model: In this parent can have many children. A child cannot have more than one parent and no child can exist without its parent.
The Network model: In this there are no restrictions on the number of parents. A record type can have any number of parent and child record types. It is more complex than the hierarchical model because of links. It can represent any structure designed in hierarchical model, and so is a superset of the hierarchical model.
Relational Model: Because of lack of linkages relational model is easier to understand and implement.