Creating values for every possible combination is what you're asking
Solr to do at query-time, and as far as I know there isn't really a
way to accomplish that like you're asking. Is the need really to be
arbitrary here?
Erik
On Jan 29, 2010, at 7:25 AM, Peter S wrote:
Hi Erik,
Thanks for your reply. That's an interesting idea doing it at index-
time, and a good idea for known field combinations.
The only thing is........
How to handle arbitrary field combinations? - i.e. to allow the
caller to specify any combination of fields at query-time?
So, yes, the data is available at index-time, but the combination
isn't (short of creating fields for every possible combination).
Peter
From: erik.hatc...@gmail.com
To: solr-user@lucene.apache.org
Subject: Re: Aggregated facet value counts?
Date: Fri, 29 Jan 2010 06:30:27 -0500
When faced with this type of situation where the data is entirely
available at index-time, simply create an aggregated field that glues
the two pieces together, and facet on that.
Erik
On Jan 29, 2010, at 6:16 AM, Peter S wrote:
Hi,
I was wondering if anyone had come across this use case, and if this
type of faceting is possible:
The requirement is to build a query such that an aggregated facet
count of common (and'ed) field values form the basis of each
returned facet count.
For example:
Let's say I have a number of documents in an index with, among
others, the fields 'host' and 'user':
Doc1 host:machine_1 user:user_1
Doc2 host:machine_1 user:user_2
Doc3 host:machine_1 user:user_1
Doc3 host:machine_1 user:user_1
Doc4 host:machine_2 user:user_1
Doc5 host:machine_2 user:user_1
Doc6 host:machine_2 user:user_4
Doc7 host:machine_1 user:user_4
Is it possible to get facets back that would give the count of
documents that have common host AND user values (preferably ordered
- i.e. host then user for this example, so as not to create a
factorial explosion)? Note that the caller wouldn't know what
machine and user values exist, only the field names.
I've tried using facet queries in various ways to see if they could
work for this, but I believe facet queries work on a different plane
than this requirement (narrowing the term count, a.o.t.
aggregating).
For the example above, the desired result would be:
machine_1/user_1 (3)
machine_1/user_2 (1)
machine_1/user_4 (1)
machine_2/user_1 (2)
machine_2/user_4 (1)
Has anyone had a need for this type of faceting and found a way to
achieve it?
Many thanks,
Peter
_________________________________________________________________
We want to hear all your funny, exciting and crazy Hotmail stories.
Tell us now
http://clk.atdmt.com/UKM/go/195013117/direct/01/
_________________________________________________________________
Tell us your greatest, weirdest and funniest Hotmail stories
http://clk.atdmt.com/UKM/go/195013117/direct/01/