Hi all, Before diving in, I am trying to model a test application which will benefit from GAE scalability.
1. My app will "potentially" have to handle "millions" of customer accounts. 2. Data in each customer account is 100% independent. 3. Each customer account will have to handle potentially "thousands" of users. 4. Apart from general settings, the bulk of each user's data will be stored by calendar year. 5. User data within each year may have a different schema (as the app evolves). 6. User data from old years is locked and eventually deleted after five years. 7. Transaction isolation is only required for an individual user's data in a given year. A logical class hierarchy would look something like this: Accounts -->Users ---->Years ------>UserDataSchema Yet, according to GAE documentation, this is one big humongous Entity Group (with Accounts at the root) which would fall over on itself as local copies are maintained and transaction isolation is enforced. The GAE documentation suggests that I store a single user's worth of data (or less) in an entity group. But how can I re-structure my model to achieve this. Surely it should be possible to specify an entity group (for transaction isolation purposes) to be at any node in my hierarchy, not just the root node. I'm sure there is an obvious explanation but I can't seem to find it (I come from an RDBMS background). And I am loathe to start experimenting until I get this basic concept right in my head. Thanks to anyone who can clear this up for me. -- 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.
