C H A P T E R 7
■ ■ ■
Using the App Engine Datastore
In the last couple of chapters we have focused on the client side of your application.
You've developed the look and feel using GWT, and the authentication method that
your application will utilize. Now it's time to move on to the server side, primarily
your data integration layer.
In this chapter you'll get a detailed look at the App Engine datastore and you'll
finish up the development of your application. At the end of this chapter you'll have a
completed application that you can deploy to Google App Engine.
Introducing the App Engine Datastore
Designing highly scalable, data-intensive applications can be tricky. If you've ever
used hardware or software load balancing, you know that your users can be
interacting with any one of a dozen or so web and database servers. A user's request
may not be serviced from the same server that handled his previous request. These
servers could be spread out in different data centers or perhaps in different countries,
requiring you to implement processes to keep your data safe, secure, and
synchronized. The hardware and software required to scale your application can also
be complex and expensive, and may even dictate that you outsource or hire
With App Engine, Google takes care of everything for you. The App Engine
datastore provides distribution, replication, and load-balancing services behind the
scenes, freeing you up to focus on implementing your business logic. App Engine's
datastore is powered mainly by two Google services: Bigtable and Google File System
Bigtable is a highly distributed and scalable service for storing and managing
structured data. It was designed to scale to an extremely large size with petabytes of
data across thousands of clustered commodity servers. It is the same service that
Google uses for over 60 of its own projects including web indexing, Google Finance,
and Google Earth.