After reading these two articles: Avoiding datastore contention: http://code.google.com/appengine/articles/scaling/contention.html Sharding counters: http://code.google.com/appengine/articles/sharding_counters.html
I'm a little confused at to what causes datastore contention, and how to design around this. The Avoiding datastore contention article states that datastore contention "occurs when a single entity or entity group is updated too rapidly". Yet the Sharding counters article seems to suggest that you can rapidly update entities of the same kind (and hence entity group), as long as they have different key names. Which it is? For example, if I am expecting 100 comments/second to an article I've written (let's assume I'm a really good writer), and the Comment class is its own entity group, can I safely put() all comments into the datastore as they arrive using this Comment class, or am I better off sharding them into separate classes (eg. Comment1, Comment2, ..., CommentN) so that the comments are distributed across N entity groups? -- 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.
