Hi, > ...typical single entity Datastore fetch times are > less than intercontinental IP packet travel times... > Maybe my assumption that GAE would spin up multiple web processes for > a single app dispersed around the globe is incorrect...
The first doesn't necessarily imply the second. Remember that Datastore is predicated on the assumption that reads will outnumber writes by a huge margin. Google makes a big point about writes being expensive. I also seem to recall reading somewhere here that although a transaction is atomic in the sense that it will, as a whole, happen or not happen, it is NOT guaranteed that a read immediately following the transaction will see the updated data. That sounds a lot like a replication delay to me. So I could be talking completely through my hat, but I'd bet that somewhere there's an authoritative copy of your data (and that the authoritative copy can move around), but that reads are usually coming from local slaved copies, not from the authoritative copy. And taking it a step further, I bet that works at at *least* the entity level, not the application level, so the authoritative copies of your Thingies may be in a completely different place than the authoritative copy of your Whatsits. (Otherwise, I don't think we'd have this entity group transaction business. If the whole authoritative copy were in one place, we'd be able to have much more flexible transactions in terms of what entities we could enroll in them.) 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. FWIW (which may be very little indeed), -- T.J. Crowder tj / crowder software / com Independent Software Engineer, consulting services available On Apr 21, 9:56 pm, javaDinosaur <jonathan...@hotmail.co.uk> wrote: > > I cant find the reference now, but the Datastore (and even memcache I > > beleive) works as a single global 'entity', there is only one. > > I agree that from an API usage perspective the Datastore is a single > global resource but typical single entity Datastore fetch times are > less than intercontinental IP packet travel times which indicates that > an App's web process and its associate data storage are geographically > close. > > Maybe my assumption that GAE would spin up multiple web processes for > a single app dispersed around the globe is incorrect. Perhaps each GAE > app has a semi permanent geographic affinity for web and data tiers > which eliminates the update uncertainty I alluded to in my original > post. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---