CS178: Database Management Systems
This course introduces students to concepts in database design and
analysis.
The course will focus on the relational model and will cover logical
design
of databases (schema design), physical implementation and file
structures,
and will provide an introduction to transaction processing systems. The
emphasis will be on general concepts, and theoretical foundations, and
thus will not focus on any particular commercial system. Some homework
assignments, and the project, will require the student to use the
Oracle database which
is installed on the SEASCF facilities. Course materials, information
and
course announcements can also be accessed through the web -- the URL
for
the web page for this course is www.seas.gwu.edu/~narahari/cs178/materials/index.html
Course lecture notes will be placed online; however,
the
lecture notes are meant to give you a reference to material discussed
in
class and are not meant as a substitute for the textbook. Topics
covered
in class are linked to specific chapters in the textbook, as specified
in the Schedule of Topics below.
Prerequisite:
CS
169, CS 141, CS 135 or CS 52
Text
Database Management Systems, by Raghu Ramakrishnan, 3rd Edition,
McGraw-Hill.
Reference
Fundamentals of Database System Concepts,3rd Edition, by Elmasri and
Navathe,
Benjamin-Cummings.
Schedule of Topics
Introduction to databases-Chapter 1
Intro to ER Model - Chapter 2
Relational Model: Relational Algebra, Relational Calculus-Chapter 3,4
Query Languages: SQL (Chap.5)
Design of Relational databases: Schema Refinement, Normal forms
-Chapter 19, Notes
EXAM 1
Peformance Modelling, Database Tuning
File and System Structures: file organization- Chapters 8,9 , Notes
Indexing and Sorting: hashing, B-trees, External sorting -chapters
10,11, 13 Notes.
Query-Processing-chapter 12,14, 15 , Notes
Transaction Management: concurrency control, trans. processing,
Failure and Recovery-notes, chapters 16, 17, 18
EXAM 2
Advanced Topics:
Security
Information Retrieval Systems: Inverted files, Search engines
Spatial and Multimedia databases, Chapter 28
Data warehousing, Data mining, OLAP - Chapter 25, 26
Final Projects Presentation (in Lab section).
Lab Schedule: TBA
Lab TA: TBA
The Lab section will introduce Oracle and topics such as SQLPlus,
PL/SQL, Oracle Forms, Embedded SQL, JDBC, MySQL, PhP. The labs will
also provide
a practical discussion of Application development- Chapters 6,7
Instructor Office Hours: Tuesday, Thursday 3:00 -- 5:30pm,
Wed 4-5pm
Grading policy:
The work requirements for the course consist of (1) a number of
homework assignments, (2) programming assignments,
(3) two exams and (4) one project, requiring
use of the Oracle DBMS or MySQL databases (decision will made during
first month)
The two exams (in-class closed book) will account for
45% of the total, the homeworks will account for 15% of the grade,
the programming assignments account for 15% and the final project will
account for the remaining 25%.
Collaboration on the homeworks and programming assignments is not
allowed under
any circumstances. If you are not sure what this means then meet with
the instructor
for clarification. The project will require students to work in teams
-- teams will
be assigned during the first month of the course.
l">Academic Integrity Policy