Hi, There is no need to partition your datastore. If you're concerned about performance, don't be - App Engine can handle as much data as you can throw at it. If you're concerned about isolation, you should look into namespaces, as Tim Hoffman suggests.
-Nick Johnson On Sun, Oct 3, 2010 at 10:37 PM, DutrowLLC <[email protected]> wrote: > I chose to partition data between different users by adding a post-fix to > all entity names. So instead of having a "PhoneCall" entity, I had > "PhoneCall_r35wk", with the random sequence "r35wk" corresponding to a > particular user. There could be thousands of "PhoneCall_****" entities, > each with a different name. I figured this would be a good architecture > since user's data would be completely partitioned. Also, I would eliminate > an equality filter for each query (ie: "userId EQUALS 123456") > > It turns out this architecture seems to conflict with another aspect of App > Engine that was seemingly unrelated. And thats the need for adding custom > indexes through the index.yaml file (or executing each query on the dev > server). For a while, I had no need for custom indexes, but recently I had > need to execute this query which seemed to require a custom index: > Pseudo-code: > SELECT * FROM CallRecord_27sjakla > WHERE callerId IN ["703-678-9832", "540-892-2191"] // number is a String > ORDER BY startTime DESC" // startTime is a Long integer > > This problem of needing to manually pre-define custom indexes for entity > names that are not pre-determined could be solved if there was a way for the > application to programmatically add to the index.yaml file (I did not see > documentation for this). However, even in this case, I have concerns that > the index.yaml file would grow to become very big and cause problems with > the application taking too long to initialize. > > Is there another way that I should be handling this situation? Is there > are better way to add these custom indexes? Should I be partitioning user > data differently? > > > > > -- > 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]<google-appengine%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > -- Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 -- 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.
