Sunteți pe pagina 1din 7

Database Management System

A database system is basically a computerized record-keeping


system, whose overall purpose is to maintain and to make
information available on demand

The maintained information is significant to the individual and


the organization for carrying day-to-day operations. Some
information is derived from the system, and is required to assist
the decision making process

Any large information system would tend to be multi-user, and


information managed on it would be integrated and shared.

Integration would mean that the database can be thought of as a


unification of several otherwise distinct files, with redundancy
among those files either wholly or partially eliminated.

Shared would mean that individual pieces of information would


be shared among several different users, each of those users
can have access to the same piece of information and be
accessing it at the same time.
Why Database Management Systems

There are very strong reasons which favour the use of database
instead of traditional non-database systems.

The database system provides the enterprise with centralized


control of it operational information. This is in contrast to the
way non-database systems manage their data which is widely
dispersed within the enterprise.

Use of database systems provides a significant advantage in the


way applications could be built to share, manage, retrieve and
control information within the enterprise.
Why Database Management Systems

- Controlled Redundancy

- Integrity

- Consistency

- Multiple Views

- Concurrency

- Recovery

- Security

- Data Abstraction & Independence

- Data Languages
Redundancy

redundancy is controlled
centralized storage, avoids duplicating information
optimizing storage space
updates made at single source of information
update anomalies avoided
updates need to be propogated

Consistency

database values agree on some rule all the time


changes to one copy not reflected in the other
failure leaves database in undesirable state
updates are granular in nature, all or none

Integrity

uniform expression of rules


contraints embedded within database structure
constraints as data definiton rather than in code
changes to contraints transparent to code
constraints modified independently
entity, referential, user defined integrity
Multiple Views

conceptual model - an abstract view of data definition


physical model - implements storage structures
external model - what the developer/user sees

Concurrency

multiple users share the same copy of data


controlled access to data
concurrency control mechanisms - locks
Classical problems of Concurrency
Lost Update
Uncommitted dependency
Inconsistent analysis

Recovery

changes to database values are recoverable


managed by transaction processing system
notion of unit of work, granularity of update
changes made permanent or undone
COMMIT, ROLLBACK
Security

allow/disallow access to database objects


hide portion of database from users
provide portion that users are interested in
permissions to create/modify/delete/read data objects

Data Abstraction & Independence

abstract view of data to applications & users


storage and access details are hidden
application code freed from this knowledge
applications immune to changes to storage or access
Independence is immunity of such changes
Physical/Logical data independence

Data Languages

common language for definition,control,manipulation


same language for interactivity and application code
Data Models

Databases have evolved to use one of the data models to store


and retrieve information. These models are the conceptual basis
on which database systems are built.

The primary motivation of data models to evolve was not only


to manage information in a meaningful way but also to capture
and represent relationships among information objects. These
relationships become an inherent part of the information
structures that application code can exploit.

Using data values to access external data objects and having


embedded links to point to external data objects are the most
common ways of implementing relationships in data models.

The data models that evolved were

Traditional file systems


Hierarchial
Network
Relational

S-ar putea să vă placă și