Cloud Computing Concepts

开始时间: 02/02/2015 持续时间: 5 weeks

所在平台: Coursera

课程类别: 计算机科学

大学或机构: University of Illinois at Urbana-Champaign( 伊利诺伊大学厄巴纳 - 香槟分校)

授课老师: Indranil Gupta

   

课程主页: https://www.coursera.org/course/cloudcomputing

Explore 1600+ online courses from top universities. Join Coursera today to learn data science, programming, business strategy, and more.

课程评论: 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 stores
  • classical precursors
  • widely-used algorithms
  • classical algorithms
  • scalability
  • trending areas
  • and more!

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

课程评论(1条)

1

ototsuyume 2015-03-19 22:31 1 票支持; 0 票反对

先声明一下,这不是一门入门课程,一点cs背景的人可以无视掉。

这门课跟大部分mooc的入门课程不同,从slide和project来看是uiuc的cs425 Distributed Systems(https://courses.engr.illinois.edu/cs425/fa2014/lectures.html)相当原汁原味的版本,换而言之就是一门大三大四甚至是研一的课程。课程分为两部分,第一部分重点是p2p,在第一周简单介绍了一下cloud computing的一些热点、概念和mapreduce后,第二周讲解的gossip protocol,第三周介绍了几个经典的p2p system,第四周介绍的cassandra也是经典的p2p kv database,第五周再讲解了几个经典的分布式算法。总而言之,讲解的虽然简略但其实精髓都介绍到,一些细节需要自己搜索维基百科和论文来看。作业设计的都不错,难度都有但其实消化好了不在话下,能把作业做好对课程的理解非常的大。

要说缺点就是paxos讲解的太简单,作为分布式系统中最重要的一个协议(没有之一),lamport给这个协议写了好几篇论文来解释,而后来也一直有其他学者做改进,但这门课只是对paxos做了非常简单的介绍。另一个缺点就是project是实现gossip membership协议,给出的程序有点坑爹,输出的地方有个溢出会覆盖掉一个变量导致输出的log被覆盖,而且说实在话现在业界的体系都是centralize的居多,p2p由于维护和开发都比较麻烦所以实际应用的比较少,从这点来看这个project才意义并不是十分大。

另外顺带推荐一下mit的6.824 distributed system(http://nil.csail.mit.edu/6.824/2015/),跟这门课程相比,mit的几乎是没有理论的讲解,全部都是根据各种system的论文来讲解,这其实是一个非常不错的切入点,毕竟这是一个非常工程化的方向,不过还是建议配合coursera的两门cloud computing一起食用会更佳。这门课的亮点是project采用了go作为开发语言,有人形容go是分布式时代c语言,用go来做项目可是令你省去一些细节上的理解。而这门课的project也是实打实的有意思,分别是实现mapreduce、paxos和kv store,在完成这些project的过程中遇到的那些问题很有可能就是你以后在实际开发distributed system中遇到的问题,https://github.com/ototsuyume/mit-6.824-distributed-system-2014spring这个是我完成的代码。

再吐槽一下,课程论坛上有一个讨论帖很热,大意就是对这门课程不满,那个楼主的理由大致是:
1、slide有拼写错误
2、老师有口音
3、太过理论,跟云计算没什么关系
4、作业居然用C++,为什么不是python,python是地球上最好的语言
5、太难,老师讲解是一带而过,跟作业的难度完全不相符。mooc应该是任何人都能学懂的
6、uiuc是野鸡大学,这门课没什么价值
第一二点其实没什么好吐槽的。第三四五点值得一战,而在那个楼主跟一群人战的时候他抛出了第六点的言论,下面立刻有人泪有满面:usnews上面cs排第五仅次于四大牛校的cmu/stanford/berkeley/mit的uiuc都算野鸡大学了,我们这种在自己国家都排不上号的大学算什么...

Step forward in 2017: Build in-demand career skills with Coursera

课程简介

Learn core distributed computing concepts that underlie today’s and tomorrow’s cloud computing systems.

课程标签

云计算 分布式计算

12人关注该课程

主题相关的课程