CS609: Database Management

Course Syllabus
Fall 20


Course Objectives:

CS609 provides an advanced view of database management systems, addressing both practical and theoretical aspects of database systems.  The implementation and performance of the relational model will be examined, along with system techniques associated with transaction processing and recovery.  Parallel/distributed databases,  security and NoSQL databases will also be discussed.  At the conclusion of the course, students will have a critical understanding of the strategies and problems associated with current database systems, and be able to determine new solutions.

Students are required to know the C/C++ or Java programming languages and SQL.

Course Catalog Description:

Data model theory, comparison of existing database systems, implementation technology, selection, evaluation techniques, integrity, security, authorization and protection, and hardware architecture.


Elmasri and Navathe, Fundamentals of Database Systems, 7th Edition, Benjamin/Cummings, 2015/2016.(Required).
Strauch, NoSQL Databases   Required
Journal articles to be distributed in class.


      CS457 or equivalent undergraduate database class.


Dr. Susan V. Vrbsky
Office: 3430 Science and Engineering
Phone: 348-7352
Email: vrbsky@cs.ua.edu

Office Hours: M, W, F 9:00-10:00 am, T 10:00-11:00 am  or stop by my office

Grading Policy:

30%  In-Class Exam
35%  Programming/Written assignments (3-5 assignments)
  5% Class participation
30%  Final Exam Project presentation (Scheduled Final exam period
Tues. Dec. 6, 3:30-6:00 pm)

Some of your programming assignments will be individual and some of them will require you to work in groups.  It will be specified for each assignment. 

The programming/written assignments include a presentation of an open source NoSQL DB of your choice.  You will be required to evaluate the NoSQL DB based on some of the topics discussed in class.

The final exam project is a group project and will require designing/implementing a NoSQL database.  Students will present their NoSQL DB and make it available to the rest of the class during dead week.  Feedback will be given and a final presentation of the NoSQL DB will be given during the final exam period.

To request disability accommodations, please contact the Office of Disability  Services at 348-4285 (133-B Martha Parham West).  Thereafter, you are invited to schedule appointments with me to discuss accommodations and other special needs.

Topics to be covered (Subject to change):

Classic DB Concepts:

    Transaction Processing Concepts: Chapters 21-23
        Concurrency - locking, optimistic, multiversions
        Consistency - ACID, BASE, (CAP)
        Recovery - logs
    Indexing and Performance Issues: Chapters 18-20
    Database Integrity and Security: Chapter 24

Parallel/Distributed Databases: Chapter 25
        2PC, Partitioning, Sharding

 Not Only Relational DBs  
    NoSQL DBs  
            Dynamo, MongoDB, CouchDB, Bigtable, Cassandra - HBase, Spanner, Couchbase
    Map Reduce
    Databases in Clouds
    Object-Relational SQL: Chapter 11
    XML and Databases:  Chapter 12


Attendance Policy:

Regular attendance is your responsibility.  If you choose to miss class it is also your responsibility to make up all work missed.   The test will cover the material in the text, discussed during class and covered in the assignments.  There will be no make-up exams.  Students must contact the instructor in a timely manner if an exam is missed due to legitimate circumstances beyond the students' control.
I reserve the right to make announcements in class that may not appear on the class website.

First Lecture