Distributed Computing Systems

Spring 2021

General Course Information:

Instructor: Lakshmish Ramaswamy (laks[AT]cs[dot]uga[dot]edu, 706-542-2737)
 
Time and Venue: Tuesdays & Thursdays - 12:45 PM to 2:00 PM (Boyd 306); Wednesdays - 12:40 PM to 1:30 PM (Boyd 306)
 
Office Hours (tentative): Tuesday and Thursdays - 12:00 PM to 12:45 PM (via zoom) and by appointment

TA: TBA

TA Office Hours: TBA

Course Description:

The area of distributed computing has seen tremendous developments in the past few years, and distributed systems have become widely pervasive. Today's distributed systems range from ad-hoc networks comprising of mobile devices, to overlay networks such as peer-to-peer systems, to massive web farms of powerful servers.The objective of the course is to gain an in-depth knowledge of the fundamental concepts in distributed systems and to understand the practical techniques for building distributed systems and applications.

Course Materials:

Textbook:

Grading Policy

Programing Projects
60%
Midterm Exam
15%
Final Exam
20%
Homework/Tech Topic Presentation
5%

Slides:

Will be available on ELC.

Programming Projects

Project 1 -- Due on 02/10/2021, 11:59 PM
Project-2 -- Due on 03/08/2021, 11:59 PM
Project-3 -- Due on 04/06/2021, 11:59 PM
Project-4 -- Due on 04/29/2021, 11:59 PM

Presentation Topics for Graduate Students (Please contact TA for signing up)

Each presentation is around 15 minutes including QA
  1. PThreads -- 
  2. Java Threads --
  3. DNS --
  4. Java RMI --
  5. Bloom Filters --
  6. Chord Protocol
  7. NFS  --
  8. HTTP Components --
  9. XML --
  10. SOAP --
  11. JSON --
  12. WSDL --
  13. HDFS --
  14. Hypervisors --
  15. Cloud Computing --
  16. Hadoop --
  17. Apache Hive --
  18. Apache Spark --
  19. Apache Giraph --
  20. HBase/Bigtable --
  21. Cassandra --
  22. MongoDB
  23. Neo4j
  24. Kubernetes
  25. Publish-Subscribe Systems --
  26. Streams and Complex Event Processing --
  27. Edge computing
  28. Internet of Things

Homeworks for Undergraduate Students (1 HW problem per project group. Please contact the TA for signing up).

X/Y below indicates the Yth problem in the Xth Chapter of the Tanenabum & van Steen  textbook (2nd Edition)

1/6, 1/9, 3/2, 4/4, 5/2, 5/4, 5/13, 6/1, 6/2, 6/14.

Exam Schedule

Midterm Exam (tentative): 03/11/2021 during class.
Final Exam (as per UGA final exam schedule): 05/11/2021, 12:00 PM (as per UGA final exam schedule).

Related and Interesting Resources