[ https://issues.apache.org/jira/browse/SOLR-5027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13839754#comment-13839754 ]
Trey Grainger commented on SOLR-5027: ------------------------------------- Thinking more about this more, it's probably going to be hard to implement an efficient "sort" ValueSource, as it would probably have to loop through all docs in the index during construction and sort them, caching the sort order for all docs so that it is available later when the value for each document is asked for separately. It would probably functionally work, but it seems like there's got to be a better way in the Collapse QParser itself... > Field Collapsing PostFilter > --------------------------- > > Key: SOLR-5027 > URL: https://issues.apache.org/jira/browse/SOLR-5027 > Project: Solr > Issue Type: New Feature > Components: search > Affects Versions: 5.0 > Reporter: Joel Bernstein > Assignee: Joel Bernstein > Priority: Minor > Fix For: 4.6, 5.0 > > Attachments: SOLR-5027.patch, SOLR-5027.patch, SOLR-5027.patch, > SOLR-5027.patch, SOLR-5027.patch, SOLR-5027.patch, SOLR-5027.patch, > SOLR-5027.patch, SOLR-5027.patch > > > This ticket introduces the *CollapsingQParserPlugin* > The *CollapsingQParserPlugin* is a PostFilter that performs field collapsing. > This is a high performance alternative to standard Solr field collapsing > (with *ngroups*) when the number of distinct groups in the result set is high. > For example in one performance test, a search with 10 million full results > and 1 million collapsed groups: > Standard grouping with ngroups : 17 seconds. > CollapsingQParserPlugin: 300 milli-seconds. > Sample syntax: > Collapse based on the highest scoring document: > {code} > fq=(!collapse field=<field_name>} > {code} > Collapse based on the min value of a numeric field: > {code} > fq={!collapse field=<field_name> min=<field_name>} > {code} > Collapse based on the max value of a numeric field: > {code} > fq={!collapse field=<field_name> max=<field_name>} > {code} > Collapse with a null policy: > {code} > fq={!collapse field=<field_name> nullPolicy=<null_policy>} > {code} > There are three null policies: > ignore : removes docs with a null value in the collapse field (default). > expand : treats each doc with a null value in the collapse field as a > separate group. > collapse : collapses all docs with a null value into a single group using > either highest score, or min/max. > The CollapsingQParserPlugin also fully supports the QueryElevationComponent > *Note:* The July 16 patch also includes and ExpandComponent that expands the > collapsed groups for the current search result page. This functionality will > be moved to it's own ticket. -- This message was sent by Atlassian JIRA (v6.1#6144) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org