lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shai Erera (JIRA)" <>
Subject [jira] [Commented] (LUCENE-4748) Add DrillSideways helper class to Lucene facets module
Date Sun, 03 Feb 2013 18:50:13 GMT


Shai Erera commented on LUCENE-4748:

bq. Now you instantiate DrillSideways, calls .addDrillDown one or more times, then call one
of the search methods.

That's actually very cool!

bq. I think DrillDown ought to have a similar API

I agree! Today DrillDown API is kinda confusing (you even have a nocommit regarding that).
E.g. how should one use DrillDown to construct and AND of ORs. Having DrillDown.add() will
be a great simplification!

Whether DrillDown (and sideways) should have .search(), or .getCollector() (something I've
been thinking about before looking at your 2nd patch) ... I think that .search() looks good.
If needed, we can always add a getCollector() later.

I think it would be good if we can merge DrillDown and Sideways, though not sure how the API
would look like at the moment. So maybe for now we keep them separated. I.e., Sideways requires
heavy jdocs, explaining exactly what it does, and e.g. the multiple FacetArrays allocation,
so if all that we get by merging is the joint .add() logic ... I'd rather keep them separated.

I plan to do a more thorough review tomorrow, but briefly scanning the new patch, this looks
> Add DrillSideways helper class to Lucene facets module
> ------------------------------------------------------
>                 Key: LUCENE-4748
>                 URL:
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>             Fix For: 4.2, 5.0
>         Attachments: LUCENE-4748.patch, LUCENE-4748.patch, LUCENE-4748.patch
> This came out of a discussion on the java-user list with subject
> "Faceted search in OR":
> The basic idea is to count "near misses" during collection, ie
> documents that matched the main query and also all except one of the
> drill down filters.
> Drill sideways makes for a very nice faceted search UI because you
> don't "lose" the facet counts after drilling in.  Eg maybe you do a
> search for "cameras", and you see facets for the manufacturer, so you
> drill into "Nikon".
> With drill sideways, even after drilling down, you'll still get the
> counts for all the other brands, where each count tells you how many
> hits you'd get if you changed to a different manufacturer.
> This becomes more fun if you add further drill-downs, eg maybe I next drill
> down into Resolution=10 megapixels", and then I can see how many 10
> megapixel cameras all other manufacturers, and what other resolutions
> Nikon cameras offer.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message