Title: CMPUT 291 File and Database Management Systems
1CMPUT 291File and Database Management Systems
2- Why do we need to take this course ?
- Why do we need to learn file and/or database
management systems? - we need to store and retrieve a large collection
of data into/from files on disk. - We need to do it efficiently and conveniently.
3Q
4Objectives
- Understand fundamental concepts
- Relational database model
- Query languages and/or SQL
- File structures B-tree and hash table
- Get hand-on experience
- Oracle and SQL
- Development of Java-based database applications
- JDBC
- Berkeley DB
5Course Topics
- Entity-relationship (ER) model
- Database design tool
- Relational database model
- A set of tables
- Relational algebra and calculus
- SQL query language
- File structures
- B-tree
- Hash table
6Course Administration
- Office Hours
- T.R. 1100 - 1230 in ATH356
- Grading
- three assignments 23
- one project 15
- Two lab quizzes 2
- Midterm 24
- Final 36
- Re-examination
- None
- Collaboration
- Collaborate on assignments, but do not merely
copy. - Moodle Course page
- forums
7 Evolution of Computer Applications
1. computing machines Z X Y 2.
permanent data storage devices
RAM, disks, tapes 3. file management
systems retrieve information
efficiently from a large amount
of data stored on disk 4. database management
systems efficient as well as
convenient information retrieval
8Basic structure of a computer
Disk high capacity with low speed RAM low
capacity with high speed
9File a collection of related information
defined by its creator. Physical
file a file actually exists in a storage
devise. ( a collection of
bites, as seen by the operating system.)
Logical file a file viewed by users and
programs. ( a collection
of records.)
A file management system, usually within the
operating system, is used to efficiently access
physical files stored in the secondary
storage devices.
Functions create, updates, retrieval Criterion
efficiency Key consideration high speed
RAM access vs. low speed
disk access
10A file processing system within an operation
system
a logic file
physical files
A file system sets up mappings between logical
files and physical files.
11Data any information
Database a large collection of data
an integrated collection of
data Database management system
a software system that provides an efficient
as well as convenient
environment for accessing data in a
database.
12Database Management System Structure
naive
application
casual
database
users
programmers
users
administrator
application
database
system
query
programs
scheme
calls
data manipulation
query
data definition
language
processor
language
precompiler
compiler
application
database
program
manager
DBMS
object code
file manager
data
files
data
dictionary
H.F. Korth and A. Silberschatz. Database System
Concepts, McGraw-Hill, 1986.
13Why file management systems? efficient
file accesses Why database
management system? efficient and
convenient data access
File management systems goal
efficiency problem high speed
ram vs. low speed disk access solution
complicated file structures Database
management systems goal
efficiency as well as convenience
problem conflicts between efficiency and
convenience solution data
independence supported by various database
models
14History of File Organizations
Sequential search index sequential
B-tree Hashing Classification of
Database Models Entity-relationship
network hierarchical relation
object-oriented deductive
Get information from a disk file in just a few
disk accesses
Various database models provide logical and
physical data independence to separate simple
logical database structures and complicated
physical file structures.