I agree, I'm definitely not happy with the multiple indices. Not to mention I quickly ran into the exploding index problem. I just watched the Google I/O video about the Next Gen queries, and it looks like the issues will be solved in an upcoming release...hopefully that happens soon. It looks like we will have the ability to apply multiple equality filters on the same property and only need the one index.
Thanks, Chris. On Sep 24, 2:37 pm, chrisfarms <[email protected]> wrote: > I would let the datastore return the "OR" query and then perform the > union in my application code. > > If I thought the OR was going to return a huge number of results (too > large to practically process in a single request) I would start a task- > queue task to fetch the data and then have my front-end check back for > the results later. > > personally I think your mega indicies feel a little dirty... but who > am I to judge :) > > On Sep 23, 7:56 pm, jorge <[email protected]> wrote: > > > > > It seems to me the only way to perform an AND query on a list property > > (StringListProperty, for example) to match EVERY item in a list is to > > define multiple indexes and use an equality filter (IN doesn't work in > > this case because it performs an OR operation). For example, I'd like > > my users to be able to perform keyword searches where I return items > > that match all of their keywords. This resulted in me having to do > > the following: > > > - kind: InventoryItem > > properties: > > - name: in_stock > > - name: keywords > > - name: display_order > > > - kind: InventoryItem > > properties: > > - name: in_stock > > - name: keywords > > - name: keywords > > - name: display_order > > > - kind: InventoryItem > > properties: > > - name: in_stock > > - name: keywords > > - name: keywords > > - name: keywords > > - name: display_order > > > ...and so on. This gets a little ugly, and I'm not sure if this is > > the recommended way to do this, but it's the only way I have been able > > to get to work. Of course, I don't know up front how many keywords my > > users are going to use. There is a generous index quota limit and > > from the documentation it seems I can do up to 30 filters? I doubt > > anyone would use that many keywords in a search, I could probably > > safely stop at 10 indexes. > > > Before I go down this path, I want to make sure there isn't another > > (better?) option available to me. > > > TIA -- 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.
