CS5224 Cloud Computing - 2019/20
Semester 2
(updated: 6 January 2020)
L00: Overview
· Learning Objectives
· What we cover?
· Course Schedule & Webpage
· Main Text
· Module Assessment
Books
1. Cloud Computing: Concepts, Technology and Architecture, Thomas Erl, Zaigham Mahmood and Ricardo Puttini, Prentice-Hall, 2013. [CTA]
2. The Datacenter as a Computer – Designing Warehouse-Scale Machines, 3rd edition, Morgan & Claypool Publishers, 2019 (available online). [DC]
PART A: Principles of Cloud Computing
L01: Introduction [CTA-chapter 3, DC – chapter 1]
· Three Eras of Computing
· What and Why
· Cost Model
· History
· Key Business Drivers
· Basic Concepts & Terminology
· Technical and Non-Technical Challenges
· Summary
References
1. Above the Clouds: A Berkeley View of Cloud Computing, 2009.
2. The NIST Definition of Cloud Computing, NIST Report, 2011.
L02: Concepts and Models [CTA – chapter 4]
· NIST Definition
· Cloud Characteristics
· Cloud Service (Delivery) Models
· Conceptual Reference Architecture
· Cloud Deployment Models
· Summary
References
1. NIST Cloud Computing Reference Architecture, NIST Report, 2011.
L03: Cloud Architecture [CTA – chapter 11]
· Purpose
· How to organize (partition) resources?
· How to operate/manage resources to meet certain objectives?
· Summary
L04: IBM Cloud Services (PaaS, SaaS)
· Objective
· Organization of Global Cloud Datacenters
· IBM Cloud Services and High-level Architecture
· Examples
1. PaaS: Developing a Web Application
2. SaaS: IBM Watson Analytics & Example
3. SaaS: Analytics using Db2 Database Service, R Script and Visualization
· Summary
References
2.
Demo: Getting
Started with Node.js
on Bluemix 2014- https://www.youtube.com/watch?v=sHhNoV-sS_I&list=PLJxa6IsF8C5qFbRinR2ZaEZ3AiIFtdLqx
(13 mins)
3.
IBM Bluemix The Cloud Platform for Creating
and Delivering Applications, IBM Redbooks, 2015.
4.
Bluemix users: https://www.ibm.com/cloud-computing/bluemix/case-studies
5.
Watson SDK
help: https://github.com/watson-developer-cloud/node-sdk
6.
Watson
startup guide: https://console.bluemix.net/docs/services/watson/developing-nodejs.html#developing-a-watson-application-in-node-js
7.
IBM dashDB:
8. http://www-01.ibm.com/support/knowledgecenter/SS6NHC/com.ibm.swg.im.dashdb.kc.doc/welcome.html
9.
SQL Query: http://www.w3schools.com/sql/
10.
R Language: http://cran.r-project.org/doc/manuals/r-release/R-intro.html
11.
Plotting: http://docs.ggplot2.org/current
12.
IBM DSX
Getting Started Guide: https://datascience.ibm.com/docs/content/getting-started/get-started.html
13.
IBM DSX
Tutorials: https://github.com/IBMDataScience/dsx-tutorials
14.
IBM Watson How
it Works – 2015 - https://www.youtube.com/watch?v=_Xcmh1LQB9I
15.
IBM Watson
Personality Insights : demo and tools - https://personality-insights-demo.ng.bluemix.net/
Lab01: IBM Cloud Services (PaaS, SaaS)
· Objective
· IBM Cloud
· Examples
1. PaaS: Web Application to Query in-Cloud Database
2. SaaS: Web Application with Watson Personality Insights Service
3. SaaS: Analytics with Simple SQL, R Scripting and Visualization
I. Querying with SQL Scripting
II. Analytics with R Scription
· Summary
References
2.
Demo: Getting
Started with Node.js
on Bluemix 2014- https://www.youtube.com/watch?v=sHhNoV-sS_I&list=PLJxa6IsF8C5qFbRinR2ZaEZ3AiIFtdLqx
(13 mins)
3.
IBM Bluemix The Cloud Platform for Creating
and Delivering Applications, IBM Redbooks, 2015.
4.
Bluemix users: https://www.ibm.com/cloud-computing/bluemix/case-studies
5.
Watson SDK
help: https://github.com/watson-developer-cloud/node-sdk
6.
Watson
startup guide: https://console.bluemix.net/docs/services/watson/developing-nodejs.html#developing-a-watson-application-in-node-js
7.
IBM dashDB:
8. http://www-01.ibm.com/support/knowledgecenter/SS6NHC/com.ibm.swg.im.dashdb.kc.doc/welcome.html
9.
SQL Query: http://www.w3schools.com/sql/
10.
R Language: http://cran.r-project.org/doc/manuals/r-release/R-intro.html
11.
Plotting: http://docs.ggplot2.org/current
12.
IBM DSX
Getting Started Guide: https://datascience.ibm.com/docs/content/getting-started/get-started.html
13. IBM DSX Tutorials: https://github.com/IBMDataScience/dsx-tutorials
PART B: Technologies behind Cloud Computing
L05: Resource Hosting and Datacenter [CTA – chapter 5 and Appendix D, DC – chapters 1 & 4]
· Resource Hosting
· Main Components in a Datacenter
· Datacenter Tiers
· Energy Usage and Power Efficiency
· Summary
References
1. Efficiency: How we do it, Google Datacenters, July 2017.
2. Data Centres Shine Amid Property Gloom, Straits Times, Jan 12, 2016.
3. Building Data Centres at Sea An Idea Worth Floating, Straits Times, May 2017.
L05S: Datacenter at the School of Computing
· Objective
· SoC Datacenters: CR1 and CR2
· Unix and Windows Servers
· Others
· Safety during Tour
L06: Virtualization and Multitenancy
·
Types of
Virtualization
·
Approaches
to Virtualization
·
Types of
Hypervisors
·
Containers
·
Multitenancy
·
Virtualization
and Cloud Service Delivery Models
·
Summary
PART C: Applications & Programming
L07: Applications & Paradigms
· Cloud Applications
· Common Features
· Applications
· Challenges in Developing Applications
· Architectural Styles – Web Services
· Application Development Models
· IaaS, PaaS and SaaS
· MapReduce Programming Model
· Example: Word Count
· Hadoop
· Summary
References
1.
REST in
the cloud: A primer on RESTful APIs in the cloud
(https://www.ibm.com/developerworks/cloud/library/cl-RESTfulAPIsincloud/index.html)
2.
MapReduce:
simplified data processing on large clusters
(https://research.google.com/archive/mapreduce-osdi04.pdf)
3.
Apache
Hadoop: http://hadoop.apache.org
4.
The
Hadoop distributed file system (http://storageconference.us/2010/Papers/MSST/Shvachko.pdf)
Exercise - L07s: Setting up a SaaS, PaaS and IaaS Blog on Bluemix
L08: Amazon Web Services (IaaS, PaaS, SaaS, FaaS)
§ Objectives
§ Main EC2 Steps
§ Main steps for Amazon EMR
§ Summary
References
1. AWS EC2 - https://www.youtube.com/watch?v=TsRBftzZsQo (4 min)
2. AWS S3 - https://www.youtube.com/watch?v=Yyraql9A_Rc (7 min)
3. AWS EMR - https://www.youtube.com/watch?v=Hhj3fOdt7zo (10 min)
4. https://aws.amazon.com/getting-started/tutorials/launch-a-wordpress-website/
5. http://searchaws.techtarget.com/definition/Amazon-Elastic-MapReduce-Amazon-EMR
6. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance_linux.html
7. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-connect-to-instance-linux.html
8. http://wiki.apache.org/hadoop/AmazonEC2?action=recall&rev=10
9. http://wiki.apache.org/hadoop/AmazonEC2
10. https://portal.futuresystems.org/manual/hadoop-wordcount
Lab02: Amazon Web Services (IaaS, PaaS, SaaS, FaaS)
§ Objective
§ Main EC2 steps
§ Main steps for Amazon EMR
§ Summary
References
1. https://aws.amazon.com/getting-started/tutorials/launch-a-wordpress-website/
2. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance_linux.html
3. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-connect-to-instance-linux.html
4. http://wiki.apache.org/hadoop/AmazonEC2?action=recall&rev=10
5. http://wiki.apache.org/hadoop/AmazonEC2
6. https://portal.futuresystems.org/manual/hadoop-wordcount
L09: Examples of IaaS, PaaS and SaaS
·
K-Means
Clustering using Elastic MapReduce (IaaS, PaaS)
References
1. http://cmj4.web.rice.edu/MapRedKMeans.html
2. http://www.kau.edu.sa/GetFile.aspx?id=187901&Lng=ar&fn=k-mean-clustering.ppt
3. http://en.wikipedia.org/wiki/K-means_clustering
4. http://aws.amazon.com/elasticmapreduce/
·
Building
a Video-Sharing SaaS Cloud Application
§ Objective
§ Design of Application
§ Performance and Scaling
§ Pricing
§ Summary
References
1. How AWS Pricing Works, July 2014.
L10: Cloud Software Development
·
Learning
Objectives
·
Different
Perspectives of SaaS Development
§
SaaS
from Managed Infrastructure and Platform
§
SaaS
from IaaS and Managed Platform
§
SaaS
from Managed Infrastructure and PaaS
§
SaaS
from IaaS and SaaS
·
Cloud-aware
Software Development using PaaS
§
Requirement
Analysis
§
Multitenant
Architecture
§
Scalable
and Available Architecture
§
Database
Design
§
SaaS
Development
§
Monitoring
and SLA Maintenance
·
Summary
PART C: Cloud Management
L11: Pricing Models and Modeling TCO [CTA chapter 15, DC – chapter 6]
§ Pricing Models: Integrated and Separate
§ Cost Metrics
§ Total Cost of Ownership
§ Summary
References
1. How AWS Pricing Works, Amazon, 2012.
2. The Total Cost of (Non) Ownership of Web Applications in the Cloud, Jinesh Varia, August 2012.
L10: Summary and Open Issues
§ Review of Topics Covered
§ Revisit of Learning Objective
§ Open Issues
§ Cloud Computing and Beyond
References
1. Cloud Computing Synopsis and Recommendations (Open Issues), NIST Report, May 2012.
2. Challenges and Opportunities with Big Data, Computing Community Consortium, Feb 2012.
3. Big Data Computing and Clouds: Trends and Future Directions, Journal of Parallel & Distributed Computing, 79-80 (2015), 3-15.
Books
1. Cloud Computing: Concepts, Technology and Architecture, Thomas Erl, Zaigham Mahmood and Ricardo Puttini, Prentice-Hall, 2013. [CTA]
2. The Datacenter as a Computer – Designing Warehouse-Scale Machines, 3rd edition, Morgan & Claypool Publishers, 2019 (available online). [DC]