About this Course
4.6
190 ratings
40 reviews
Specialization

Course 2 of 6 in the

100% online

100% online

Start instantly and learn at your own schedule.
Flexible deadlines

Flexible deadlines

Reset deadlines in accordance to your schedule.
Hours to complete

Approx. 25 hours to complete

Suggested: 5 weeks of study, 5 - 10 hours/week...
Available languages

English

Subtitles: English

Skills you will gain

Distributed ComputingC++Cloud ComputingNoSQL
Specialization

Course 2 of 6 in the

100% online

100% online

Start instantly and learn at your own schedule.
Flexible deadlines

Flexible deadlines

Reset deadlines in accordance to your schedule.
Hours to complete

Approx. 25 hours to complete

Suggested: 5 weeks of study, 5 - 10 hours/week...
Available languages

English

Subtitles: English

Syllabus - What you will learn from this course

Week
1
Hours to complete
4 hours to complete

Week 1: Course Orientation and Classical Distributed Algorithms Continued

Lesson 1: To coordinate machines in a distributed system, this module first looks at classical algorithms for electing a leader, including the Ring algorithm and Bully algorithm. We also cover how Google’s Chubby and Apache Zookeeper solve leader election. Lesson 2: This module covers solutions to the problem of mutual exclusion, which is important for correctness in distributed systems with shared resources. We cover classical algorithms, including Ricart-Agrawala’s algorithm and Maekawa’s algorithm. We also cover Google’s Chubby support for mutual exclusion....
Reading
11 videos (Total 122 min), 7 readings, 2 quizzes
Video11 videos
Orientation Towards Cloud Computing Concepts: Some Basic Computer Science Fundamentals23m
Week 1 Introduction1m
1.1. The Election Problem8m
1.2. Ring Leader Election14m
1.3. Election in Chubby and ZooKeeper9m
1.4. Bully Algorithm9m
2.1. Introduction and Basics12m
2.2. Distributed Mutual Exclusion10m
2.3. Ricart-Agrawala's Algorithm11m
2.4. Maekawa's Algorithm and Wrap-Up16m
Reading7 readings
Orientation Overview10m
Syllabus10m
About the Discussion Forums10m
Course Learning Community and Social Media10m
Week 1 Overview10m
Homework 1 Instructions10m
Programming Assignment Instructions10m
Quiz2 practice exercises
Orientation Quiz10m
Homework 120m
Week
2
Hours to complete
2 hours to complete

Week 2: Concurrency and Replication Control

Lesson 1: Transactions are an important component of many cloud systems today. This module presents building blocks to ensure transactions work as intended, from Remote Procedure Calls (RPCs), to serial equivalence for transactions, to optimistic and pessimistic approaches to concurrency control, to deadlock avoidance/prevention. Lesson 2: This module covers how replication – maintaining copies of the same data at different locations – is used to provide many nines of availability in distributed systems, as well as different techniques for replication and for ensuring transactions commit correctly in spite of replication. ...
Reading
8 videos (Total 95 min), 2 readings, 1 quiz
Video8 videos
1.1. RPCs17m
1.2. Transactions13m
1.3. Serial Equivalence12m
1.4. Pessimistic Concurrency13m
1.5. Optimistic Concurrency Control9m
2.1. Replication14m
2.2. Two-Phase Commit11m
Reading2 readings
Week 2 Overview10m
Homework 2 Instructions10m
Quiz1 practice exercise
Homework 230m
Week
3
Hours to complete
3 hours to complete

Week 3: Emerging Paradigms

Lesson 1: We study the emerging area of stream processing, touching on key design aspects of Apache Storm. Lesson 2: We study how enormous graphs can be processed in clouds. Lesson 3: We study various types of networks/graphs that are both natural and artificial, and their surprising commonalities. Lesson 4: This module presents classical scheduling algorithms that have been used in operating systems since the inception of computers. We then cover two popular scheduling algorithms for Hadoop....
Reading
9 videos (Total 110 min), 2 readings, 1 quiz
Video9 videos
Stream Processing in Storm15m
Distributed Graph Processing16m
Structure of Networks21m
4.1. Single-processor Scheduling11m
4.2. Hadoop Scheduling11m
4.3. Dominant-Resource Fair Scheduling8m
Storm Demo 9m
Apache Spark by Faria Kalim12m
Reading2 readings
Week 3 Overview10m
Homework 3 Instructions10m
Quiz1 practice exercise
Homework 330m
Week
4
Hours to complete
3 hours to complete

Week 4: Classical Systems

Lesson 1: When files and directories are stored/accessed over the network, it is called a distributed file system. This module covers the working of distributed file systems like NFS and AFS. Lesson 2: This module covers Distributed Shared Memory systems, their techniques, and pros/cons. Lesson 3: This module looks at the area of sensor networks, starting from what’s inside a sensor mote and how networks of them work....
Reading
6 videos (Total 109 min), 2 readings, 1 quiz
Video6 videos
1.1. File System Abstraction23m
1.2. NFS and AFS14m
Distributed Shared Memory17m
Sensor and Their Networks30m
Interview with Brighten Godfrey23m
Reading2 readings
Week 4 Overview10m
Homework 4 Instructions10m
Quiz1 practice exercise
Homework 420m
4.6
40 ReviewsChevron Right

Top Reviews

By MRJul 16th 2017

Great course, I would recommend to everyone who wants to understand the basics of cloud computing. The course material is excellent, the instructor Indy is phenomenal and the exams are marvelous.

By AHJan 1st 2018

Very nice and informative course, and the programming assignment in the end of the course is so helpful to understand and apply the theoretical concepts that was introduced during the course

Instructor

Avatar

Indranil Gupta

Professor
Department of Computer Science
Graduation Cap

Start working towards your Master's degree

This course is part of the 100% online Master in Computer Science from University of Illinois at Urbana-Champaign. If you are admitted to the full program, your courses count towards your degree learning.

About University of Illinois at Urbana-Champaign

The University of Illinois at Urbana-Champaign is a world leader in research, teaching and public engagement, distinguished by the breadth of its programs, broad academic excellence, and internationally renowned faculty and alumni. Illinois serves the world by creating knowledge, preparing students for lives of impact, and finding solutions to critical societal needs. ...

About the Cloud Computing Specialization

The Cloud Computing Specialization takes you on a tour through cloud computing systems. We start in in the middle layer with Cloud Computing Concepts covering core distributed systems concepts used inside clouds, move to the upper layer of Cloud Applications and finally to the lower layer of Cloud Networking. We conclude with a project that allows you to apply the skills you've learned throughout the courses. The first four courses in this Specialization form the lecture component of courses in our online Master of Computer Science Degree in Data Science. You can apply to the degree program either before or after you begin the Specialization....
Cloud Computing

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.