hello everyone and welcome back in this video we're going to discuss in detail the different advantages and disadvantages of dbms the different advantages of dbms approach are controlling redundancy restricting unauthorized access providing persistent storage for program objects providing storage structures for efficient query processing providing backup and recovery providing multiple user interfaces representing complex relationships among data enforcing integrity constraints and permitting inferencing and actions using rules so these are the advantages of tbms approach which we will look in detail the first one is controlling redundancy in the traditional file system each user group maintains their own
files let us consider the same example as we took earlier in our videos if we consider a university database we can have two user groups the first one is the accounts department that keeps track of the fee details and another user group the exam department that keeps track of the grades received by the student in each course so in the traditional approach much of the data will be repeated like in this example details about the student are repeated twice this duplication of data or otherwise called as redundancy leads to problems like wastage of storage space
and data inconsistency now data inconsistency occurs when update is applied to some files and not to others like for example if one user group say the accounts department updates the student name and the same student name is not updated in the other user group that is the exam department then that causes inconsistency whereas in the database approach views of different users are integrated or they are linked together while designing a database and in this approach all the data will be stored in only one place of the database and any number of users can access this
repository at the same time so duplication of data or data redundancy is controlled in the dbms approach also it ensures data consistency and saves storage space so this is about the first advantage of dbms approach controlling redundancy the next advantage of using dbms is restricting unauthorized access dbms allows multiple users or many users to share a large database so all these users will not have the same type of access permission to the database for example any confidential data of a company like the finance will be accessible by only a few authorized users some users will
be allowed only to retrieve data whereas some users will be allowed to both retrieve as well as update the data in the database so these type of access permission or access operation is controlled by the dbms there is a unit or there is a module in dbms called as a security and authorization subsystem is used by the database administrator or the dba to create accounts and also specify any restrictions on that account for example parametric users are allowed to access the database only through the canned transactions or through the standard type of queries we have
already seen in our previous video database users what can transactions are and also we have seen about the different types of users so this is about restricting unauthorized access to the database the next advantage of dbms approach is providing persistent storage for program objects just as we have object oriented programming concept based on that same concept we have object oriented database systems since database allows or since it provides the storage of program objects for a long period of time we have this concept of object oriented database systems now let's compare the traditional file systems to
the dbms approach in the traditional approach the values of program variables will be discarded or it will be deleted or erased once the program terminates whereas in the dbms approach the values of the program variables will not be discarded when the program terminates they allow the program objects to store permanently and such an object is said to be persistent in the traditional approach since the objects will be erased or deleted when the program terminates we can store the objects explicitly and separate files which are permanent and this involves conversion to a format that is suitable
for file storage whereas in the dbms approach it recognizes the programming languages and automatically converts any objects in c plus or java can be stored permanently in an object oriented dbms such objects are said to be persistent since it is not erased or deleted when the program terminates so this is the third advantage of dbms approach and persistent storage of program objects is an important function in database systems the next advantage is providing storage structures for efficient query processing database systems must provide capabilities or it must be capable to efficiently execute the queries and updates
since the database is stored on disk dbms has to provide special data structures to speed up the disk search and for this disk search we use indexes now to process a particular query the database records will be copied from the disk to the main memory there is something called as database buffer which allows temporary storage of data in the main memory now a module in dbm is called as the query processing and optimization module is responsible for efficient query execution or in other words it is responsible for choosing how to process and execute the queries
efficiently that's about the storage structures that are provided by dbms for efficient query processing the next advantage is providing backup and recovery now a module in dbms called the backup and recovery subsystem is responsible for recovery from any kind of hardware or software failures like for example if the computer system crashes during a complex transaction then the recovery subsystem of dbms is responsible for ensuring or making sure that the transaction resumes from where it is interrupted or at least restore the database to the state it was before the transaction started executing so there is another
advantage of dbms providing backup and recovery the next advantage of dbms is providing multiple user interfaces we have already seen the different types of database users in our previous video and all these users have different levels of technical knowledge so based on that dbms provides a variety of user interfaces like for example query languages are for the casual users and the programming language interfaces are for the application programmers the form based user interface are for the parametric users and the menu driven interfaces are for the standalone users we have already seen all these different types
of users in our previous video so for each user based on their technical knowledge dbms provides user interfaces the form style interfaces are the form based interfaces and the menu driven interfaces together they are called as a graphical user interface or gui so this is about multiple user interfaces provided by dbms for each user based on their technical knowledge the next advantage of dbms is representing complex relationships among data a database can have variety of data stored in different tables and these data can be interrelated in many ways and dbms must be capable of representing
any kind of relationships among these data also it must be capable of retrieving any kind of related data and updating them easily and efficiently so this is about representing complex relationships among data the next advantage is enforcing integrity constraints in a database we can have different types of integrity constraints on the data dbms should be capable to define these constraints and also enforce them now the simplest type of integrity constraint is specifying the data type for each data item whether it is integer or string of characters etc so specifying a data type is one of
the most simplest type of integrity constraint another type of constraint is the uniqueness of the data item values like for example the roll numbers of students has to be unique and cannot be repeated so that is another type of constraint and it is the responsibility of a database designer to identify what type of integrity constraints are required on the data during the database design so this is another advantage of dbms enforcing integrity constraints on the data the next advantage of dbms is permitting inferencing and actions using rules database systems must provide capabilities or it must
be capable for defining deduction rules for inferencing new information so database systems define rules and based on those rules it inferences new information or new information is being concluded and such database systems are called as deductive database systems like for example we can have rules in a mini world application for determining if the student can write his exam or not i can keep a rule say only if the attendance of a student is about 70 percent then only he can write his exam so these are rules that can be applied and based on those rules
some action will be taken active database system is a database that consists of a set of triggers so based on a condition an action follows an active database system provides active rules that automatically initiates actions when certain evens and conditions occur so that is about permitting inferencing new information and initiating of actions using rules next let us look into the additional implications of using database approach the first implication is potential for enforcing standards the database approach allows the database administrator to define certain standards and also to enforce them among the database users so since a
certain standard is set it facilitates communication and cooperation within a large organization standards can be set for naming data elements or for data element format etc next implication is the reduced application development time an important feature of database approach is it takes very little time to develop a new application like retrieving data from the database for printing a report takes very little time designing a database and then implementing it might take time but once the database is running less time is required to create any kind of applications based on that database next we have flexibility
there might come a necessity to change the structure of the database as the requirements of the users changes and modern day dbms allow certain type of changes to the structure of the database without affecting the stored data and also without affecting the existing application programs so that is about the flexibility of the database management system the next implication is availability of up-to-date information as we know dbms allows multiple users to share a database when one user updates the data in the database all other users can immediately see this update and this availability of up-to-date information
is necessary or it is essential for many transaction processing applications and this availability of up-to-date information is made possible by concurrency control and recovery subsystems of dbms we have already seen that the recovery subsystems is responsible for recovering from any kind of hardware or software failures and in our previous video also we have seen what is concurrency control concurrency control manages simultaneous access to the database that is it prevents two users from editing the same data of the same record at the same time so that is about availability of up-to-date information the next implication is
economies of scale dbms allows consolidating or combining data and applications so that we can prevent wasteful overlap of resources or wasteful overlap of activities in different departments of the same organization so this allows a large organization to invest in more powerful equipments rather than each department having their own equipment thus preventing wasteful overlap so that reduces the overall cost of operation and management so these are the different implications of using database approach in addition to the advantages next let us see the disadvantages of dbms or when not to use dbms though dbms has its advantages
it also has its disadvantages database systems might have certain overhead costs and these overhead costs of using dbms are due to certain reasons the first is the high investment that we have to do initially in hardware software and also in training next there is always an overhead cost for providing security concurrency control recovery etc more problems can arise if the database designer and the database administrator do not design the database properly so rather than using dbms we can use the regular file system when the database and the applications are very simple and well defined and
there are no changes expected also when multiple user access is not required we can use the regular files rather than dbms so this is about the disadvantages of dbms with this we come to the end of this video hope you have understood the different advantages and disadvantages of using dbms approach thank you [Music]