Hi Morten, On Thu, Apr 30, 2009 at 2:05 PM, Morten Bek Ditlevsen <morten....@gmail.com> wrote: > I have an application with an entity containing a list of geoboxes for > geographic querying. I currently generate 28 geobox entries in this list. > > Since the list property is being queried along with other properties, this > causes 28 index entries to be updated whenever I update a value that is part > of the index. > > My problem is that now I would like to query additional lists at the same > time - causing my index to 'explode'. > > My question is: are there any recommendations with regards to how many index > entries a single change should cause to be updated?
'As few as possible'. :) Besides the hard limit, every additional index update increases the latency and CPU costs for updating data for that entity type. > > I would like to have (pseudo) full text search of a field and thought of > doing this by adding a list of words to be queried. > If this list is 50 items long I will now have to update 28*50 indexes for > each change, right? That's correct. > > Is that possible at all, or should any kind of exploding index sizes be > avoided? With the numbers you give, yes, it's possible, but 1400 index entries is something you really want to avoid if you can. > > The application is a location based dating service. Right now location > lookups are working ok, but I am wondering whether it is feasible to have > location based lookups paired with text search at all - or if some of my > processing should be in python code instead of done through table queries. I would suggest refactoring. You can make the inverted index for the text a separate entity, or you can do that for the geoboxes, or you can take a Hybrid approach: For example, you could have an entity that stores a top-level approximation of the user's location (eg, Country, State, or whatever is the highest level at which someone will query if they're specifying a geographical bound) in addition to the keywords in order to narrow the search down. -Nick Johnson --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---