Computer Science, Prifysgol Cymru Aberystwyth University of Wales
C375(h)* - Database Management Systems
Brief Description
This module introduces the major components of a database
management system and the techniques used in implementing them. It
addresses data storage devices and systems, storage and retrieval
strategies and mechanisms, query processing algorithms, transactions
and concurrency control mechanisms, and data structures and algorithms
used in ensuring database reliability and recovery from various kinds
of failure.
Aims, Objectives, Syllabus, Booklist
Further Details
- Number of lectures
- 20
- Number of seminars/tutorials
- 4
- Number of practicals
- 0
- Coordinator
- Dr. Fred Long
- Other staff involved
- Not yet known
- Pre-requisites
- None
- Co-requisites
-
CS27220
(or C272 as a pre-requisite)
- Incompatibilities
- None
- Assessment
- Assessed coursework - 20%
Written exam - 80%
- Timing
- This half module is offered only in Term 1
Aims
This module aims to familiarise students with the techniques
used in implementing database management systems.
Objectives
On successful completion of this module, students will be able
to:
-
discuss the relative merits of a variety of external
storage devices;
-
describe the components of a database management system in
terms of the services they provide;
-
explain and apply query processing strategies and
techniques;
-
compare and contrast a variety of transaction processing
and concurrency control techniques;
-
discuss the aims, objectives and relative merits of a
variety of reliability and recovery mechanisms.
Syllabus
-
External storage devices and
systems - 2 Lectures
-
-
Database components - 1 Lecture
-
-
Storage and retrieval strategies and
mechanisms - 9 Lectures
-
Primary access methods; classification of access
methods, hashed access file organisation, indexed files (sparse
index), B+ trees, files with a dense index. Files with variable length
records. Secondary indices; inverted file organisation, multilist
files, partitioned hash functions, partial match retrieval with
signature trees. Hashing techniques for expandable files.
-
Query processing - 3 Lectures
-
Different kinds of query; ad-hoc, embedded, update.
Need for query optimisation. Optimisation strategies; algebraic
strategies, implementation dependent strategies. Optimising relational
expressions. Generating query plans for the optimised expression and
selecting the cheapest. Query optimisation in some sample database
management systems. Query optimisation by tableau minimisation.
-
Transactions and concurrency control - 3 Lectures
-
The nature of transactions. Transaction integrity,
atomicity, permanence, independence. Concurrency control.
Serializability, schedules. Locking. Starvation and deadlock, Deadlock
prevention, Deadlock detection and resolution, Timestamping.
-
Reliability and recovery - 2 Lectures
-
Major types of failure; aborted transactions,
incorrect data, system failure, database destruction. Recovery
mechanisms; backup, audit trail, checkpoint facility. The recovery
manager. Recovery and restart procedures; restore and rerun, rollback
roll forward. Recovering from different kinds of failure.
Booklist
Students are likely to need ready access to the following
-
J.G. Hughes.
Database Technology, A Software Engineering Approach.
Prentice-Hall, 1988.
-
C.J. Date.
An Introduction to Database Systems.
Addison-Wesley, 5th. edition, 1990.
Version 2.1
Syllabus
Nigel Hardy Departmental Advisor
nwh@aber.ac.uk
Dept of Computer Science, UW Aberystwyth (disclaimer)