Cloud Computing Fundamentals and Technologies

October, 17-18th, 2009

Lecturers

  • Yang Zhenkun, Senior Scientist, Baidu Inc., Beijing, China
  • Greg Malewicz, Senior Engineer, Google Inc., Mountain View, CA, USA
TA: Kang Chen, Tsinghua University (chenkang@gmail.com)
TA: Wentao Han, Tsinghua University (wentao.han@gmail.com)

Program

Classroom: 2-D03(underground), FIT Building, Tsinghua University
Course time: 10:00-13:00, 14:00-17:00
  • Oct 17 morning, Zhenkun gives the lecture.
  • Oct 17 afternoon, Lab for Zhenkun's lecture.
  • Oct 18 morning, Greg give the lecture
  • Oct 18 afternoon, lab for Greg's lecture
  • Oct 19-31, lab for both lectures

Objective

Datacenters composed of thousands of computers have emerged as a significant medium for computing. Many companies, including Amazon, Baidu, Google, Microsoft, and Yahoo!, have been investing heavily into research and development of fault-tolerant and scalable systems that make it simpler to store and process large amounts of data within datacenters. Students participating in the course will be exposed to modern technologies for computing on datacenters and fundamental principles behind the technologies.

Prerequisites

Course outline

  • Storage, 3-4 hours
    • Commodity machine based bulk data storage system
    • Data mutation and consistency model
    • Fault tolerance
    • Garbage collection
    • Checkpointing and snapshot
    • Homework: implement a 5-worker-machine distributed system with asynchronous data appending and reading feature so that the failure of one or two worker machines is transparent to applications
  • Processing, 3-4 hours
    • Synchronous computing theory, algorithms and lower bounds
    • Bulk Synchronous Parallel Model for graphs, called Pregel, and its API
    • Examples of graph algorithms expressed in Pregel
    • Implementation of Pregel and its fault-tolerance
    • Homework: implement a multithreaded single-machine BPS

References

  • Ghemawat, S., Gobioff, H., Leung, S.: The Google File System. 19th ACM Symposium on Operating Systems Principles, (2003) 29-43 [pdf]
  • Malewicz, G., Austern, M. H., Bik, A. J., Dehnert, J. C., Horn, I., Leiser, N., and Czajkowski, G.: Pregel: A System for Large-Scale Graph Processing. 28th ACM Symposium on Principles of Distributed Computing, (2009) 6 [pdf]
  • Organization and Maintenance of Large Ordered Indices, R.Bayer and E McCreight (1970) [pdf]
  • Lock-free linked lists using compare-and-swap, John D. Valois (1995) [pdf]
High Performance Computing Institute, Department of Computer Science and Techonology, Tsinghua University
2009 Copyright Reserved.