Google App Engine 1.6.5 released
New projection query for Google’s web-PaaS as well as improvements to APIs makes this release an important one for the Java supported project
Google’s attempt at creating a web platform-as-a-service has received its fourth update for the year, bang on schedule with the release of Google App Engine 1.6.5.
The team have been beavering away during April and their work looks to have paid off. Attention has been focused on improving App Engine’s Datastore with an experimental type of query, projection queries, which allows the user to specify whether they want an entire entity object or just a few properties of it. Crucially this means lower latency and cost (like keys-only queries), but also lets you return only the properties you need. Trimming the fat if you will.
Projection queries are similar to SQL queries of the form:
SELECT name, email, phone, FROM CUSTOMER
where only the name, email, and phone properties are returned. There are still some limitations around this new querying method (for example you can only project indexed properties and never project the same one twice) but it’s a good start nonetheless.
Each entity group now has a numeric version property that strictly increases on every entity group change, allowing you to easy cache the results of an ancestor query. The Datastore Admin backup has been renovated too. Now you can restore individual Kinds from an existing backup, abort in-progress backups, and view more detailed backup and restore information.
Additional request headers such as Region, City and LatLng provide more
detailed information about the origin of a request. Finally for
is now required in
omitting it will cause an error in the dev appserver, which is a
Further details can be found within the official announcement on the GAE blog. Google App Engine is supported officially by Java, Python and Google Go, although a bit of searching will lead you to other language extensions. As ever, send feedback via the Google Group or for technical questions on Stack Overflow.