Link
back to course outline
Chapter 1 Introduction to Database Systems
Overview:
-
A database system is a computerized record keeping system.
-
A database is regarded as an electronic file cabinet.
-
It is a very large, integrated collection of data
-
It contains Entities (What
to store, e.g. students, courses)
-
Relationships between entities
(e.g. John is taking COSI 118)
Example: A single database consisting only one file,
Directory (Name, Phone#, Address)
| Name |
Phone# |
Address |
| ADAM |
333-4444 |
215 Main St. |
| BETTY |
...... |
........ |
| TOM |
...... |
....... |
| ....... |
...... |
..... |
| ........ |
....... |
..... |
Column: fields or attributes
Row: records or tuples
A Database Management System (DBMS) is a software package
designed to store and manage database.
Operation on files:
-
Add new files
-
Remove files
-
Insert new data into files
-
Retrieve data from files
-
Update (modify) data
-
Delete data
The purpose of database system is to maintain information, and to make
that information available on demand.
-
(The important job to do is "consistent". That is, getting
correct data.)
Software: (interface)
-
Users
(query language)
-
Database Management System (DBMS)
-
Operating System
-
Physical Database
The advantages of using DBMS:
Before the concept of DBMS has been created, people open a "file" to
get data and store data in a file.
Q1: If you can store data in a file,
why do you need a database system?
-
Abstraction ( i.e. Data Independence) - Users do not need to
know how data stored internally (how data physical stored).
-
Reduced application development time - DBMS has concurrent control and
crash recovery, users / programmers do not need to write a program to take
care them.
-
Data integrity and security - If you try to update the data that violate
the rules, you will be rejected by the DBMS.
Q2: Assume that you need a database system, what
should a database system have? i.e. What is a database system able to do?
-
query language
-
maintain security (Restrict who can use what)
-
reliability (Backup/crash recovery)
-
integrity ( How to specify rules such that system automatically checks
consistent with data type and data value, e.g. 0 < gpa <= 4.0)
-
concurrency (multiple users, e.g. ATM problem)
-
physical organization (The data must be operated fast. How you organize
the data on disk, Index or B-tree, will change the performance of operations.)
-
optimization (Change the way to query and save a few seconds on getting
a set of data..)
Link back
to course outline