34
AN INTRODUCTION TO CLOUD COMPUTING Web, as a Platform…

An Introduction to Cloud Computing

  • Upload
    eli

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

An Introduction to Cloud Computing. Web, as a Platform…. Outline. Web2.0 – The Trends Cloud Computing Issues Applications Q&A. Outline. Web2.0 – The Trends Cloud Computing Issues Applications Q&A. Web 2.0. A transformation of web contents from static to dynamic. - PowerPoint PPT Presentation

Citation preview

Page 1: An Introduction to Cloud Computing

AN INTRODUCTION TO CLOUD COMPUTING

Web, as a Platform…

Page 2: An Introduction to Cloud Computing

Outline Web2.0 – The Trends Cloud Computing Issues Applications Q&A

Page 3: An Introduction to Cloud Computing

Outline Web2.0 – The Trends Cloud Computing Issues Applications Q&A

Page 4: An Introduction to Cloud Computing

Web 2.0 A transformation of web contents from static to

dynamic. Self Publishing / Blogger.com(1999), YouTube(2005) Feeds / RSS(1999), Atom(2003) Tagging / del.icio.us(2003), flickr(2004) Ajax / Gmail(2004), Google Map(2005) Long Tail / Amazon(1994), AdSense(2005) Collaboration / Wikipedia(2001), Google docs(2006) Social / MySpace(2003), Facebook(2004) MicroBlogging / Twitter(2006), Plurk(2008)

Page 5: An Introduction to Cloud Computing

Web 2.0 The Importance is…

Nowadays, PEOPLE DO SPEND MORE TIME ON THE WEB.

Page 6: An Introduction to Cloud Computing

Web as Application Searching Authoring Interaction Social ……

And any mix of above

Page 7: An Introduction to Cloud Computing

So…? What do folks care about?

Availability? Scalability? Efficiency? Consistency? Reliability?

Page 8: An Introduction to Cloud Computing

More Insight in SCALABILITY Why is scalability important?

Server may be down because of overloading.

In ordinary viewpoint, NOT SERVING = USELESS !!!

Page 9: An Introduction to Cloud Computing

Heroku, An Example

Page 10: An Introduction to Cloud Computing

Outline Web2.0 – The Trends Cloud Computing Issues Applications Q&A

Page 11: An Introduction to Cloud Computing

Cloud?

Page 12: An Introduction to Cloud Computing

Cloud Computing The International Workshop on Cloud Computing(2009)

Cloud Computing is defined as a pool of virtualized computer resources. Based on this virtualization the Cloud Computing paradigm allows workloads to be deployed and scaled-out quickly through the rapid provisioning of virtual machines. A Cloud Computing platform supports redundant, self-recovering, highly scalable programming models that allow workloads to recover from many inevitable hardware/software failures and monitoring resource use in real time for providing physical and virtual servers on which the applications can run. A Cloud Computing platform is more than a collection of computer resources because it provides a mechanism to manage those resources. In a Cloud Computing platform software is migrating from the desktop into the "clouds" of the Internet, promising users anytime, anywhere access to their programs and data.

Page 13: An Introduction to Cloud Computing

Cloud Computing(cont.) Wikipedia

Cloud computing is the provision of dynamically scalable and often virtualized resources as a service over the Internet on a utility basis.[1][2] Users need not have knowledge of, expertise in, or control over the technology infrastructure in the "cloud" that supports them. Cloud computing services often provide common business applications online that are accessed from a web browser, while the software and data are stored on the servers. The term cloud is used as a metaphor for the Internet, based on how the Internet is depicted in computer network diagrams and is an abstraction of the underlying infrastructure it conceals.

Page 14: An Introduction to Cloud Computing

Cloud Computing(cont.) SearchCloudComputing.com

Cloud computing is a general term for anything that involves delivering hosted services over the Internet. These services are broadly divided into three categories: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS). The name cloud computing was inspired by the cloud symbol that's often used to represent the Internet in flow charts and diagrams. A cloud service has three distinct characteristics that differentiate it from traditional hosting. It is sold on demand, typically by the minute or the hour; it is elastic -- a user can have as much or as little of a service as they want at any given time; and the service is fully managed by the provider (the consumer needs nothing but a personal computer and Internet access).

Page 15: An Introduction to Cloud Computing

Cloud Computing(cont.)1. Accessible with any device with a

browser2. Focusing on scaling3. Easy to use4. Elastic (use on demand)5. Virtualization

Page 16: An Introduction to Cloud Computing

SaaS, IaaS, PaaS

Software as a Service Search, Amazon, Facebook…

Infrastructure as a Service Amazon EC2, GoGrid, 3tera…

Platform as a Service Google AppEngine, Heroku, Aptana

Page 17: An Introduction to Cloud Computing

To User Data can be stored in the cloud Accessible anywhere Collaboration More powerful and efficient

Page 18: An Introduction to Cloud Computing

To Developer More reliable (distributed) data center More reliable serving Dynamic scalability PaaS

Page 19: An Introduction to Cloud Computing

Outline Web2.0 – The Trends Cloud Computing Issues Applications Q&A

Page 20: An Introduction to Cloud Computing

Issues Scalability Reliability Data Consistency Efficiency

Page 21: An Introduction to Cloud Computing

Scalability Scalability

One cannot predict the number of user correctly

Use on demand

Page 22: An Introduction to Cloud Computing

Reliability The service must be persistent and

robust.

Load Balancing Fault-Tolerant Crash Detection Self-Recovering Ability

Page 23: An Introduction to Cloud Computing

Consistency Data must be consistent anytime.

No corruption, volatility

Error Checking Mechanism Redundancy Locking Mechanism

Page 24: An Introduction to Cloud Computing

Efficiency Cloud leverages computing power to

obtain low latency.

Commodity Hardware Parallelism Efficient Memory Caching Bandwidth

Page 25: An Introduction to Cloud Computing

Outline Web2.0 – The Trends Cloud Computing Issues Applications Q&A

Page 26: An Introduction to Cloud Computing

Applications Google Application

MapReduce : Processing BigTable : Database Management GFS : Storage Chubby : Locking service App Engine : Serving (Now opened !)

Hadoop Open-source Implementation of MapReduce

& GFS

Page 27: An Introduction to Cloud Computing

MapReduce Automatic & efficient parallelization and

distribution Fault-tolerable and robust processing

Page 28: An Introduction to Cloud Computing

BigTable Distributed multi-level sparse map Reliable database management

Fault-tolerant and Persistent Highly scalable Self-load-balancing

Page 29: An Introduction to Cloud Computing

Google File System(GFS) Reliable and efficient data storage. High performance to mutation. File chunks are replicated for backup. Master/Chunk-server mechanism

Page 30: An Introduction to Cloud Computing

Chubby Coarse-grained Locking Service Fault-tolerance file management Paxos consensus Algorithm

Page 31: An Introduction to Cloud Computing

AppEngine IaaS + PaaS Purchase additional resources if needed. High scalability, efficiency, and reliability.

Page 32: An Introduction to Cloud Computing

Cloud Computing To Smart Home?

1. A robust and efficient statistic center and processing center.

2. A stronger monitoring ability.3. More service availability.4. Fault-tolerance mechanism.

5. And more!

Page 33: An Introduction to Cloud Computing

Outline Web2.0 – The Trends Cloud Computing Issues Applications Q&A

Page 34: An Introduction to Cloud Computing

Q & A Any feedback or problems?