This document defines cloud computing and compares it to grid computing. It outlines cloud computing architectures including service models (SaaS, PaaS, IaaS) and deployment models (public, private, hybrid, community). The benefits of cloud computing are almost zero upfront costs, usage-based pricing, and automatic scaling. Google Apps is used as an example of cloud computing services including email, chat and the Google App Engine platform. Key differences between grid and cloud computing are their business models, architectures, and applications. Grid computing focuses on scientific problems using HPC resources, while cloud computing runs varying applications with elastic resource demands.