Sunday, March 22, 2009

Understanding Cloud Computing: Categories of Services - Part 2

Let’s review.

Companies like Amazon.com, Google, and Salesforce.com are known for offering software solutions to consumers and businesses under a service-based deployment model. This means that the vendor both develops the software and manages the infrastructure to run it, offering customers lower up-front expenses, no capital investment, and the opportunity to scale expenses up or down, based on demand. These are all examples of Software as a Service (SaaS) offerings.

SaaS, it turns out, is a category of cloud computing service. According to a recent article in IEEE Computer, there are four categories of cloud computing services:
  • Services
    • Amazon.com is probably the best known example, here – these are basic technology building blocks like storage, database, and queue services.
    • Usage is billed based on service-specific metrics; for instance, Amazon's S3 storage service costs $0.15/GB of storage per month, plus $0.10/GB transfer in, $0.17/GB transfer out, $0.01/1,000 write operations, $0.01/10,000 read operations, and no minimum charges.
  • Infrastructure as a Service (IaaS)
    • Amazon.com's EC2, or Elastic Compute Cloud, is probably the best known example, here - these are virtual server instances, with full administrative access and the ability to configure network services like firewalls.
    • You can sign up, configure a virtual server (or a farm of servers) that run on Amazon’s infrastructure, use them as-needed, and pay by the hour. Pricing ranges from $0.10 - $1.20 per server per hour, depending on class of server and type of operating system.
  • Platform as a Service (PaaS)
    • Both Salesforce.com and Google offer PaaS solutions, which are cloud-based frameworks that allow developers to build and deliver their own applications.
    • The Google App Engine platform supports application development in the open-source Python programming language; Salesforce.com developed a proprietary programming language for building applications on their Force.com platform.
    • Google App Engine is free, up to published quotas, as long as you don't use Google's Checkout payment service. According to Google, these quotas allow you to "serve a reasonably efficient application around 5 million page views per month, completely free."
    • If you exceed your quotas or use Google Checkout, you are charged usage rates of $0.10/CPU hour, $0.15/GB/month storage, $0.10/GB incoming bandwidth, $0.10/GB outgoing bandwidth, and $0.0001/email message recipient. Google also allows you to configure the platform to not exceed a specified budget amount.
  • Software as a Service (SaaS)
    • Salesforce.com is probably the best known example of SaaS - it is a Customer Relationship Management application, delivered as a service. Google's GMail and Docs are also examples of SaaS. These are full applications, delivered as a service.
    • Most SaaS offerings share the following characteristics:
      • Vendor manages infrastructure and software that can efficiently scale to meet peak usage across clients
      • Vendor allows client IT shops to maintain control using Application Programming Interfaces (APIs) that are based on standards such as SOAP (Simple Object Access Protocol)
      • Vendor implements client by setting up an account. This starts billing at a minimum rate.
      • Billing increases or decreases based on service-specific metrics like the number of user accounts activated, the number of transactions processed, a share of revenue earned, or the number of API calls made.
      • Committing to fixed fee agreements can provide price stability for both client and vendor.
      • Data migration from legacy platforms and integration support are professional services, billed at an hourly or project rate.
We’ll post part three and four shortly to give an in depth look at the benefits and challenges of Cloud Computing.

No comments: