CS 542: Distributed Database Systems, Spring 2020

Home Reading List Slides Homeworks Project Weekly Readings

Time: Tue., Thu. 3:00pm - 4:15pm
Room: FRNY B124
Instructor: Prof. Bharat Bhargava . Office: LWSN 2116F, Tel: 494-6013, Email: bbshail AT purdue.edu, Office hours: Tuesday 4:15pm-5:00pm outside FRNY B124 and by appointment.
TA: Edgardo Barsallo Yi (ebarsall AT purdue.edu). Office: EE 168. Office hours: Wed. 2:00pm - 3:00pm (EE 168) or by appointment.
Midterm Exam: Thu. March 12, 8:00pm - 10:00pm, HAMP 1144
Final Exam: Tue. May 5, 8:00am - 10:00am, FNY B124

Teaching Material

This course will deal with the fundamental issues in large distributed systems which are motivated by the computer networking and distribution of processors, and control. The theory, design, specification, implementation, and performance of large systems will be discussed. Concurrency, Consistency, Integrity, Reliability, Privacy, and Security in distributed systems will be included.

A special feature of the course includes interesting problems in Mobile Ad hoc networks and Cloud Computing that can benefit from research ideas in distributed systems. Research related to Mobile Computing, Streaming databases, Video conferencing, Peer to Peer systems, Cloud computing will be covered.

Textbooks:

Course Outline:

  1. Architecture, General Systems Issues, Example Systems ....(3 Hrs.)
  2. Distributed control for synchronization and concurrency (will include the models for concurrent processing and transactions, theory of serializability, classes of concurrency control approaches, performance evaluation of these classes, centralized control vs. decentralized control).........(12 Hrs.)
  3. Distributed commitment/termination (involves preservation of atomicity of transaction execution, blocking/non-blocking protocols).........(6 Hrs.)
  4. Resiliency in distributed systems (involves design of protocols for site failure, network partitioning, loss of messages or variable transmission delays, consistent recovery)..........(3-6 hours.)
  5. Security in distributed systems. (involves study of a variety of attacks on the components of system (such as on routing protocols in ad hoc networks), privacy issues in Peer to Peer systems, trusted collaboration and dissemination of data among cooperative entities).........(9-12 hours)
  6. Design and Implementation of Prototype/commercial systems, Experimental Evaluations. Details of peer to peer system developed at Purdue and several commercial systems .....(9 Hrs)
  7. Research Issues in Cloud Computing (see web site under CS 590: http://www.cs.purdue.edu/homes/bb/#teaching)

Assignments and Grading Policy:

The following assignments/exams etc. are planned.

Non-programming assignments (4)
Once every two weeks.
  20%  
Programming assignment (1)
A programming project that you select from a choice of 12-15 projects. You may suggest a project based on your interest.  
  30%
Class contributions
(e.g., class attendance and participation, discussions, outside reading/presentation of research papers).
You should attend all classes for highest class contribution credit.
  10%
Midterm Exam   20%
Final Exam   20%

You can expect a grade of A- if you score 90-93, an A if you score 94 or higher. Same scale for B and C grade. If you do not do any part of the project or home works or score less than 75%, a C grade is possible.

Programming Assignment

Class contribution

Some things that contribute to class participation:

Using Piazza

We will use piazza.com for the class. I encourage you to register there if you are not registered yet since it is the best way to ask questions related to the course. Besides, some announcements related to assignments will be done via Piazza. Once you are registered, you will be able to find the class "CS 54200 Distributed Databases" and join it as a student. If you can't find the class then use the following link to sign-up for it: Join CS 54200 (Spring 2020) in Piazza.
 

Late Submission Policy

Penalty for late homework is 10% for each class day after the due date. Problems on the grading of assignments/exams/project must be resolved within one week after the graded work is returned or score is posted in Blackboard. The grades will not be modified after the one week time period. Please, refer to Piazza for further explanation of the Policy.
 

Absence from Class

You must attend all the classes. Absence in five or more classes will lower your final grade.
 

Academic Dishonesty

One can not use any part of another person's work in his/her assignments and projects. If an overlap in any submission for grading is detected, an automatic grade of F in course will be assigned to the student and it will be reported to graduate school and deans. You are welcomed to discuss and learn from others. If you use any material in your homework, you have to put a reference to it. If you do a group project, specify individual contributions clearly at the time of submission and let me and TA know in advance of collaborating. Read the following links: Course Policies,   Academic Integrity.  
 

Comprehensive Reading list

Along the semester, try reading at least one paper for each section.

Big Data

Distributed Systems

Implementation

Concurrency

Communication Network

Security

Privacy

Reliability

Mobile

Cloud Computing

 
 

Homework

Homework assignments are generally due on Thursday midnight (EST). Check individual homework for the exact due date. The homework should be typed and submitted via Blackboard.  

Project

The programming assignment may involve implementing some algorithm or communication facility for transaction processing. The demonstration of projects will be scheduled on the next week after submission. Please discuss your project with the Professor or TA soon and get started.
You may want to talk about the project in class and see if you can partner with some other student.

The easy projects are on Two Phase Locking and Distributed Commit protocols. You will emulate 3-4 sites and communicate among them to accomplish transaction processing. For the complete list of projects and more information, please click here

 
 

Lecture slides

Lectures are recorded and will be available on Blackboard in the Lecture Videos section within 24 hours after the lecture finishes. Lecture videos for Tue. 1/28 and Thu. 1/30 are already available on Blackboard.


 

Book Slides

Please find the slides with the following links.