Primary Instructor: Qiang Qu
Secondary Instructor: Sadegh Nobari
Assistant Instructor: Waqas Nawas, Marat Valiev, Jooyoung Lee
Teaching Assistant: Rasul Tumirkin
Prerequisite Courses: N.A.
The course presents an introduction to data modeling and database management systems (DBMSs). Most commercial ICT applications involve the use of a database management system to store information. A bank ATM has access to customer balance stored in a database. When you use a credit card, information about your card and each transaction is stored in a database. The state Department of Motor Vehicles keeps track of your drivers license and your car in databases. This course will cover the design of database systems, important database theories, SQL, programming and relational databases, and logical, object-oriented, and XML databases. The course will also involve projects and exercises using PostgreSQL, an SQL database, and the web.
The students of the course range from bachelors to masters. The total number is 291.
Course Syllabus and Teaching Schedule:
We discuss two main topics in databases with students before mid-term evaluation: 1) how to design a database by schema, and 2) how to use and manage databases by SQL. The detailed schedule of the main lectures from the syllabus is as follows:
Aug 17 (w1): Introduction – Qiang
Aug 24 (w2): Entity-Relationship Model – Qiang
Aug 31 (w3): ER & Relational Models – Qiang
Sep 7 (w4): SQL – Qiang
Sep 14 (w5): Constraints and Triggers – Qiang
Sep 21 (w6): Functional Dependencies – Qiang
Sep 28 (w7): Normal Forms – Qiang
Oct 5 (w8): Schema and SQL/PSM – Qiang
From week 9, we discuss database internals, practical issues, and advanced topics of data modeling approaches. For the pre-study and practical needs, the tentative detailed schedule against the syllabus of the main lectures is appended as follows.
Oct 12 (w9), File management, sorting, and hashing – Sadegh
Oct 19 (w10), Indexing – Qiang
Oct 26 (w11), Query evaluation and optimization – Qiang (1 hr), Query XML/JSON – Sadegh (30mins)
Nov 2 (w12), A invited lecture from industry on practical issues of PostgreSQL
Nov 9 (w13), Transaction – Qiang (30mins), NoSQL – Sadegh (1hr)
Nov 16 (w14), Exam in the main lecture, all seminars are cancelled, formats and questions are similar with the final exam
Nov 23 (w15), wrapup and review for final exam – Qiang; all seminars review project presentation (each group 5 mins)
A First Course in Database Systems. Jeffrey D. Ullman, Jennifer Widom. Pearson, 2007.
Database Management Systems (3rdE). Raghu Ramakrishnan and Johannes Gehrke. http://www.amazon.com/Database-Management-Systems-Third-Edition-ebook/dp/B002K8Q9PA
-Database System Concepts. Abraham Silberschatz, Henry F. Korth, and S. Sudarshan. McGraw-Hill, 2010.
Course Delivery: The course will be given over the semester with 2 hours of frontal lectures and 2 hours of lab session weekly (on average). There will be weekly exercises given in the form to various groups, which are required in order to familiarize students with the material covered during the lecture. The assignments can be solved in lab sessions or individually afterwards, and specific deadline will be set for each of them. Detailed explanation on specific topics, advanced topics, or practices will be delivered during group classes given by secondary or assistant instructors. There is a mid-term exam, a final written exam and a gradated project. Students are encouraged to explore new methods and techniques for the issues in the project. Selected ones can be supervised for publication.
Computer Resources: Laptops with Linux, MacOS or Windows will allow the installation of an database management system (rec. PostgreSQL).
Laboratory Exercises: For each group, exercises will be assigned weekly (on average) with periodic returning and rescheduling if necessary, and projects will be announced accordingly.
Laboratory Resources: Group rooms, projectors, whiteboards with accessories.
Assessment: The final course grade is comprised of 5 components: Attendance (5%, fail if absence for 5 times), Assignments (15%), Mid-term exam (20%), Projects (10%),Final exam (50%).