With the announcement of Google App Engine, the final piece for the Cloud Software revolution is now in place. I’m excited to see how Cloud Software will foster innovation at large and especially around MindTouch Deki Wiki. Let me quickly explain what element of the cloud ecosystem Google App Engine is now filling.
The chart on the right shows the three building blocks for Cloud Software: storage, engine, and processing.
Amazon has been the early pioneer with its Simple Storage Service (S3), which offers cheap, large scale storage in the cloud. Others have since followed suit and the cloud storage model has been evolving from binary data (S3) to messages (Amazon Simple Queue Service) to structured data (Amazon SimpleDB, Google BigTable). These services enable others to store and handle large volumes of data on demand and at incremental cost. However storage services do not provide behavior around data: information is simply retrieved, updated, and deleted. That’s it. Nonetheless, without this foundation, Cloud Software would not be happening today.
Google is the first company to provide a scalable request-driven application engine. Google App Engine (GAE) is perfect for creating web-services and application front-ends, which constitute the large majority of online destinations. However, Google App Engine has its limitations. For instance, it is not possible to create your own crawler or web-analyzer, as this class of software requires something that Google App Engine lacks: processing power. On the flip-side, with a request-driven model, the application only consumes resources when needed and therefore cost is linear to use.
Amazon Elastic Compute Cloud (EC2) fills the need that Google App Engine lacks: autonomous processing power. Since EC2 provides full-fledged servers, these can be used to crawl content, compress video, and analyze vast amounts of data. Multiple EC2 instances can be launched for distributed computing using Hadoop map-reduce algorithms to crunch through data in record time. However, with EC2, you pay for processing power even when you’re not using it, hence the need for Google App Engine.
For MindTouch customers and community, it’s probably obvious why I’m excited about this. Cloud Software is the model that we have embraced with Deki Wiki, which is a true web-oriented application integration platform. Already today, Deki Wiki provides the ability to store file attachments on Amazon S3 regardless if you host it online or behind the firewall. Furthermore, MindTouch provides an Amazon Machine Image (AMI) of Deki Wiki that launches a new instance in seconds. The image is pre-configured with all prerequisites installed and can even update itself when needed. Since Deki Wiki crawls and indexes content autonomously, it needs a full processing environment such as EC2. Finally, Deki Wiki extensions are web-services that are equally at home on an intranet or the internet. Since extensions only rely on XML and HTTP, they are completely platform agnostic (meaning, you can chose your favorite programming language). Google App Engine is the perfect environment to host Deki Wiki extensions and as the service gets rolled out to more developers, MindTouch will make sure to provide the tools to easily add new functionality to Deki Wiki using Google App Engine.
The sun is quickly rising on Cloud Software and I can’t wait to see the opportunities it will bring to our customers and our community!