0% found this document useful (0 votes)
29 views29 pages

Database Management (DBMS)

For IBPS SO

Uploaded by

Ravi Kiran B
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views29 pages

Database Management (DBMS)

For IBPS SO

Uploaded by

Ravi Kiran B
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Overview of Database Management

M. Tamer zsu
David R. Cheriton School of Computer Science
University of Waterloo

CS 348
Introduction to Database Management
Fall 2012

CS 348

Notes

Overview of Database Management

Fall 2012

1 / 29

What is Data?

ANSI definition of data:


1 A representation of facts, concepts, or instructions in a formalized
manner suitable for communication, interpretation, or processing by
humans or by automatic means.
2 Any representation such as characters or analog quantities to which
meaning is or might be assigned. Generally, we perform operations
on data or data items to supply some information about an entity.
Volatile vs persistent data
Our concern is primarily with persistent data

CS 348

Notes

Overview of Database Management

Fall 2012

2 / 29

Early Data Management Ancient History


Data are not stored on disk
One data set per program. High data redundancy
PROGRAM 1!
Data!
Management!

DATA SET 1!

PROGRAM 2!
Data!
Management!

DATA SET 2!

PROGRAM 3!
Data!
Management!

CS 348

Notes

DATA SET 3!

Overview of Database Management

Fall 2012

3 / 29

File Processing More Recent History


Data are stored in files with interface between programs and files.
Various access methods exist (e.g., sequential, indexed, random).
One file corresponds to one or several programs.

Data!
Management!

PROGRAM 2!
Data!
Management!

PROGRAM 3!

FILE 1!
File!
System!
Services!
FILE 2!

Redundant Data!

PROGRAM 1!

Data!
Management!

CS 348

Notes

Overview of Database Management

Fall 2012

4 / 29

Database Approach

DBMS
Query Processor

PROGRAM 1

Transaction Mgr

Integrated
Database

PROGRAM 2

CS 348

Notes

Overview of Database Management

Fall 2012

5 / 29

What is a Database?
Definition (Database)
A large and persistent collection of (more-or-less similar) pieces of
information organized in a way that facilitates efficient retrieval and
modification.
The structure of the database is determined by the abstract data
model that is used
Examples:
a file cabinet
a library system
a personnel management system

Definition (Database Management System (DBMS))


A program (or set of programs) that manages details related to storage
and access for a database.
CS 348

Notes

Overview of Database Management

Fall 2012

6 / 29

Data Model

Formalism that defines what the structure of the data are

schema

=)

within a file
between files

File systems can at best specify data organization within one file
Alternatives for business data
Hierarchical; network
Relational
Object-oriented (more recently object-relational)

CS 348

Notes

Overview of Database Management

Fall 2012

7 / 29

Schema and Instance

Definition (Schema)
A schema is a description of the data interface to the database (i.e.,
how the data is organized).

Definition (Instance)
A database instance is a database (real data) that conforms to a
given schema.
A schema can have many instances.

CS 348

Notes

Overview of Database Management

Fall 2012

8 / 29

Example Relational
Schema
EMP(ENO, ENAME, TITLE)
PROJ(PNO, PNAME, BUDGET)
WORKS(ENO, PNO, RESP, DUR)
Instance
EMP
ENO

ENAME

TITLE

E1
E2
E3
E4
E5
E6
E7
E8

J. Doe
M. Smith
A. Lee
J. Miller
B. Casey
L. Chu
R. Davis
J. Jones

Elect. Eng
Syst. Anal.
Mech. Eng.
Programmer
Syst. Anal.
Elect. Eng.
Mech. Eng.
Syst. Anal.

PROJ
PNO
P1
P2
P3
P4

CS 348

Notes

PNAME

BUDGET

Instrumentation
Database Develop.
CAD/CAM
Maintenance

150000
135000
250000
310000

WORKS
ENO PNO
E1
E2
E2
E3
E3
E4
E5
E6
E7
E8

P1
P1
P2
P3
P4
P2
P2
P4
P3
P3

RESP
Manager
Analyst
Analyst
Consultant
Engineer
Programmer
Manager
Manager
Engineer
Manager

Overview of Database Management

DUR
12
24
6
10
48
18
24
48
36
40

Fall 2012

9 / 29

Application of Databases

Original

inventory control
payroll
banking and financial systems
reservation systems

More recent

computer aided design (CAD)


software development (CASE, SDE/SSE)
telecommunication systems
e-commerce
dynamic/personalized web content

CS 348

Notes

Overview of Database Management

Fall 2012

10 / 29

Application of Databases (contd)

Common Circumstances:
There is lots of data (mass storage)
Data is formatted
Requirements:
persistence and reliability
efficient and concurrent access
Issues:
many files with different structure
shared files or replicated data
need to exchange data (translation programs)

CS 348

Notes

Overview of Database Management

Fall 2012

11 / 29

Why Database Technology?

=)

Data constitute an organizational asset


Integrated control
Reduction of redundancy
Avoidance of inconsistency
Data integrity
Sharability
Improved security
Programmer productivity
Data Independence
Programmers do not have to deal with data organization

=)

CS 348

Notes

Overview of Database Management

Fall 2012

12 / 29

Programmer Productivity

Total System Cost

High data independence

New system
development

Maintenance
Time

CS 348

Notes

Overview of Database Management

Fall 2012

13 / 29

Brief History of Data Management: Ancient

2000 BC: Sumerian Records


350 BC: Syllogisms (Aristotle)
296 BC: Library of Alexandria
1879: Modern Logic (Frege)
1884: U.S. Census (Hollerith)
1941: Model Theory (Tarski)

CS 348

Notes

Overview of Database Management

Fall 2012

14 / 29

Brief History of Data Management: 1950s


First generation 50s and 60s
batch processing
sequential files and tape
input on punched cards

Second generation (60s)


disk enabled random access files
new access methods (ISAM, hash files)
mostly batch with some interactivity
independent applications with separate files
growing applications base

CS 348

Notes

Overview of Database Management

Fall 2012

15 / 29

Brief History of Data Management: 1960s (contd)


As the application base grows, we end up with
many shared files
a multitude of file structures
a need to exchange data among applications

This causes a variety of problems


redundancy: multiple copies
inconsistency: independent updates
inaccuracy: concurrent updates
incompatibility: multiple formats
insecurity: proliferation
inauditability: poor chain of responsibility
inflexibility: changes are difficult to apply
CS 348

Notes

Overview of Database Management

Fall 2012

16 / 29

Brief History of Data Management: 1960s (contd)


Hierarchical data model
IBMs Information Management System (IMS): concurrent access
only allows 1:N parent-child relationships (i.e. a tree)
hierarchy can be exploited for efficiency
queries navigate up and down treesone record at a time
data access language embedded in business processing language
difficult to express some queries
Network data model
Charles Bachmans Integrated Data Store (IDS)
model standardized by Conference On DAta SYstems Languages
(CODASYL)
data organized as collections of sets of records
separation of physical data representation from users view of data
pointers between records represent relationships
set types encoded as lists
queries navigate between recordsstill one record at a time
CS 348

Notes

Overview of Database Management

Fall 2012

17 / 29

Database Management System


Idea
Abstracts common functions and creates a uniform well defined
interface for applications accessing data.
1

Data Model
all data stored in a well defined way
Access control
only authorized people get to see/modify it
Concurrency control
multiple concurrent applications access data
Database recovery
nothing gets accidentally lost
Database maintenance
CS 348

Notes

Overview of Database Management

Fall 2012

18 / 29

Brief History of Data Management: 1970s

Edgar Codd proposes relational data model (1970)


firm mathematical foundation
declarative queries
Charles Bachman wins ACM Turing award (1973)
The Programmer as Navigator

Peter Chen proposes E-R model (1976)


Transaction concepts (Jim Gray and others)
IBMs System R and UC Berkeleys Ingres systems demonstrate

feasibility of relational DBMS (late 1970s)

CS 348

Notes

Overview of Database Management

Fall 2012

19 / 29

Three Level Schema Architecture

Definition (Schema)
A schema is a description of the data interface to the database (i.e.,
how the data is organized).
1

External schema (view): what the application programs and user


see. May differ for different users of the same database.
Conceptual schema: description of the logical structure of all data
in the database.
Physical schema: description of physical aspects (selection of files,
devices, storage algorithms, etc.)

CS 348

Notes

Overview of Database Management

Fall 2012

20 / 29

Three-level Schema Architecture (cont.)

Users/
Applications
External
Schema

External
view

External
view

Conceptual
Schema

Conceptual
view

Internal
Schema

Internal
view

DBMS

External
view

Database

CS 348

Notes

Overview of Database Management

Fall 2012

21 / 29

Data Independence
Idea
Applications do not access data directly but, rather through an
abstract data model provided by the DBMS.
Two kinds of data independence:
Physical: applications immune to changes in storage structures
Logical: applications immune to changes in data organization

Note
One of the most important reasons to use a DBMS!

CS 348

Notes

Overview of Database Management

Fall 2012

22 / 29

Interfacing to the DBMS

Data Definition Language (DDL): for specifying schemas


may have different DDLs for external schema, conceptual schema,

internal schema

information is stored in the data dictionary, or catalog

Data Manipulation Language (DML): for specifying queries and


updates
navigational (procedural)
non-navigational (declarative)

CS 348

Notes

Overview of Database Management

Fall 2012

23 / 29

Types of Database Users


End user:
Accesses the database indirectly through forms or other

query-generating applications, or

Generates ad-hoc queries using the DML.

Application developer:
Designs and implements applications that access the database.

Database administrator (DBA):


Manages conceptual schema.
Assists with application view integration.
Monitors and tunes DBMS performance.
Defines internal schema.
Loads and reformats database.
Is responsible for security and reliability.
CS 348

Notes

Overview of Database Management

Fall 2012

24 / 29

Transactions
When multiple applications access the same data, undesirable results
occur.
Example:
withdraw(AC,1000)
Bal := getbal(AC)
if (Bal>1000)
<give-money>
setbal(AC,Bal-1000)

withdraw(AC,500)
Bal := getbal(AC)
if (Bal>500)
<give-money>
setbal(AC,Bal-500)

Idea
Every application may think it is the sole application accessing the
data. The DBMS should guarantee correct execution.

CS 348

Notes

Overview of Database Management

Fall 2012

25 / 29

Transactions (contd)
Definition (Transaction)
An application-specified atomic and durable unit of work.
Properties of transactions ensured by the DBMS:
Atomic:
a transaction occurs entirely, or not at all
Consistency:

each transaction preserves the consistency


of the database

Isolated:

concurrent transactions do not interfere


with each other

Durable:

once completed, a transactions changes


are permanent

CS 348

Notes

Overview of Database Management

Fall 2012

26 / 29

Brief History of Data Management: 1980s

Development of commercial relational technology


IBM DB2, Oracle, Informix, Sybase
Edgar Codd wins ACM Turing award (1981)
SQL standardization efforts through ANSI and ISO
Object-oriented DBMSs (late 1980s to middle of 1990s)
persistent objects
object ids, methods, inheritence
navigational interface reminicent of hierarchical model

CS 348

Notes

Overview of Database Management

Fall 2012

27 / 29

Brief History of Data Management: 1990s-Present

Continued expansion of SQL and system capabilities


New application areas:
the Internet
On-Line Analytic Processing (OLAP)
data warehousing
embedded systems
multimedia
XML
data streams
Jim Gray wins ACM Turing award (1998)
Relational DBMSs incorporate objects (late 1990s)

CS 348

Notes

Overview of Database Management

Fall 2012

28 / 29

Summary

Using a DBMS to manage data helps:


to remove common code from applications
to provide uniform access to data
to guarantee data integrity
to manage concurrent access
to protect against system failure
to set access policies for data

CS 348

Notes

Overview of Database Management

Fall 2012

29 / 29

You might also like