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
-~----------~----~----~----~------~----~------~--~---

Reply via email to