You are on page 1of 29

Chapter-1

Database Management
Systems
Objectives
 An Overview of Database Management
 Database
 DBMS
 Database Systems
 Why Use Database
 Database Architecture
 An Example of the Three Levels
 Schema
 Data Independence
 Types Of Database Models
 Database Design Phases
Definitions:

 Data: Known facts that can be recorded


and that have implicit meaning

 Database: Collection of related data


– Ex. the names, telephone numbers and
addresses of all the people you know
 Database Management System: A
computerized record-keeping system
 Goals of a Database Management System:
– To provide an efficient as well as a convenient
environment for accessing data in a database
– Enforce information security: database security,
concurrency control, crash recovery

 It is a general purpose facility for:


– Defining database
– Constructing database
– Manipulating database
History of DBMS
 1960 – First DBMS designed by Charles
Bachman at GE. IBMs Information Management
System (IMS)
 1970 – Codd introduced the RDBMS
 1980 – Relational model became popular and
accepted as the main database paradigm. SQL,
ANSI SQL, etc.
 1980 to 1990 – New data models, powerful
query languages, etc. Popular vendors are
Oracle, SQL Server, IBMs DB2, Informix, etc.
 Various types of data: Images, Text,
complex queries, Data Mining, etc.
 Enterprise Resource Planning (ERP)
 Management Resource Planning (MRP)
 Database in Web technologies
Current Database trends:
 Multimedia databases
 Interactive video
 Streaming data
 Digital Libraries
DBMS Functions

 Data Definition
 Data Manipulation
 Data Security and Integrity
 Data Recovery and Concurrency
 Data Dictionary
 Performance
Early File Systems Vs DBMS
 Catalog in DBMS. Data definition in file
systems is part of application programs.
 Program-Data independence
 Views
 Sharing and Transaction processing
program-1
data description-1
File-1
program-2
File-2
data description-2

program-3 File-3
data description-3

File System approach

Application program-1
with data semantics
Description
Application program-2 Manipulation
with data semantics
Control
…..
Database
Application program-3 .
with data semantics

DBMS approach
Benefits of database approach

 Redundancy can be reduced


 Inconsistency can be avoided
 Data can be shared
 Standards can be enforced
 Security restrictions can be applied
 Integrity can be maintained
 Data independence can be provided
 Backup and Recovery
Describing and Storing Data
in DBMS
 Data Model
A data model is a collection of high-level
data description constructs that hide many
low-level storage details.
 Relational Data Model
 Semantic Data Model – ER Model
Relational Model
 A Relation is a set of records and attributes.
Also known as tuples and columns.
 A Schema is the description of data in terms
of a data model.
Eg. Student(RegNo : String, Name : String,
Sem : Integer, Branch : String)
Student Relation
RegNo Name Sem Branch
0016 N. Deepak 3 CSE
0674 K. Gopal 5 MECH
2901 Kanchana 2 CSE
Other Data Models
 Relational Model – DB2, Oracle, Informix,
Sybase, MS-Access, Foxbase, Paradox, etc.
 Hierarchical Model – IMS DBMS
 Network Model – IDS & IDMS
 Object-Oriented Model – ObjectStore &
Versant
 Object-Relational Model – Products from
IBM, Oracle, ObjectStore, Versant.
Three-Layer Abstraction

External Schema - 1 External Schema - 2 External Schema - 3

Conceptual Schema

Physical Schema

Di
sk
Conceptual Schema
 Describes the stored data in terms of the data model
of the DBMS. This leads to conceptual database
design.
 Example:
Student(RegNo:Integer, Name:String,
Sem:Integer, Branch:String)
Faculty(Fid:Integer, FName:String, Salary:Float)
Course(CourseNo:Integer, CName:String,
Credit:Integere, Dept:String)
Section(SecId:Integer, CourseNo:Integer,
Sem:Integer, Year:Integer, Instructor:String)
GradeReport(RegNo:Integer, SecId:Integer,
Grade:Char)
Physical Schema

 Describes the actual storage details of the


relations described in conceptual schema.
 Primary indexing, sequential, binary,
secondary indexing, etc.

 This leads to the physical database design.


External Schema
 Describes several views of the database
based on the database model.
 Several external schemas are possible for a
single database.
 Each view is based upon the user
requirements.
Example:
StdGrade(RegNo:Integer, Name:String,
Sem:Integer, Grade:Char)
Program-Data Independence
 The data independence is the ability to change
the schema at one level of a database system with
out changing the schema at a higher level.
 Logical data Independence
It is the ability to change the schema at one level
of a database system without changing the
external schema or application programs, is called
as the logical data independence. With out
changing the application programs, one can
change the logical schema.
 Example
Suppose the Faculty relation is modified
as:
Faculty_Public(Fid:Integer, FName:String,
Office:Integer)
Faculty_Private(Fid:Integer, Salary:Float)

Any view designed before this modification


can still retrieve the data with little
modification (relation name) and obtain the
same answer.
 Physical data independence
 There are occasions for changing the
internal structures for improved
performance of the retrieval of data.

 Any change introduced to the internal


schema or physical schema will not affect
the other schemas.
Database Languages
 DDL – Data Manipulation Language
 SDL – Storage Definition Language
 VDL – View Definition Language
 DML – Data Manipulation Language
(For data manipulations like
insertion, deletion, update,
retrieval, etc.)
Transaction Management
 Atomic operation – Handling concurrent
execution of transactions from several
users.
 Example: Reservation systems, Banking
systems.
 Transaction failures and recovery.
 Locking protocols.
 Log (WAL – Write Ahead Log)
DBMS Architecture
Web Forms Front-End SQL I/f

SQL Commands

Plan Executor Parser


SQL Engine
Operator Evaluator Optimizer

Tx Files & Access


Manager Recovery
Buffer Manager Manager
Lock
Manager Disk Space Manager DBMS

Data File Catalog Database


People Who Work with
Databases
– Database Implementers
– End Users
– Application Programmers
– DBA
End Users
 Casual users
These are people who use the database occasionally.
 Naive users
These are users who constantly querying and updating
the database.
Eg. Reservation Clerks of Airline, Railway, Hotel, etc.
Clerks at receiving station of Courier service, Insurance
agencies, etc.
 Sophisticated Users
People who use for their complex requirements.
Eg. Engineers, Scientists, Business analysts…
 Standalone Users
Who maintain database for personal use.
DBA
 Managing resources
 Creation of user accounts
 Providing security and authorization
 Managing poor system response time
 System Recovery
 Tuning the Database
End of Chapter - 1

You might also like