lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martijn van Groningen (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (LUCENE-3097) Post grouping faceting
Date Sun, 22 May 2011 18:52:47 GMT

     [ https://issues.apache.org/jira/browse/LUCENE-3097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Martijn van Groningen updated LUCENE-3097:
------------------------------------------

    Attachment: LUCENE-3097.patch

Attached an initial patch with a collector that collects the most relevant documents for each
group that match the query.

This collector can be used to create facets based on grouped counts. Actually the collector
has many implementations for different situations. For example when the group sort within
the groups is only score or fields. There is a general implementation that works for all sorts
(e.g. a function).

Just as in the caching collector there is a factory method that selects the most efficient
collector based on the group sort.

TODO:
* Add tests
* Clean up code / jdoc

Feedback welcome!

> Post grouping faceting
> ----------------------
>
>                 Key: LUCENE-3097
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3097
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: modules/grouping
>            Reporter: Martijn van Groningen
>            Assignee: Martijn van Groningen
>            Priority: Minor
>             Fix For: 3.2, 4.0
>
>         Attachments: LUCENE-3097.patch
>
>
> This issues focuses on implementing post grouping faceting.
> * How to handle multivalued fields. What field value to show with the facet.
> * Where the facet counts should be based on
> ** Facet counts can be based on the normal documents. Ungrouped counts. 
> ** Facet counts can be based on the groups. Grouped counts.
> ** Facet counts can be based on the combination of group value and facet value. Matrix
counts.   
> And properly more implementation options.
> The first two methods are implemented in the SOLR-236 patch. For the first option it
calculates a DocSet based on the individual documents from the query result. For the second
option it calculates a DocSet for all the most relevant documents of a group. Once the DocSet
is computed the FacetComponent and StatsComponent use one the DocSet to create facets and
statistics.  
> This last one is a bit more complex. I think it is best explained with an example. Lets
say we search on travel offers:
> |||hotel||departure_airport||duration||
> |Hotel a|AMS|5
> |Hotel a|DUS|10
> |Hotel b|AMS|5
> |Hotel b|AMS|10
> If we group by hotel and have a facet for airport. Most end users expect (according to
my experience off course) the following airport facet:
> AMS: 2
> DUS: 1
> The above result can't be achieved by the first two methods. You either get counts AMS:3
and DUS:1 or 1 for both airports.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message