6. Cloud computing: definition
“Cloud computing has the potential to create irreversible
changes in how computers are used around the world”
6
7. Cloud computing: definition
“Cloud computing technology’s objective is to move any
application stored on a computer to a remote
location, eliminating all the standard components, including
operating systems and hard drives, which are necessary in
today’s computers and make them accessible online through
a standard browser.”
7
24. So..? Leave it to the experts.
… who have a lot of money to spend to build
large datacenters in different locations of the
globe.
24
25. Benefits/Challenges
Reduce IT infrastructure on the organizations side
Reduce the maintenance of datacenter
Reduce the costs
Energy, air condition
Licenses
Access applications and data “anytime, anywhere”
x Ensure privacy and confidentiality
x Interoperability with existents protocols
x Portability
25
27. What fits in the cloud services?
Elastic capacity: applications to scale
SOA applications: all of them use mainly web services to
communicate
Access anytime and anywhere
High parallelized workflows
27
28. Cloud computing stack
Software as a service
(Finished application: for sales and it
customizable)
Plataform as a service
(Developer plataform that abstracts the
infrastructure OS)
Infrastructure as a service
(Abstract real infrastructure)
28
30. Infrastructure-as-a-Service
Create Virtual Machines on demand
Snapshots
Start/Stop machines
Automatically scale
Pay only the resources that the machine are using
There is an API, you can management the infrastructure
programming or invoking web services
30
33. Storage-as-a-Service
Blobstore: upload blobs/data objects to the cloud
Based on Key, Value concept
Each blobstore can contain several containers/buckets.
They have a Key and the value is a binary blob. The developer
can store information
33
38. Google AppEngine: What is it?
Platform-as-a-Service
Languages: Java and Python
Create Web Applications
Free (to start with)
www.appspot.com
42. Google AppEngine: Datastore
“Bigtable is a distributed storage system for managing
structured data that is designed to scale to a very large size:
petabytes of data across thousands of commodity servers.
Many projects at Google store data in Bigtable, including web
indexing, Google Earth, and Google Finance”
42
45. PubNub
Free service to do notification in real time
Accessible via Web Services
Easy to use for collaborative systems
Check it out: http://www.pubnub.com/console
Free alternatives to deploy locally:
http://www.ape-project.org/
XMPP/Smack
45
48. Jclouds: Multi cloud library
Services:
Computing Service
Blobstore service
Language: Java
Supports several cloud providers for Computing Utility and
Storage
Jclouds.org/github
50. Other services
Computing services: launch machines on demand.
Allocate processing and memory
Grow dynamically
Pay what you use
Networking
Payments
Workflow
… and many others.
50
51. What to do next?
Keywords: Google AppEngine, AWS S3, Dropbox API, Cloud
API
Google AppEngine – SDK (PaaS)
Dropbox API – Storage
Google API – Services
Install your own services (testing)
51
Use cases:Webscale Database needs big table – Map Reduce Programming modelGoogle APIS, sign, interact with Google Apps
Not a relation databaseNo joins, nao ha queries agregadas, hierarquiaefectadapeladistribuiçãopelos dados pordiversasmaquinas.As queries sãofeitasaoindiceData store comoentidades, contem key/values
Muitobomnao se terquepreocupar com alojamento e infrastruturaFalta de queries agragativaspodesermau.Muitobomparaprojectospequenasqueprecisemescalar.