This is an online course which utilizes the Online Learning Initiative.
Course Links
- Carnegie Mellon Blackboard Portal: http://blackboard.andrew.cmu.edu
- Online Learning Initiative Web Portal: http://oli.cmu.edu
- Piazza: https://piazza.com/cmu/fall2014/1531915619/home
- Amazon Web Services: http://aws.amazon.com/
Course Overview
Title: Cloud Computing
Description:This on-line course gives students an overview of the field of Cloud Computing, its enabling technologies, main building blocks, and hands-on experience through 4 projects utilizing a public cloud (Amazon Web Services). Cloud computing services are being adopted widely across a variety of organizations and in many domains. Simply, cloud computing is the delivery of computing as a service over a network, whereby distributed resources are rented, rather than owned, by an end user as a utility.
The course will introduce this domain and cover the topics of data centers, virtualization, cloud storage, and programming models. As an introduction, we will discuss the motivating factors, benefits, challenges, and service models. Modern data centers enable many of the economic and technological benefits of the cloud paradigm; hence, we will describe several concepts behind data center design and management. Next, we will focus on virtualization as a key cloud technique for offering software, computation and storage services. We will study how CPU, memory and I/O resources are virtualized, with examples from Xen and VMWare, and present real use cases such as Amazon EC2. Subsequently, students will learn about different cloud storage concepts including data distribution, durability, consistency and redundancy. HDFS, PVFS, HBASE, Cassandra and S3 will be presented as case studies. Students will understand the details of the MapReduce programming model and gain a broad overview of alternative programming models such as Pregel, and GraphLab.
Students will work with Amazon Web Services, use them to rent and provision compute resources and then program and deploy applications that run on these resources. In addition, students will work with cloud storage systems and learn to develop applications in the MapReduce programming paradigm. The 15-619 students will have to complete an extra project which entails designing and implementing a complete web-service solution for querying big data. For the extra project, the students are evaluated based on the cost and performance of their web services.
Units: 15-319: 9 units; 15-619: 12 units.
Pre-requisites: A āCā or better in 15-213, Knowledge in Java programming.
Logistics
Teaching Staff:
Prof. Majd F. Sakr msakr@cs.cmu.edu, GHC 7006, x8-1161 Office hours: Tuesday, 3-4pm (Pittsburgh)
Teaching Assistants:
Andi Ni andin@andrew.cmu.edu
Bin Feng bfeng@andrew.cmu.edu
Felipe Faraco fsoaresf@andrew.cmu.edu
Jialiang Lin jialianl@andrew.cmu.edu
Jiang Xue jiangx@andrew.cmu.edu
Jiten Mehta jitenm@andrew.cmu.edu
Junqi Wang junqiw@andrew.cmu.edu
Kasipan Kanniah kkanniah@andrew.cmu.edu
Lina Li linal@andrew.cmu.edu
Lu Qu lqu@andrew.cmu.edu
Lu Zeng luzeng@andrew.cmu.edu
Luning Pan luningp@andrew.cmu.edu
Mrigesh Kalvani mkalvai@andrew.cmu.edu
Preston Lin yuyul@andrew.cmu.edu
Ravi Chandra Bandlamudi Venkata rbandlam@andrew.cmu.edu
Suhail Rehman suhailr@andrew.cmu.edu
Vivek Munagala vpm@andrew.cmu.edu
Xiaokang Zhang xiaokanz@andrew.cmu.edu
Yiqi Wu yiqiw@andrew.cmu.edu
Yishuang Pang yishuanp@andrew.cmu.edu
Yu Wu yuwu1@andrew.cmu.edu
TAs hold office hours in GHC 4122 and 4126, office hours posted on Piazza.
Recitations: Every Tuesday at 8 AM (videotaped) and Thursday at 4:30 PM Pittsburgh in GHC 4307.