CS609: Database Management
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
Office Hours: M, W, F 9:00-10:00 am, T 10:00-11:00 am or stop by my office
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
Dynamo, MongoDB, CouchDB, Bigtable, Cassandra - HBase, Spanner, Couchbase
Databases in Clouds
Object-Relational SQL: Chapter 11
XML and Databases: Chapter 12
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.
I reserve the right to make announcements in class that may not appear on the class website.