VOOZH about

URL: https://www.coursera.org/learn/cloud-computing

⇱ Cloud Computing Concepts, Part 1 | Coursera


Cloud Computing Concepts, Part 1

Ends soon! Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Cloud Computing Concepts, Part 1

This course is part of Cloud Computing Specialization

154,915 already enrolled

Included with

β€’

Learn more

Gain insight into a topic and learn the fundamentals.
4.3

1,074 reviews

Beginner level
No prior experience required
Flexible schedule
2 weeks at 10 hours a week
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
4.3

1,074 reviews

Beginner level
No prior experience required
Flexible schedule
2 weeks at 10 hours a week
Learn at your own pace

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

8 assignments

Taught in English
92%
Most learners liked this course

Build your subject-matter expertise

This course is part of the Cloud Computing Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 5 modules in this course

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.

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.

What's included

16 videos8 readings3 assignments2 discussion prompts1 plugin

16 videosβ€’Total 155 minutes
  • Introduction to Cloud Computing Concepts, Part 1β€’4 minutes
  • Orientation Towards Cloud Computing Concepts: Some Basic Computer Science Fundamentalsβ€’24 minutes
  • Week 1 Introductionβ€’1 minute
  • 1.1. Why Clouds?β€’7 minutes
  • 1.2. What is a Cloud?β€’5 minutes
  • 1.3. Introduction to Clouds: Historyβ€’8 minutes
  • 1.4. Introduction to Clouds: What's New in Today's Cloudsβ€’8 minutes
  • 1.5. Introduction to Clouds: New Aspects of Cloudsβ€’8 minutes
  • 1.6. Introduction to Clouds: Economics of Cloudsβ€’7 minutes
  • 2.1. A cloud IS a distributed systemβ€’5 minutes
  • 2.2. What is a distributed system?β€’16 minutes
  • 3.1. MapReduce Paradigmβ€’14 minutes
  • 3.2. MapReduce Examplesβ€’11 minutes
  • 3.3. MapReduce Schedulingβ€’13 minutes
  • 3.4. MapReduce Fault-Toleranceβ€’9 minutes
  • Interview with Sumeet Singhβ€’16 minutes
8 readingsβ€’Total 80 minutes
  • Orientation Overviewβ€’10 minutes
  • Syllabusβ€’10 minutes
  • About the Discussion Forumsβ€’10 minutes
  • Instructions for Taking the Prerequisite Quizβ€’10 minutes
  • Course Learning Community and Social Mediaβ€’10 minutes
  • Week 1 Overviewβ€’10 minutes
  • Homework 1 Instructionsβ€’10 minutes
  • Programming Assignment Instructionsβ€’10 minutes
3 assignmentsβ€’Total 90 minutes
  • Orientation Quizβ€’30 minutes
  • Prerequisite Quizβ€’30 minutes
  • Homework 1β€’30 minutes
2 discussion promptsβ€’Total 20 minutes
  • Getting to Know Your Classmatesβ€’10 minutes
  • Homework 1 Discussionβ€’10 minutes
1 pluginβ€’Total 15 minutes
  • Welcome! Please tell us about yourself.β€’15 minutes

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.

What's included

14 videos2 readings1 assignment1 discussion prompt

14 videosβ€’Total 122 minutes
  • Week 2 Introductionβ€’1 minute
  • 1.1. Multicast Problemβ€’10 minutes
  • 1.2. The Gossip Protocolβ€’6 minutes
  • 1.3. Gossip Analysisβ€’15 minutes
  • 1.4. Gossip Implementationsβ€’4 minutes
  • 2.1. What is Group Membership List?β€’9 minutes
  • 2.2. Failure Detectorsβ€’9 minutes
  • 2.3. Gossip-Style Membershipβ€’8 minutes
  • 2.4. Which is the best failure detector?β€’5 minutes
  • 2.5. Another Probabilistic Failure Detectorβ€’9 minutes
  • 2.6. Dissemination and suspicionβ€’9 minutes
  • 3.1. Grid Applicationsβ€’6 minutes
  • 3.2. Grid Infrastuctureβ€’11 minutes
  • Interview with William Groppβ€’20 minutes
2 readingsβ€’Total 20 minutes
  • Week 2 Overviewβ€’10 minutes
  • Homework 2 Instructionsβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Homework 2β€’30 minutes
1 discussion promptβ€’Total 10 minutes
  • Homework 2 Discussionβ€’10 minutes

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.

What's included

10 videos2 readings1 assignment1 discussion prompt

10 videosβ€’Total 105 minutes
  • Week 3 Introductionβ€’1 minute
  • 1. P2P Systems Introductionβ€’6 minutes
  • 2. Napsterβ€’7 minutes
  • 3. Gnutellaβ€’20 minutes
  • 4. FastTrack and BitTorrentβ€’7 minutes
  • 5. Chordβ€’22 minutes
  • 6. Failures in Chordβ€’15 minutes
  • 7. Pastryβ€’7 minutes
  • 8. Kelipsβ€’11 minutes
  • Blue Waters Supercomputerβ€’9 minutes
2 readingsβ€’Total 20 minutes
  • Week 3 Overviewβ€’10 minutes
  • Homework 3 Instructionsβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Homework 3β€’30 minutes
1 discussion promptβ€’Total 10 minutes
  • Homework 3 Discussionβ€’10 minutes

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.

What's included

12 videos3 readings1 assignment1 discussion prompt

12 videosβ€’Total 147 minutes
  • Week 4 Introductionβ€’2 minutes
  • 1.1. Why Key-Value/NOSQL?β€’16 minutes
  • 1.2. Cassandraβ€’27 minutes
  • 1.3. The Mystery of X-The Cap Theoremβ€’20 minutes
  • 1.4. The Consistency Spectrumβ€’9 minutes
  • 1.5. HBaseβ€’10 minutes
  • 2.1. Introduction and Basicsβ€’11 minutes
  • 2.2. Cristian's Algorithmβ€’6 minutes
  • 2.3. NTPβ€’5 minutes
  • 2.4. Lamport Timestampsβ€’15 minutes
  • 2.5. Vector Clocksβ€’12 minutes
  • Interview with Marcos Aguileraβ€’15 minutes
3 readingsβ€’Total 30 minutes
  • Week 4 Overviewβ€’10 minutes
  • Optional: Lamport Timestamps (Ukulele Version)β€’10 minutes
  • Homework 4 Instructionsβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Homework 4β€’30 minutes
1 discussion promptβ€’Total 10 minutes
  • Homework 4 Discussionβ€’10 minutes

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.

What's included

16 videos4 readings2 assignments1 programming assignment3 discussion prompts1 plugin

16 videosβ€’Total 156 minutes
  • Week 5 Introductionβ€’1 minute
  • 1.1. What is Global Snapshot?β€’7 minutes
  • 1.2. Global Snapshot Algorithmβ€’11 minutes
  • 1.3. Consistent Cutsβ€’6 minutes
  • 1.4. Safety and Livenessβ€’8 minutes
  • 2.1. Multicast Orderingβ€’17 minutes
  • 2.2. Implementing Multicast Ordering 1β€’10 minutes
  • 2.3. Implementing Multicast Ordering 2β€’8 minutes
  • 2.4. Reliable Multicastβ€’6 minutes
  • 2.5. Virtual Synchronyβ€’12 minutes
  • 3.1. The Consensus Problemβ€’12 minutes
  • 3.2. Consensus In Synchronous Systemsβ€’8 minutes
  • 3.3. Paxos, Simplyβ€’14 minutes
  • 3.4. The FLP Proof [OPTIONAL]β€’21 minutes
  • Interview with Tushar Chandraβ€’14 minutes
  • Conclusion to Cloud Computing Concepts, Part 1β€’3 minutes
4 readingsβ€’Total 40 minutes
  • Week 5 Overviewβ€’10 minutes
  • Homework 5 Instructionsβ€’10 minutes
  • IMPORTANT Update notes for Gossip Protocol submission (Oct 24, 2019)β€’10 minutes
  • Final Exam Instructionsβ€’10 minutes
2 assignmentsβ€’Total 60 minutes
  • Homework 5β€’30 minutes
  • Final Examβ€’30 minutes
1 programming assignmentβ€’Total 180 minutes
  • Gossip Protocolβ€’180 minutes
3 discussion promptsβ€’Total 30 minutes
  • Homework 5 Discussionβ€’10 minutes
  • Final Exam Discussionβ€’10 minutes
  • Final Reflectionβ€’10 minutes
1 pluginβ€’Total 15 minutes
  • How was the course?β€’15 minutes

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructor

Instructor ratings
4.4 (71 ratings)
University of Illinois Urbana-Champaign
6 Coursesβ€’160,960 learners

Explore more from Algorithms

Why people choose Coursera for their career

πŸ‘ Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
πŸ‘ Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
πŸ‘ Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
πŸ‘ Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Learner reviews

  • 5 stars

    63.59%

  • 4 stars

    21.41%

  • 3 stars

    5.95%

  • 2 stars

    2.88%

  • 1 star

    6.14%

Showing 3 of 1074

KP
Β·

Reviewed on Dec 5, 2016

Great lectures. However, the starter code for the programming assignment is quite atrocious. Overall, would highly recommend to anyone wanting to learn high level concepts in distributed systems.

AR
Β·

Reviewed on Dec 23, 2017

Enjoyed the course. Brought back my ability to program in c++. The programming assignment was sufficiently challenging to achieve that.

LF
Β·

Reviewed on Dec 10, 2019

Great course overall as it gives a deep understanding of the cloud technologies. Some homework are too tedious to finish and not really interesting.

Frequently asked questions

To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

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.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,