Advantages and Disadvantages of DBMSs

 


Advantages and Disadvantages of DBMSs


The database management system has promising potential advantages. Unfortunately, there are also disadvantages. In this section, we examine these advantages and disadvantages.




Advantages Of DBMS


  • Control of data redundancy 
  • Data consistency 
  • More information from the same amount of data 
  • Sharing of data 
  • Improved data integrity 
  • Improved security 
  • Enforcement of standards
  • Economy of scale 
  • Balance of conflicting requirements 
  • Improved data accessibility and responsiveness 
  • Increased productivity 
  • Improved maintenance through data independence 
  • Increased concurrency 
  • Improved backup and recovery services





1 . Control of data redundancy

The database approach attempts to eliminate the redundancy by integrating the files so that multiple copies of the same data are not stored. 

However, the database approach does not eliminate redundancy entirely, but controls the amount of redundancy inherent in the database. 

Sometimes, it is necessary to duplicate key data items to model relationships. At other times, it is desirable to duplicate some data items to improve performance.


2 . Data consistency

By eliminating or controlling redundancy, we reduce the risk of inconsistencies occurring. If a data item is stored only once in the database, any update to its value has to be performed only once and the new value is available immediately to all users. 

If a data item is stored more than once and the system is aware of this, the system can ensure that all copies of the item are kept consistent. Unfortunately, many of today’s DBMSs do not automatically ensure this type of consistency.


3 . More information from the same amount of data

With the integration of the operational data, it may be possible for the organization to derive additional information from the same data. For example, in the file-based system , the Contracts Department does not know who owns a leased property. 

Similarly, the Sales Department has no knowledge of lease details. When we integrate these files, the Contracts Department has access to owner details and the Sales Department has access to lease details. We may now be able to derive more information from the same amount of data.


4 . Sharing of data

Typically, files are owned by the people or departments that use them. On the other hand, the database belongs to the entire organization and can be shared by all authorized users. In this way, more users share more of the data. 

Furthermore, new applications can build on the existing data in the database and add only data that is not currently stored, rather than having to define all data requirements again. 

The new applications can also rely on the functions provided by the DBMS, such as data definition and manipulation, and concurrency and recovery control, rather than having to provide these functions themselves.


5 . Improved data integrity

Database integrity refers to the validity and consistency of stored data. Integrity is usually expressed in terms of constraints, which are consistency rules that the database is not permitted to violate.

Constraints may apply to data items within a single record or they may apply to relationships between records. For example, an integrity constraint could state that a member of staff’s salary cannot be greater than £40,000 or that the branch number contained in a staff record, representing the branch where the member of staff works, must correspond to an existing branch office. 

Again, integration allows the DBA to define, and the DBMS to enforce, integrity constraints.


6 . Improved security

Database security is the protection of the database from unauthorized users. Without suitable security measures, integration makes the data more vulnerable than file-based systems. 

However, integration allows the DBA to define, and the DBMS to enforce, database security. This may take the form of user names and passwords to identify people authorized to use the database. The access that an authorized user is allowed on the data may be restricted by the operation type (retrieval, insert, update, delete). 

For example, the DBA has access to all the data in the database; a branch manager may have access to all data that relates to his or her branch office; and a sales assistant may have access to all data relating to properties but no access to sensitive data such as staff salary details.


7 . Enforcement of standards

Again, integration allows the DBA to define and enforce the necessary standards. 

These may include departmental, organizational, national, or international standards for such things as data formats to facilitate exchange of data between systems, naming conventions, documentation standards, update procedures, and access rules.


8 . Economy of scale

Combining all the organization’s operational data into one database, and creating a set of applications that work on this one source of data, can result in cost savings. 

In this case, the budget that would normally be allocated to each department for the development and maintenance of its file-based system can be combined, possibly resulting in a lower total cost, leading to an economy of scale. 

The combined budget can be used to buy a system configuration that is more suited to the organization’s needs. This may consist of one large, powerful computer or a network of smaller computers.


9 . Balance of conflicting requirements

Each user or department has needs that may be in conflict with the needs of other users. Since the database is under the control of the DBA, the DBA can make decisions about the design and operational use of the database that provide the best use of resources for the organization as a whole. 

These decisions will provide optimal performance for important applications, possibly at the expense of less critical ones.


10 . Improved data accessibility and responsiveness

Again, as a result of integration, data that crosses departmental boundaries is directly accessible to the end-users. This provides a system with potentially much more functionality that can, for example, be used to provide better services to the end-user or the organization’s clients. 

Many DBMSs provide query languages or report writers that allow users to ask ad hoc questions and to obtain the required information almost immediately at their terminal, without requiring a programmer to write some software to extract this information from the database. 

For example, a branch manager could list all flats with a monthly rent greater than £400 by entering the following SQL command at a terminal: 

SELECT* FROM PropertyForRent WHERE type = ‘Flat’ AND rent > 400;

11 . Increased productivity

As mentioned previously, the DBMS provides many of the standard functions that the programmer would normally have to write in a file-based application. 

At a basic level, the DBMS provides all the low-level file-handling routines that are typical in application programs. The provision of these functions allows the programmer to concentrate on the specific functionality required by the users without having to worry about low-level implementation details. 

Many DBMSs also provide a fourth-generation environment consisting of tools to simplify the development of database applications. This results in increased programmer productivity and reduced development time (with associated cost savings).


12 . Improved maintenance through data independence

In file-based systems, the descriptions of the data and the logic for accessing the data are built into each application program, making the programs dependent on the data. 

A change to the structure of the data, for example making an address 41 characters instead of 40 characters, or a change to the way the data is stored on disk, can require substantial alterations to the programs that are affected by the change. 

In contrast, a DBMS separates the data descriptions from the applications, thereby making applications immune to changes in the data descriptions. This is known as data independence


13 . Increased concurrency

In some file-based systems, if two or more users are allowed to access the same file simultaneously, it is possible that the accesses will interfere with each other, resulting in loss of information or even loss of integrity. 

Many DBMSs manage concurrent database access and ensure such problems cannot occur.


14 . Improved backup and recovery services

Many file-based systems place the responsibility on the user to provide measures to protect the data from failures to the computer system or application program. 

This may involve taking a nightly backup of the data. In the event of a failure during the next day, the backup is restored and the work that has taken place since this backup is lost and has to be re-entered. 

In contrast, modern DBMSs provide facilities to minimize the amount of processing that is lost following a failure.



 


Disadvantages Of DBMS


  • Complexity 
  • Size 
  • Cost of DBMSs 
  • Additional hardware costs 
  • Cost of conversion 
  • Performance 
  • Higher impact of a failure



1 . Complexity

The provision of the functionality we expect of a good DBMS makes the DBMS an extremely complex piece of software. Database designers and developers, the data and database administrators, and end-users must understand this functionality to take full advantage of it. 

Failure to understand the system can lead to bad design decisions, which can have serious consequences for an organization.


2 . Size

The complexity and breadth of functionality makes the DBMS an extremely large piece of software, occupying many megabytes of disk space and requiring substantial amounts of memory to run efficiently.


3 . Cost of DBMSs

The cost of DBMSs varies significantly, depending on the environment and functionality provided. For example, a single-user DBMS for a personal computer may only cost US$100. However, a large mainframe multi-user DBMS servicing hundreds of users can be extremely expensive, perhaps US$100,000 or even US$1,000,000. 

There is also the recurrent annual maintenance cost, which is typically a percentage of the list price.


4 . Additional hardware costs 

The disk storage requirements for the DBMS and the database may necessitate the purchase of additional storage space. Furthermore, to achieve the required performance, it may be necessary to purchase a larger machine, perhaps even a machine dedicated to running the DBMS. 

The procurement of additional hardware results in further expenditure.


5 . Cost of conversion

In some situations, the cost of the DBMS and extra hardware may be insignificant compared with the cost of converting existing applications to run on the new DBMS and hardware. 

This cost also includes the cost of training staff to use these new systems, and possibly the employment of specialist staff to help with the conversion and running of the system. 

This cost is one of the main reasons why some organizations feel tied to their current systems and cannot switch to more modern database technology. The term legacy system is sometimes used to refer to an older, and usually inferior, system.


6 . Performance

Typically, a file-based system is written for a specific application, such as invoicing. As a result, performance is generally very good. 

However, the DBMS is written to be more general, to cater for many applications rather than just one. The effect is that some applications may not run as fast as they used to.


7 . Higher impact of a failure

The centralization of resources increases the vulnerability of the system. Since all users and applications rely on the availability of the DBMS, the failure of certain components can bring operations to a halt.

Comments

Popular posts from this blog

Limitations of the File-Based Approach

The Three-Level ANSI-SPARC Architecture

Roles of DA , DBA , Database Designer , Application Developers and Users