4.6
198 ratings
42 reviews

#### 100% online

Start instantly and learn at your own schedule.

#### Approx. 24 hours to complete

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

#### English

Subtitles: English

### Skills you will gain

Distributed ComputingC++Cloud ComputingNoSQL

#### 100% online

Start instantly and learn at your own schedule.

#### Approx. 24 hours to complete

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

#### English

Subtitles: English

### Syllabus - What you will learn from this course

Week
1
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....
11 videos (Total 122 min), 7 readings, 2 quizzes
11 videos
Orientation Towards Cloud Computing Concepts: Some Basic Computer Science Fundamentals23m
Week 1 Introduction1m
1.1. The Election Problem8m
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
Orientation Overview10m
Syllabus10m
Course Learning Community and Social Media10m
Week 1 Overview10m
Homework 1 Instructions10m
Programming Assignment Instructions10m
2 practice exercises
Orientation Quiz10m
Homework 120m
Week
2
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. ...
8 videos (Total 95 min), 2 readings, 1 quiz
8 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
Week 2 Overview10m
Homework 2 Instructions10m
1 practice exercise
Homework 230m
Week
3
3 hours to complete

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....
9 videos (Total 110 min), 2 readings, 1 quiz
9 videos
Stream Processing in Storm15m
Distributed Graph Processing16m
Structure of Networks21m
4.1. Single-processor Scheduling11m
4.3. Dominant-Resource Fair Scheduling8m
Storm Demo 9m
Apache Spark by Faria Kalim12m
Week 3 Overview10m
Homework 3 Instructions10m
1 practice exercise
Homework 330m
Week
4
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....
6 videos (Total 109 min), 2 readings, 1 quiz
6 videos
1.1. File System Abstraction23m
1.2. NFS and AFS14m
Distributed Shared Memory17m
Sensor and Their Networks30m
Interview with Brighten Godfrey23m
Week 4 Overview10m
Homework 4 Instructions10m
1 practice exercise
Homework 420m
4.6
42 Reviews

### 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

### Indranil Gupta

Professor
Department of Computer Science

## 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....