subject
Intro

Coursera: Cloud Computing Concepts, Part 1

Cloud computing systems today, whether open-source or used inside companies, are built using a common set of core techniques, algorithms, and design philosophies – all centered around distributed systems. Learn about such fundamental distributed computing "concepts" for cloud computing.

Some of these concepts include: clouds, MapReduce, key-value/NoSQL stores, classical distributed algorithms, widely-used distributed algorithms, scalability, trending areas, and much, much more!

Know how these systems work from the inside out. Get your hands dirty using these concepts with provided homework exercises. In the programming assignments, implement some of these concepts in template code (programs) provided in the C++ programming language. Prior experience with C++ is required.

The course also features interviews with leading researchers and managers, from both industry and academia.

Syllabus

Week 1: Orientation, Introduction to Clouds, MapReduce
This course is oriented towards learners with similar backgrounds as juniors and seniors in a CS undergraduate curriculum. Since learners come from various backgrounds, it is critical you view this lecture AND pass the prerequisite test. This will ensure you have many of the assumed prerequisite pieces of knowledge required to enjoy this course.

Week 2: Gossip, Membership, and Grids
Lesson 1: This module teaches how the multicast problem is solved by using epidemic/gossip protocols. It also teaches analysis of such protocols. Lesson 2: This module covers the design of failure detectors, a key component in any distributed system. Membership protocols, which use failure detectors as components, are also covered. Lesson 3: This module covers Grid computing, an important precursor to cloud computing.

Week 3: P2P Systems
P2P systems: This module teaches the detailed design of two classes of peer to peer systems: (a) popular ones including Napster, Gnutella, FastTrack, and BitTorrent; and (b) efficient ones including distributed hash tables (Chord, Pastry, and Kelips). Besides focusing on design, the module also analyzes these systems in detail.

Week 4: Key-Value Stores, Time, and Ordering
Lesson 1: This module motivates and teaches the design of key-value/NoSQL storage/database systems. We cover the design of two major industry systems: Apache Cassandra and HBase. We also cover the famous CAP theorem. Lesson 2: Distributed systems are asynchronous, which makes clocks at different machines hard to synchronize. This module first covers various clock synchronization algorithms, and then covers ways of tagging events with causal timestamps that avoid synchronizing clocks. These classical algorithms were invented decades ago, yet are used widely in today’s cloud systems.

Week 5: Classical Distributed Algorithms
Lesson 1: This module covers how to calculate a distributed snapshot, leveraging causality again to circumvent the synchronization problem. Lesson 2: This lecture teaches how to order multicasts in any distributed system. Algorithms for assigning timestamp tags to multicasts using various flavors of ordering – FIFO, Causal, and Total – are covered. The module also covers virtual synchrony, a paradigm that combines reliable multicasts with membership views. Lesson 3: Consensus is one of the most important problems in a distributed system, enabling multiple machines to agree. This module uses Paxos, one of the most popular consensus solutions used in the industry today. Paxos is not perfect because consensus cannot be solved completely – an optional lecture presents the famous FLP proof of impossibility of consensus.

21 Student
reviews
Cost Free Online Course (Audit)
Pace Upcoming
Subject DevOps
Provider Coursera
Language English
Certificates Paid Certificate Available
Hours 4-8 hours a week
Calendar 5 weeks long
Sign up for free? Learn how

Disclosure: To support our site, Class Central may be compensated by some course providers.

+ Add to My Courses
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

Reviews for Coursera's Cloud Computing Concepts, Part 1
2.8 Based on 21 reviews

  • 5 stars 24%
  • 4 stars 19%
  • 3 star 5%
  • 2 stars 14%
  • 1 stars 38%

Did you take this course? Share your experience with other students.

Write a review
  • 1
3.0 2 years ago
by Rabindra Swamidasan completed this course.
Date: 27th February 2016

Background: I have completed 4 courses in the Coursera + Uni of Illinois Urbana-Champaign Cloud Computing Specialization -- Cloud Computing Concepts (1 & 2), CC Applications, Cloud Networking. I enrolled for the Capstone, but dropped out after 3 weeks.

I completed CC Concepts 1 in March 2015. So, this is a very long-range, retrospective review.

The syllabus covers a wide range of topics in Distributed Computing, some of which are ubiquitous in Cloud Computing (as practised by the major vendors - AWS, Azure, etc.), others not so much.

The instructor promised a "look under the hood" for Cloud Computing, i.e. "the physics relating to the internals" of a car, not a driving lesson. In that sense, the course delivers -- but, maybe a little more than necessary in some areas, less in others. More breadth, less depth.

I too found the instructor's style of presentation un-engaging. More like reading f
Read more
Date: 27th February 2016

Background: I have completed 4 courses in the Coursera + Uni of Illinois Urbana-Champaign Cloud Computing Specialization -- Cloud Computing Concepts (1 & 2), CC Applications, Cloud Networking. I enrolled for the Capstone, but dropped out after 3 weeks.

I completed CC Concepts 1 in March 2015. So, this is a very long-range, retrospective review.

The syllabus covers a wide range of topics in Distributed Computing, some of which are ubiquitous in Cloud Computing (as practised by the major vendors - AWS, Azure, etc.), others not so much.

The instructor promised a "look under the hood" for Cloud Computing, i.e. "the physics relating to the internals" of a car, not a driving lesson. In that sense, the course delivers -- but, maybe a little more than necessary in some areas, less in others. More breadth, less depth.

I too found the instructor's style of presentation un-engaging. More like reading from a script. Specifically, the instructor is often painfully slow and laborious where the concepts are simple, but rushed when the concepts are more complex.

You get 3 attempts on the weekly quizzes/homework. The Mid-Term and Final exams are TIMED with 2 attempts. About 20% of the questions are tricky, not difficult. The rest are straightforward, if you've followed the videos. Several questions are worded badly enough to be unclear or ambiguous. Typically, from trying to frame the question in 1 long, garbled sentence, instead of 3 short sentences (or bullet points).

The "optional" programming exercise was highly recommended by the instructor. So, I decided to attempt it although I've never programmed seriously in C/C++ (dabbled 20 years ago). We were given a template of basically undocumented libraries to which we had to add our code. I spent 6 hours trying to set up the environment without success. So, I gave it up.

All in all, an interesting selection of topics in Distributed Computing, made somewhat troublesome by unattractive, unpolished execution.

How much it helps in architecting a Cloud (internals, not driving) or an Application that exploits state-of-the-art Cloud facilities I'm not so sure.

So, by itself I rate the course 3 stars.

Having done 4 courses in the Specialization and started the Capstone, my rating is 2 stars or possibly less.

Recommendation: Do the course for free, if you can. Don't bother about the verified certificate or the Specialization.

I plan to review the Specialization in a week or so.

12 people found
this review helpful
Was this review helpful to you? Yes
2.0 3 years ago
by Moshe Bergman completed this course, spending 8 hours a week on it and found the course difficulty to be medium.
This course is worthwhile to take as it's one of the only distributed computing courses I found that gives overview of cloud technology.

However the delivery can use an improvement. It's just slides with the instructor reading through them. The quizzes offer a lot of repetitive tricky questions that are just there to make the course appear "difficult", but the only difficulty arises from missing something and losing points. The exercise is a 10 year old buggy C code that is listed as a C++ code where you have to add the relevant code. If you know C++, that's great, if not, this might not be the best opportunity to learn it.

I decided to just listen to the lectures and not worry about exercises or quizzes, and I learnt quite a bit. I would not pay for specialization until the course improves.
7 people found
this review helpful
Was this review helpful to you? Yes
1.0 3 years ago
by Jiarui Zhang is taking this course right now, spending 4 hours a week on it and found the course difficulty to be hard.
I thought it would be a very interesting topic, but actually, it's the worst course I have taken on Coursera.

The professor go through the topic very quickly and fails to give you the insights of each algorithm. After finishing the videos and homework, I feel like I am a calculator: I can give you the right results based on the steps of each algorithms, but I don't know what exactly problems you are going to solve.

My suggestion would be taking the course like a basic guideline of distributed system algorithm. If you want to know deeper of each algorithm (like how these algorithms are used in real project), you may better read technical articles instead.
6 people found
this review helpful
Was this review helpful to you? Yes
5.0 3 years ago
by Sagar Jariwala completed this course, spending 20 hours a week on it and found the course difficulty to be hard.
It is worth taking it if you are really interested in core concepts that runs cloud computing. Course is heavy and stimulating but worth (Not for weak hearted). Compare to other courses that i've taken on coursera lecture time is more (almost 1.7 times). And as this course is really very vast and so the ground being covered is really huge in a limited time availability. It is not hello world programming tuts in cloud so please don't expect it to be one. I've just completed first part successfully and enjoying learning in second part. All the best guys. :-)
1 person found
this review helpful
Was this review helpful to you? Yes
1.0 3 years ago
Anonymous partially completed this course.
First of all, I've followed the first 4 weeks and done all the homework without any problem.

But, I have to say that very poor delivery takes this interesting subject into a boring course. Is that the quality of Illinois University ?

Even with that, breaking the norm, there is not "honor code" diploma available, you have to pay some bucks for a "verified" diploma (which for me has the same value as the honor code).

NOT RECOMMENDED
3 people found
this review helpful
Was this review helpful to you? Yes
1.0 9 months ago
Anonymous completed this course.
The course was almost rushed over, The instructor seems to not understand how to teach over this platform. Avoid this course if it is purely for interest, or waste lot of time trying to understand on your own.
Was this review helpful to you? Yes
4.0 3 years ago
by Arash Pourhabibi completed this course, spending 4 hours a week on it and found the course difficulty to be hard.
Course materials were good and coherent. The programming assignment was not prepared well. After all I find it very informative.
1 person found
this review helpful
Was this review helpful to you? Yes
4.0 a month ago
by Jason Wu is taking this course right now, spending 6 hours a week on it and found the course difficulty to be medium.
Though plain narrated tone and a little out-dated resource, this course is by far the most accessible online course. Programming assignment is very fun as well, which require enough effort to finish.
Was this review helpful to you? Yes
1.0 3 years ago
by Wei-hsin Chen is taking this course right now.
2 people found
this review helpful
Was this review helpful to you? Yes
1.0 3 years ago
by Fedir Panasenko is taking this course right now.
1 person found
this review helpful
Was this review helpful to you? Yes
2.0 3 years ago
by Tabish Sada audited this course.
1 person found
this review helpful
Was this review helpful to you? Yes
1.0 3 years ago
by Ajay Mathias completed this course, spending 5 hours a week on it and found the course difficulty to be medium.
1 person found
this review helpful
Was this review helpful to you? Yes
2.0 2 years ago
Kirill Soloviev completed this course.
1 person found
this review helpful
Was this review helpful to you? Yes
1.0 3 years ago
Anonymous partially completed this course.
1 person found
this review helpful
Was this review helpful to you? Yes
1.0 2 years ago
by Bayu Prasetyo is taking this course right now.
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Mark Henry Butler completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Hadrien Zalek completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
4.0 2 years ago
by Peter Shaw completed this course.
Was this review helpful to you? Yes
5.0 2 years ago
Basil Rormose completed this course.
Was this review helpful to you? Yes
  • 1

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free