隶属于 Cloud Computing Specialization »
Learn core distributed computing concepts that underlie today’s and tomorrow’s cloud computing systems.
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 stores
You will also watch interviews with leading managers and researchers, from both industry and academia.
Understand how these techniques work inside today’s most widely-used cloud computing systems. Get your hands dirty using these concepts with provided homework exercises. In the optional programming track, implement some of these concepts in template assignments provided in C++ programming language.
This course will be broken up into 5 weekly modules covering the following topics:
Week 1: Orientation, Intro to Clouds, MapReduce
Week 2: Gossip, Membership, Grids
Week 3: P2P Systems
Week 4: Key-Value Stores, Time and Ordering
Week 5: Snapshots, Multicast, Paxos
Week 6: Leader Election, Mutual Exclusion
Week 7: Concurrency Control, Replication Control
Week 8: Stream Processing, Graph Processing, Structure of Networks, Scheduling
Week 9: Distributed File Systems, Distributed Shared Memory, Sensor Networks
Week 10: Security, Datacenter Outage Studies, Wrap-up
This course assumes some basic knowledge of working computer systems. This course is generally oriented towards either graduate students (or senior undergraduates) or developers in industry who are working with cloud computing systems. Some familiarity with cloud computing systems helps, but is not a prerequisite. In the optional programming track, familiarity with C++ programming language is required.
This course does not teach you how to use cloud computing systems or about networking or Big Data. If we were to draw an analogy, if this course were about cars, then it would teach you the physics relating to the internals of the car (e.g., friction, transmission, gears, etc.) and basics about the internals of the car (e.g., about the carburetor, engine, etc.). The course would not, however, teach you how to drive a car or about automobile accident statistics or about how roads are built.
Take this course if you’re curious about cloud computing systems. Do not take this course if you know nothing about computers or computer science.
Course videos, slides, and homeworks serve as the primary class content. Readings and links on the open Web may also be used. No textbook is required.
In addition to watching several video segments, you will participate in the following activities:
in-video quiz questions
optional programming assignments
How does this course fit into the Cloud Computing Specialization?
This is the first course in the track.