14
1 DATABASE CONCEPTS & APPLICATIONS COMP 244 Database Management Systems

Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

Embed Size (px)

Citation preview

Page 1: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

1

DATABASE CONCEPTS & APPLICATIONS

COMP 244

Database Management Systems

Page 2: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

2

What is a DBMS?

• A Database Management System (DBMS) is a software package designed to store and manage databases through database applications.

Database

Application(s) Database DBMS

User

User

Page 3: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

3

Examples of DBMS

• Personal – Files-based, dBase, Paradox, Access

• Multi-User/Client-Server/Web-Based – Oracle, DB2, Ingris, Sybase

• Personal Web-Based – MySQL

• Non-Relational – Object-Oriented Databases

Page 4: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

4

Advantages of a DBMS

• Data Independence – Applications insulated from how data is

structured and stored.

– Application programs should not be exposed to

details of data representation and storage

• The DBMS provides an abstract view of the

data

• Efficient Data Access – A DBMS utilizes sophisticated techniques to

store and retrieve data

Page 5: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

5

Advantages of a DBMS

• Data Integrity and Security – A DBMS can enforce integrity constraints

– A DBMS can enforce access controls that

govern what data is visible to different classes

of users

• Concurrent Access and Crash

Recovery – A DBMS schedules data access among various

users

– A DBMS protects against system failures

Page 6: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

6

Advantages of a DBMS

• Reduced Application Development

Times – A DBMS supports important data access

functions that are common to many applications

– A DBMS supports high-level interface to the

data

– DBMS applications are more robust

• No need for debugging and testing

Page 7: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

7

When NOT to Use a DBMS?

• A DBMS is complex

– Cost of DBMS

– Additional hardware costs

– Cost of conversion

– Higher impact of a failure

• Performance not adequate for certain applications

– Examples:

• Real-time constraints

• Critical constraints (need special custom code)

• Applications may need to manipulate data in ways not supported by query language

Page 8: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

8

Components of DBMS Environment

Page 9: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

9

Components of DBMS Environment

• Hardware – Can range from a PC to a network of

computers.

• Software – DBMS, operating system, network software

(if necessary) and also the application

programs.

• Data – Used by the organization and a description

of this data called the schema.

Page 10: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

10

Components of DBMS Environment

• Procedures – Instructions and rules that should be

applied to the design and use of the

database and DBMS.

• People – End-User

– Database Administrator (DBA)

– Application Developer

– .

– … etc

Page 11: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

11

Components of Database Systems

D

B

M

S

E

n

g

i

n

e

Design Tools

Table Creation Tools

Form Creation Tools

Query Creation Tools

Report Creation Tools

Procedural Language

Compiler

Run Time

Form Processor

Query Processor

Report Writer

Procedural Language Run

Time

Database

Users’ Data

Metadata

Indexes &

Other System

Data

Application

Metadata

Database Contains

Developer

Application

Programs

Application

Programs

Users

Page 12: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

12

Components of the DBMS

• The Design Tools – Each DBMS comes with a set of tools to help in

creating tables, forms, reports, queries, etc.

– Design tools also allow users more control

through the use of programming language

interfaces.

Page 13: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

13

Components of the DBMS

• The Runtime Facilities – Developers design forms, reports, and queries.

However, they contain no data. The DBMS

Runtime facilities are responsible for retrieving

the relevant data from the database and

displaying it in the form, report, or query.

Page 14: Database Management Systems - جامعة نزوى · PDF fileDatabase Management Systems . 2 What is a DBMS? •A Database Management System (DBMS) is a software package designed to

14

Components of the DBMS

• The DBMS Engine – The DBMS Engine has direct access to the

physical database. Requests sent to the database (in the form of tables, rows, and columns) are intercepted by the DBMS Engine and sent to the operating system in terms of files and file offsets.

– The DBMS Engine is also responsible of transaction management, locking, and backup and recovery.