Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

DBMS Notes

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

Database:

A database is an organized collection of data, so that it can be easily accessed and


managed.

Types of Database Users:


These are seven types of data base users in DBMS.
1. Database Administrator (DBA):
Database Administrator (DBA) is a person/team who defines the
schema and also controls the 3 levels of database.
The DBA will then create a new account id and password for the user if
he/she need to access the data base.
DBA is also responsible for providing security to the data base and he
allows only the authorized users to access/modify the data base.
2. Naive / Parametric End Users:
Parametric End Users are the unsophisticated who don’t have any DBMS
knowledge but they frequently use the data base applications in their daily
life to get the desired results.
For examples, Railway’s ticket booking users are naive users. Clerks in
any bank is a naive user because they don’t have any DBMS knowledge
but they still use the database and perform their given task.
3. System Analyst:
System Analyst is a user who analyzes the requirements of parametric end
users. They check whether all the requirements of end users are satisfied.

4. Sophisticated Users:
Sophisticated users can be engineers, scientists, business analyst, who are
familiar with the database. They can develop their own data base
applications according to their requirement. They don’t write the program
code but they interact the data base by writing SQL queries directly
through the query processor.

5. Data Base Designers:


Data Base Designers are the users who design the structure of data base
which includes tables, indexes, views, constraints, triggers, stored
procedures. He/she controls what data must be stored and how the data
items to be related.
6. Application Program:
Application Program are the back-end programmers who writes the code
for the application programs. They are the computer professionals. These
programs could be written in Programming languages such as Visual Basic,
Developer, C, FORTRAN, COBOL etc.

7. Casual Users / Temporary Users:


Casual Users are the users who occasionally use/access the data base but
each time when they access the data base they require the new information,
for example, Middle or higher-level manager.

Characteristics of database:

Self-describing nature of a database system

A database system is referred to as self-describing because it not only contains the


database itself, but also metadata which defines and describes the data and
relationships between tables in the database. This information is used by the DBMS
software or database users if needed. This separation of data and information about the
data makes a database system totally different from the traditional file-based system in
which the data definition is part of the application programs.

Insulation between program and data

In the file-based system, the structure of the data files is defined in the application
programs so if a user wants to change the structure of a file, all the programs that
access that file might need to be changed as well.

On the other hand, in the database approach, the data structure is stored in the system
catalogue and not in the programs. Therefore, one change is all that is needed to
change the structure of a file. This insulation between the programs and data is also
called program-data independence.

Support for multiple views of data

A database supports multiple views of data. A view is a subset of the database, which
is defined and dedicated for particular users of the system. Multiple users in the system
might have different views of the system. Each view might contain only the data of
interest to a user or group of users.
Sharing of data and multiuser system

Current database systems are designed for multiple users. That is, they allow many
users to access the same database at the same time. This access is achieved through
features called concurrency control strategies. These strategies ensure that the data
accessed are always correct and that data integrity is maintained.

The design of modern multiuser database systems is a great improvement from those in
the past which restricted usage to one person at a time.

Control of data redundancy

In the database approach, ideally, each data item is stored in only one place in the
database. In some cases, data redundancy still exists to improve system performance,
but such redundancy is controlled by application programming and kept to minimum by
introducing as little redudancy as possible when designing the database.

Data sharing

The integration of all the data, for an organization, within a database system has many
advantages. First, it allows for data sharing among employees and others who have
access to the system. Second, it gives users the ability to generate more information
from a given amount of data than would be possible without the integration.

Enforcement of integrity constraints

Database management systems must provide the ability to define and enforce certain
constraints to ensure that users enter valid information and maintain data
integrity. A database constraint is a restriction or rule that dictates what can be entered
or edited in a table such as a postal code using a certain format or adding a valid city in
the City field.
There are many types of database constraints. Data type, for example, determines the
sort of data permitted in a field, for example numbers only. Data uniqueness such as
the primary key ensures that no duplicates are entered. Constraints can be simple (field
based) or complex (programming).

Restriction of unauthorized access

Not all users of a database system will have the same accessing privileges. For
example, one user might have read-only access (i.e., the ability to read a file but not
make changes), while another might have read and write privileges, which is the ability
to both read and modify a file. For this reason, a database management system should
provide a security subsystem to create and control different types of user accounts and
restrict unauthorized access.
Data independence

Another advantage of a database management system is how it allows for data


independence. In other words, the system data descriptions or data describing data
(metadata) are separated from the application programs. This is possible because
changes to the data structure are handled by the database management system and
are not embedded in the program itself.

Transaction processing

A database management system must include concurrency control subsystems. This


feature ensures that data remains consistent and valid during transaction processing
even if several users update the same information.

Provision for multiple views of data

By its very nature, a DBMS permits many users to have access to its database either
individually or simultaneously. It is not important for users to be aware of how and
where the data they access is stored

Backup and recovery facilities

Backup and recovery are methods that allow you to protect your data from loss. The
database system provides a separate process, from that of a network backup, for
backing up and recovering data. If a hard drive fails and the database stored on the
hard drive is not accessible, the only way to recover the database is from a backup.
If a computer system fails in the middle of a complex update process, the recovery
subsystem is responsible for making sure that the database is restored to its original
state. These are two more benefits of a database management system.

DBMS Architecture
o The DBMS design depends upon its architecture. The basic client/server architecture is
used to deal with a large number of PCs, web servers, database servers and other
components that are connected with networks.
o The client/server architecture consists of many PCs and a workstation which are
connected via the network.
o DBMS architecture depends upon how users are connected to the database to get their
request done.
Types of DBMS Architecture

Database architecture can be seen as a single tier or multi-tier. But logically, database
architecture is of two types like: 2-tier architecture and 3-tier architecture.

1-Tier Architecture
o In this architecture, the database is directly available to the user. It means the user can
directly sit on the DBMS and uses it.
o Any changes done here will directly be done on the database itself. It doesn't provide a
handy tool for end users.
o The 1-Tier architecture is used for development of the local application, where
programmers can directly communicate with the database for the quick response.

2-Tier Architecture
o The 2-Tier architecture is same as basic client-server. In the two-tier architecture,
applications on the client end can directly communicate with the database at the server
side. For this interaction, API's like: ODBC, JDBC are used.
o The user interfaces and application programs are run on the client-side.
o The server side is responsible to provide the functionalities like: query processing and
transaction management.
o To communicate with the DBMS, client-side application establishes a connection with the
server side.

Fig: 2-tier Architecture

3-Tier Architecture
o The 3-Tier architecture contains another layer between the client and server. In this
architecture, client can't directly communicate with the server.
o The application on the client-end interacts with an application server which further
communicates with the database system.
o End user has no idea about the existence of the database beyond the application server.
The database also has no idea about any other user beyond the application.
o The 3-Tier architecture is used in case of large web application.
Fig: 3-tier Architecture

You might also like