lucene-solr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Greg Ludington" <>
Subject Re: [jira] Commented: (SOLR-44) Basic Facet Count support
Date Wed, 30 Aug 2006 20:20:23 GMT
> I'd like to get some feedback on the overall appraoch and params before i proceed too
much farther.

These comments are probably just confusion since the approach differs
from my home-grown faceting prototype, and my dev box is on a moving
truck right now, so I cannot try the patch, so please bear with me:

1) Should grouping of facets also be parameter-based?   Say, for
instance, I want to have multiple different ways to look into my
result set:

By Price (<$100, $100-$200, $200+)
By Manufactuerer (Apple, Dell, HP, SONY)
By Status: (In Stock, Out of Stock)

I assume the first two would be 4 facetQuery params each, and the
third would be a single facetField, can the output format represent
these sorts of logical groupings, or should it be solely the client's
responsibility to parse and split?

2) If facets can be returned in such a logical grouping, it might also
be worthwhile to allow an optional sort order for the facets (e.g.
alphabetically, by count, etc).  While the client can certainly sort,
if there is a facet limit the client will not be able to sort on the
full set.

3)  We have one running application (not yet on Solr;  that is my
prototype :) ) where the boundaries on range-based facets are
calculated to achieve equal distribution among a known number of
facets.  (This is like facetField, except for ranges, not terms.)

4) Would it be possible to extend the types of facets?  Because,
admittedly, #3 is an application-specific case, I would not expect
some general-purpose solution to it.  However, when confronted with
such a need, it would be nice to be able to plug in a new facet
impementation type for a given facet without having to change Solr
internals and/or create and maintain nearly exact duplicates of
existing request handlers.  (In my prototype, I had the concept of a
Facet interface, which allows this, but in other respects is far less
flexible than what you have outlined.)


View raw message