General Information
Course Description (Distributed Data Management Systems for Modern Applications)
This is a graduate-level project-oriented seminar course in modern applications of distributed data management. The material of the course covers a number of modern applications of distributed data management systems such as geo-replication, large-scale machine learning, edge computing, and cryptocurrency. We will study how data management systems evolved to cater to these applications. Each topic will be studied by discussing one or more papers. The format of presenting the topics is to discuss the foundation and the used techniques. Following the foundation is a discussion of a recent system that realizes a solution to a modern application.
The course is project oriented. Each group of students select a topic (e.g., large-scale machine learning or geo-replication) and a recent systems paper in that topic. The group project has two main milestones: (1) Reproducing the main experimental evaluations of the system. This entails reimplementing the system. (2) Proposing and implementing an enhancement on the system. The group will write a short report on their evaluations and proposed enhancement. Also, they will do three presentations: (1) a short presentation on the paper they selected in the first half of the course, (2) a longer presentation on another paper in the topic, (3) a short final presentation about the project.
Students are expected to have a basic understanding of operations systems, databases, and distributed systems. For the project, students are expected to have strong systems/implementation skills.
Grading
Project: 60%
Presentations: 30%
Participation: 10%
Schedule
Note: the schedule is subject to change according to the topics and papers selected by students.
Lecture | Subject | Reading |
Weeks 1 (Tuesday) | Welcome and Distributed Systems introduction | |
Weeks 1 (Thursday) | Global-Scale Data Management: Strong consistency | Consensus foundation
|
Weeks 2 (Tuesday) | Global-Scale Data Management: Strong consistency | Transactions and Atomic Commitment foundation
|
Weeks 2 (Thursday) | Globa-Scale Data Management: Strong consistency | Modern Systems (one of the following to be presented by students)
|
Weeks 3 (Tuesday) | Global-Scale Data Management: Relaxed Transactions | Relaxed Guarantees
|
Weeks 3 (Thursday) | Global-Scale Data Management: Relaxed Transactions | Modern systems (one of the following to be presented by students)
|
Weeks 4 (Tuesday) | Globa-Scale Data Management: Big Data Analytics | Foundation
|
Weeks 4 (Thursday) | Globa-Scale Data Management: Big Data Analytics | Modern systems (one of the following to be presented by students)
|
Weeks 5 (Tuesday) | Byzantine Agreement |
|
Weeks 5 (Thursday) | Byzantine Agreement |
|
Weeks 6 (Tuesday) | Learning Systems: Multi-core systems |
|
Weeks 6 (Thursday) | Learning Systems: Distributed systems |
|
Weeks 7 (Tuesday) | Learning Systems: Image processing systems |
|
Weeks 7 (Thursday) | Papers selected by students: Strong consistency | TBD |
Weeks 8 (Tuesday) | Papers selected by students: Relaxed transactions | TBD |
Weeks 8 (Thursday) | Papers selected by students: Big Data Analytics | TBD |
Weeks 9 (Tuesday) | Papers selected by students: Byzantine agreement | TBD |
Weeks 9 (Thursday) | Papers selected by students:learning systems | TBD |
Weeks 10 (Tuesday) | Final project presentations | |
Weeks 10 (Thursday) | Final project presentations |