DBMS A database management system is the software system that allows users to define, create and maintain a database and provides controlled access to the data.
A
Database Management System (DBMS) is basically a collection of programs
that enables users to store, modify, and extract information from a
database as per the requirements. DBMS is an intermediate layer between
programs and the data. Programs access the DBMS, which then accesses the
data. There are different types of DBMS ranging from small systems that
run on personal computers to huge systems that run on mainframes. The
following are main examples of database applications:
• Computerized library systems
• Automated teller machines
• Flight reservation systems
• Computerized parts inventory systems
A
database management system is a piece of software that provides
services for accessing a database, while maintaining all the required
features of the data. Commercially available Database management systems
in the market are dbase, FoxPro, IMS and Oracle, MySQL, SQL Servers and
DB2 etc.
These systems allow users to create update, and extract information from their databases.
Compared
to a manual filing system, the biggest advantages to a computerized
database system are speed, accuracy, and' accessibility.
Components of the Database System Environment
There are five major components in the database system environment and their interrelationship are.
• Hardware
• Software
• Data
• Users
• Procedures
1.Hardware: The
hardware is the actual computer system used for keeping and accessing
the database. Conventional DBMS hardware consists of secondary storage
devices, usually hard disks, on which the database physically resides,
together with the associated Input-Output devices, device controllers
and· so forth. Databases run on a' range of machines, from
Microcomputers to large mainframes. Other hardware issues for a DBMS
includes database machines, which is hardware designed specifically to
support a database system.
2. Software: The
software is the actual DBMS. Between the physical database itself (i.e.
the data as actually stored) and the users of the system is a layer of
software, usually called the Database Management System or DBMS. All
requests from users for access to the database are handled by the DBMS.
One general function provided by the DBMS is thus the shielding of
database users from complex hardware-level detail.
The
DBMS allows the users to communicate with the database. In a sense, it
is the mediator between the database and the users. The DBMS controls
the access and helps to maintain the consistency of the data. Utilities
are usually included as part of the DBMS. Some of the most common
utilities are report writers and application development.
3. Data : It
is the most important component of DBMS environment from the end users
point of view. As shown in observes that data acts as a bridge between
the machine components and the user components. The database contains
the operational data and the meta-data, the 'data about data'.
The
database should contain all the data needed by the organization. One of
the major features of databases is that the actual data are separated
from the programs that use the data. A database should always be
designed, built and populated for a particular audience and for a
specific purpose.
4. Users : There
are a number of users who can access or retrieve data on demand using
the applications and interfaces provided by the DBMS. Each type of user
needs different software capabilities. The users of a database system
can be classified in the following groups, depending on their degrees of
expertise or the mode of their interactions with the DBMS. The users
can be:
• Naive Users
• Online Users
• Application Programmers
• Sophisticated Users
• Data Base Administrator (DBA)
Naive Users: Naive
Users are those users who need not be aware of the presence of the
database system or any other system supporting their usage. Naive users
are end users of the database who work through a menu driven application
program, where the type and range of response is always indicated to
the user.
A
user of an Automatic Teller Machine (ATM) falls in this category. The
user is instructed through each step of a transaction. He or she then
responds by pressing a coded key or entering a numeric value. The
operations that can be performed by valve users are very limited and
affect only a precise portion of the database. For example, in the case
of the user of the Automatic Teller Machine, user's action affects only
one or more of his/her own accounts.
Online Users : Online
users are those who may communicate with the database directly via an
online terminal or indirectly via a user interface and application
program. These users are aware of the presence of the database system
and may have acquired a certain amount of expertise with in the limited
interaction permitted with a database.
Sophisticated Users : Such users interact with the system without ,writing programs.
Instead,
they form their requests in database query language. Each such query is
submitted to a very processor whose function is to breakdown DML
statement into instructions that the storage manager understands.
Specialized Users : Such
users are those ,who write specialized database application that do not
fit into the fractional data-processing framework. For example:
Computer-aided design systems, knowledge base and expert system, systems
that store data with complex data types (for example, graphics data and
audio data).
Application Programmers : Professional
programmers are those who are responsible for developing application
programs or user interface. The application programs could be written
using general purpose programming language or the commands available to
manipulate a database.
Database Administrator: The
database administrator (DBA) is the person or group in charge for
implementing the database system ,within an organization. The "DBA has
all the system privileges allowed by the DBMS and can assign (grant) and
remove (revoke) levels of access (privileges) to and from other users.
DBA is also responsible for the evaluation, selection and implementation
of DBMS package.
5. Procedures: Procedures
refer to the instructions and rules that govern the design and use of
the database. The users of the system and the staff that manage the
database require documented procedures on how to use or run the system.
Advantages of DBMS
The database management system has promising potential advantages, which are explained below:
1. Controlling Redundancy: In
file system, each application has its own private files, which cannot
be shared between multiple applications. 1:his can often lead to
considerable redundancy in the stored data, which results in wastage of
storage space. By having centralized database most of this can be
avoided. It is not possible that all redundancy should be eliminated.
Sometimes there are sound business and technical reasons for·
maintaining multiple copies of the same data. In a database system,
however this redundancy can be controlled.
2. Integrity can be enforced: Integrity
of data means that data in database is always accurate, such that
incorrect information cannot be stored in database. In order to maintain
the integrity of data, some integrity constraints are enforced on the
database. A DBMS should provide capabilities for defining and enforcing
the constraints.
For
Example: Let us consider the case of college database and suppose that
college having only BTech, MTech, MSc, BCA, BBA and BCOM classes. But if
a \.,ser enters the class MCA, then this incorrect information must not
be stored in database and must be prompted that this is an invalid data
entry. In order to enforce this, the integrity constraint must be
applied to the class attribute of the student entity. But, in case of
file system tins constraint must be enforced on all the application
separately (because all applications have a class field).
3. Inconsistency can be avoided :
When the same data is duplicated and changes are made at one site,
which is not propagated to the other site, it gives rise to
inconsistency and the two entries regarding the same data will not
agree. At such times the data is said to be inconsistent. So, if the
redundancy is removed chances of having inconsistent data is also
removed.
4. Data can be shared: As
explained earlier, the data about Name, Class, Father __name etc. of
General_Office is shared by multiple applications in centralized DBMS as
compared to file system so now applications can be developed to operate
against the same stored data. The applications may be developed without
having to create any new stored files.
5. Standards can be enforced :
Since DBMS is a central system, so standard can be enforced easily may
be at Company level, Department level, National level or International
level. The standardized data is very helpful during migration or
interchanging of data. The file system is an independent system so
standard cannot be easily enforced on multiple independent applications.
6. Restricting unauthorized access: When
multiple users share a database, it is likely that some users will not
be authorized to access all information in the database. For example,
account office data is often considered confidential, and hence only
authorized persons are allowed to access such data. In addition, some
users may be permitted only to retrieve data, whereas other are allowed
both to retrieve and to update. Hence, the type of access operation
retrieval or update must also be controlled. Typically, users or user
groups are given account numbers protected by passwords, which they can
use to gain access to the database. A DBMS should provide a security and
authorization subsystem, which the DBA uses to create accounts and to
specify account restrictions. The DBMS should then enforce these
restrictions automatically.
7. Solving Enterprise Requirement than Individual Requirement: Since
many types of users with varying level of technical knowledge use a
database, a DBMS should provide a variety of user interface. The overall
requirements of the enterprise are more important than the individual
user requirements. So, the DBA can structure the database system to
provide an overall service that is "best for the enterprise".
For
example: A representation can be chosen for the data in storage that
gives fast access for the most important application at the cost of poor
performance in some other application. But, the file system favors the
individual requirements than the enterprise requirements
8. Providing Backup and Recovery: A
DBMS must provide facilities for recovering from hardware or software
failures. The backup and recovery subsystem of the DBMS is responsible
for recovery. For example, if the computer system fails in the middle of
a complex update program, the recovery subsystem is responsible for
making sure that the .database is restored to the state it was in before
the program started executing.
9. Cost of developing and maintaining system is lower: It
is much easier to respond to unanticipated requests when data is
centralized in a database than when it is stored in a conventional file
system. Although the initial cost of setting up of a database can be
large, but the cost of developing and maintaining application programs
to be far lower than for similar service using conventional systems. The
productivity of programmers can be higher in using non-procedural
languages that have been developed with DBMS than using procedural
languages.
10. Data Model can be developed : The
centralized system is able to represent the complex data and interfile
relationships, which results better data modeling properties. The data
madding properties of relational model is based on Entity and their
Relationship, which is discussed in detail in chapter 4 of the book.
11. Concurrency Control : DBMS systems provide mechanisms to provide concurrent access of data to multiple users.
Disadvantages of DBMS
The disadvantages of the database approach are summarized as follows:
1. Complexity : The
provision of the functionality that is expected of a good DBMS makes
the DBMS an extremely complex piece of software. Database designers,
developers, 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. Performance: Typically,
a File Based system is written for a specific application, such as
invoicing. As 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.
4. Higher impact of a failure: The
centralization of resources increases the vulnerability of the system.
Since all users and applications rely on the ~vailabi1ity of the DBMS,
the failure of any component can bring operations to a halt.
5. Cost of DBMS: The
cost of DBMS varies significantly, depending on the environment and
functionality provided. There is also the recurrent annual maintenance
cost.
6. 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.
7. Cost of Conversion: In
some situations, the cost oftlle 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 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 modern database technology.
0 Comments:
Post a Comment