Upload
vuongkhanh
View
215
Download
1
Embed Size (px)
Citation preview
1
DATABASE CONCEPTS & APPLICATIONS
COMP 244
Database Management Systems
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
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
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
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
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
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
8
Components of DBMS Environment
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.
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
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
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.
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.
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.