Hi,
On 17 Sep., 20:59, "Marzia Niccolai" <[EMAIL PROTECTED]> wrote:
> The section on big entities and exploding indexes describes how
> ListProperties are indexed quiet well:
>
> http://code.google.com/appengine/docs/datastore/queriesandindexes.htm...
>
> In summary:
> Properties with multiple values, such as using a
> list<http://code.google.com/appengine/docs/datastore/typesandpropertyclass...>value
> or a
> ListProperty<http://code.google.com/appengine/docs/datastore/typesandpropertyclass...>model,
> store each value as a separate entry in an index.
>
> You might want to watch 'Under the Covers of the App Engine Datastore' for a
> more in depth explanation of querying and
> indexes:http://sites.google.com/site/io/under-the-covers-of-the-google-app-en...
Actually, I had watched that video before I asked this question and it
made me wonder whether that merge-join case was about list properties.
IOW, will this code:
MyModel.all().filter('my_list =', 'a').filter('my_list =', 'b')
run two separate queries and then try to find the intersection or did
you implement some optimization? If not, the worst-case scenario would
be that each query matches 1000000 entities, but they only have 1 in
common. Finding this single entity that matches both queries would be
insanely inefficient. So, should we rather stay away from matching
multiple items within list properties?
Bye,
Waldemar Kornewald
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---