CMSC 724 Database Management Systems, Spring 2010

Professor

Nick Roussopoulos

3235 A. V. Williams Bldg
Phone: (301)405-2687
Lecture Time & Place
Wednesday 4:00pm- 6:45pm [NEW] ROOM CSIC 3118
No Laptops will be allowed in the class!
Office Hours: Mo 2-3pm or by appointment
Course Hot News  (check this page frequently)
Class Slides
Course Structure
Course Overview:  This course covers advanced topics in Database Management systems, with a blend of classic and ongoing research. We will cover some of the classic papers in the area in the first half, and focus on more recent work in the second half. While the CMSC 424 course mainly concentrates on centralized relational database systems used for business data processing, in this course we expand the range of database systems and study them in terms of architectures, data models, hardware and software environments, distributed applications, and touch a little on socioeconomics of databases.

Course Pre-Requisites: CMSC 424, (CMSC 624 is waived), or equivalent.

Course Credit: This course counts towards the Database area's requirements for PhD core, MS comps, and MS coursework.

Course Text Book:

[1] Readings in Database Systems, by Hellerstein & Stonebraker, MIT Press, 4th Edition, 2004.  This is a compilation of papers in the Database area, but also contains some very nice overview chapters at the beginning. The papers themselves are mostly available on the web, but overview chapters and other material from the book is not; I would encourage that you get a copy of this book. We will augment the paper collection papers from major DB conferences.   

Course Grading:

Presentations 15%
Critiques & Class Participation 10%
Midterm Exam 20%
Project 30%
Final Exam 25%
Course Requirements: This course will consist of lectures (by me) and presentations (from you, the students). After a few lectures by me, I plan to split the class into two parts.  In the  first half I will lecture on an area or paper discussing the some of the  theoretical foundations, techniques, algorithms, and  the general trends in that topic. I expect this to last about half the class. In the other half of the class, two-three students will present papers, followed by critiques and a class discussion. This is a shared learning class and active participation in these discussions is strongly encouraged. I expect each student to do several (3-4) presentations and several critiques during the semester.  In addition to the class presentations, there will be a semester-long programming project that you can do alone or in teams of two. The project's requirements will be discussed on the first day of classes and will involve some new research problems,  implementation, experimentation, and hopefully submission for publication.  Project suggestions will be provided in class.

Course Deliverables:
  • Presentations: Several 25-minute presentations and critiques on presentations/lectures.
    • Slides: Students will submit the powerpoint slides prior to their presentation. These will posted to the course website.
  • Critiques :  10-minute critiques on presentations/lectures.
     
  • Class Participation: Semester-long active participation in the discussion.
  • Project: Semester-long project alone or in groups of two.
    • Preliminary Report: This will be a 1-2 page report due on 2/24/2010 that outlines the participant(s), project overview, what you plan to do, mid-semester and end-semester milestones, and one or two references to previous work. Project suggestions will be provided in class.
    • Literature survey: A 3-4 page report that surveys the prior work, and puts your proposed work in context of the related prior work. This will be due on 3/10/2010.
    • Mid-Semester Report: A 5-7 page progress report. This will be due on April 7.
    • Final Report: A 10-15 page report following a research paper format. There may be either an oral presentation or a poster session. This will be due on 5/12/2010.
    • Project Presentation and Demo: We will have a course presentation and demo fest on May 12th.

  • Exams:
    • Midterm and Final Exams will be based on material presented in my lectures and your presentations.
Course Plan

Below is a list of papers that we will try to cover in the course:

  • Preview & Chapter 1: Data Models and DBMS Architectures
  • Chapter 2: Query Processing (several papers)
  • Chapter 3: Access Methods and Storage (several papers plus 2-3 more)
  • Chapter 4: Transactions (papers 1,2, and 1-2 more)
  • Chapter 5: Extensible Systems (paper 1)
  • Chapter 6: Database Evolution (paper 1 and a couple more)
  • Chapter 7: Warehouse Techniques (papers 1, 3,7, and a couple more)
  • Chapter 8: Data Mining (Paper 3 and perhaps 1-2 more)
  • Chapter 9: Web Infrastructure and Database Technology (papers 1,2,7, and perhaps 1-2 more)
  • Chapter 10: Streams (a couple of papers)