Cloud computing is defined as computing resources and application services delivered over networks from massive collections of servers and storage devices. It is a model that enables on-demand access to a shared pool of configurable computing resources like networks, servers, storage and applications. Cloud computing provides five essential characteristics: virtualization, multi-tenancy, real-time provisioning, pay-per-use, and delivery of computing as a service. It discusses cloud computing infrastructure, developer tools, and the impact on the consulting industry. It also provides a demo of the Apache Hadoop MapReduce framework.