Cloud computing: highlights
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
604
On Slideshare
604
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
7
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • 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.

Transcript

  • 1. Cloud computing: highlightsLuís Bastião - bastiao@ua.pt
  • 2. Outlines Cloud computing: natural evolution  Stack  Deployment models Services  Blobstore/Datastore  Databases  Notification Systems Frameworks  Google AppEngine  PubNub  Jclouds  AWS 2
  • 3. Overview3
  • 4. Computing paradigm 4
  • 5. Computing paradigm 5
  • 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
  • 8. Clod computing: definition Resources as a Commodity 8
  • 9. Anywhere and anytimehttp://cloudcomputingcompaniesnow.com/ 9
  • 10. 1) No capital expenditures 10
  • 11. 2) Pay only what you need 11
  • 12. 3) Elastic capacity 12
  • 13. 4) Focus on development 13
  • 14. 5) No need to maintain infrastructure 14
  • 15. 6) Redundancy 15
  • 16. 7) Design for failure 16
  • 17. Deployment models 17
  • 18. Increase efficiently 18
  • 19. Increase efficiently 19
  • 20. Increase efficiently 20
  • 21. Increase efficiently 21
  • 22. Increase efficiently 22
  • 23. Cloud computing providers 23
  • 24. So..? Leave it to the experts.… who have a lot of money to spend to buildlarge datacenters in different locations of theglobe. 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 confidentialityx Interoperability with existents protocolsx Portability 25
  • 26. Services26
  • 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
  • 29. Infrastructure-as-a-Service Adding “servers” in a click Run it in just a few minutes, not days 29
  • 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
  • 31. Infrastructure-as-a-Service - Hybrid 31
  • 32. High Level: Platform-as-a-Service Platform-as-a-Service (PaaS)  Storage-as-a-Service  Database-as-a-Service  Notification-as-a-Service 32
  • 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
  • 34. Storage-as-a-Service Providers:  Dropbox API  S3  Google Storage  Azure Storage  Box.net  Rackspace Store 34
  • 35. Databases – Columnar Data Flexible and mutable tables Key/Value structure Providers:  Datastore Google AppEngine  Azure Table  SimpleDB – AWS 35
  • 36. Notification systems Asynchronous message queue HTTP protocol Publish/Subscribe pattern Examples:  Channel API  PubNub 36
  • 37. Frameworks/SDKs37
  • 38. Google AppEngine: What is it? Platform-as-a-Service Languages: Java and Python Create Web Applications Free (to start with) www.appspot.com
  • 39. Google AppEngine: services 39
  • 40. Google AppEngine: Dashboard 40
  • 41. Google AppEngine: Dashboard 41
  • 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
  • 43. Requires a new way of thinking 43
  • 44. Google AppEngine: Channel API Channel API: notification and collaborative environment 44
  • 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
  • 46. PubNub 46
  • 47. Multi cloud frameworks 47
  • 48. Jclouds: Multi cloud library Services:  Computing Service  Blobstore service Language: Java Supports several cloud providers for Computing Utility and Storage Jclouds.org/github
  • 49. Jclouds - blobstoreBlobStoreContext context = new BlobStoreContextFactory().createContext("aws-s3", identity, credential);BlobMap map = context.createBlobMap(”food");Blob blob = map.blobBuilder("sushi.jpg") .payload(new File("sushi.jpg"))// or byte[]. InputStream, etc. .contentDisposition("attachment; filename=sushi.jpg") .contentType("image/jpeg") .calculateMD5().build();map.put(blob.getName(), blob);context.close(); 49
  • 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
  • 52. References http://blog.zenoss.com/2011/08/top-10-presentations-on-cloud- computing/ http://www.slideshare.net/jaapgorjup/cloud-computing-intro-slides http://www.slideshare.net/simon/ive-probably-been-using-google- app-engine-for-a-week-longer-than-you-have http://www.appspot.com http://www.pubnub.com http://aws.amazon.com 52
  • 53. Thanks for yourattention!bastiao@ua.pttwitter.com/luisbastiao53