good thread! i can address this in at least some detail now. more importantly, we expect to gradually provide more and more information about these kinds of questions. in particular, expect to hear more at google i/o in may. (i'm giving an entire talk on this very topic. :P)
http://code.google.com/events/io/ at a high level, all data stored with your App Engine application is replicated across multiple disks and geographical locations. your application is also hosted in multiple geographical locations, but usually only served from a single location at any given time. In the future we'd like to give developers more control over this. as for the datastore, and all other current stored data APIs like memcache, there is a single, global view of data. we go to great lengths to ensure that these APIs are strongly consistent. in other words, once you've written data with e.g. a datastore put() or delete(), it is immediately visible to all requests, for all users, as soon as that call completes successfully. that includes the same request that made the call, as well as other requests, regardless of geographic location. similarly, concurrent writes or transactions will *never* unexpectedly overwrite or collide with each other, regardless of where the user is located or where the request is served from. this is what we mean when we say in the docs that the datastore is strongly consistent: http://code.google.com/appengine/docs/python/datastore/overview.html http://code.google.com/appengine/docs/whatisgoogleappengine.html we view this as a significant differentiating factor vs. similar systems, like amazon simpledb, that are eventually consistent. > I'd also suspect you won't get a definitive answer for how things are > laid out under-the-covers from Google, because they need to keep their > implementation options open. good point! we do expect to keep our implementation options open, largely by describing the behavior you can expect from the serving stack and the various APIs, and only guaranteeing that that behavior won't change. having said that, we're actually working hard to write articles, give talks, and otherwise describe in detail how things work under the covers. if you're interested in the datastore, for example, take a look at the talk i gave at last year's i/o: http://sites.google.com/site/io/under-the-covers-of-the-google-app-engine-datastore --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---
