Class CollapsingQParserPlugin
- java.lang.Object
- 
- org.apache.solr.search.QParserPlugin
- 
- org.apache.solr.search.CollapsingQParserPlugin
 
 
- 
- All Implemented Interfaces:
- AutoCloseable,- SolrInfoBean,- SolrMetricProducer,- NamedListInitializedPlugin
 
 public class CollapsingQParserPlugin extends QParserPlugin 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.Sample syntax: Collapse based on the highest scoring document: fq=(!collapse field=field_name} Collapse based on the min value of a numeric field: fq={!collapse field=field_name min=field_name} Collapse based on the max value of a numeric field: fq={!collapse field=field_name max=field_name} Collapse with a null policy: fq={!collapse field=field_name nullPolicy=nullPolicy} 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 fully supports the QueryElevationComponent 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classCollapsingQParserPlugin.CollapseScorestatic classCollapsingQParserPlugin.CollapsingPostFilterstatic classCollapsingQParserPlugin.GroupHeadSelectorModels all the information about how group head documents should be selectedstatic classCollapsingQParserPlugin.GroupHeadSelectorTypestatic classCollapsingQParserPlugin.NullPolicy- 
Nested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoBeanSolrInfoBean.Category, SolrInfoBean.Group
 
- 
 - 
Field SummaryFields Modifier and Type Field Description static StringCOLLECT_ELEVATED_DOCS_WHEN_COLLAPSINGIf elevation is used in combination with the collapse query parser, we can define that we only want to return the representative and not all elevated docs by setting this parameter to false (true by default).static StringHINT_BLOCKIndicates that values in the collapse field are unique per contiguous block, and a single pass "block based" collapse algorithm can be used.static StringHINT_MULTI_DOCVALUESDeprecated.static StringHINT_TOP_FCstatic StringNAMEstatic StringNULL_COLLAPSEDeprecated.useCollapsingQParserPlugin.NullPolicyinstead.static StringNULL_EXPANDDeprecated.static StringNULL_IGNOREDeprecated.- 
Fields inherited from class org.apache.solr.search.QParserPluginDEFAULT_QTYPE, standardPlugins
 
- 
 - 
Constructor SummaryConstructors Constructor Description CollapsingQParserPlugin()
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description QParsercreateParser(String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest request)return aQParserstatic org.apache.lucene.index.LeafReadergetTopFieldCacheReader(SolrIndexSearcher searcher, String collapseField)This forces the use of the top level field cache for String fields.static org.apache.lucene.search.SortrewriteSort(SortSpec sortSpec, org.apache.lucene.search.IndexSearcher searcher)Helper method for rewriting the Sort associated with a SortSpec.- 
Methods inherited from class org.apache.solr.search.QParserPlugingetCategory, getDescription, getName, getSolrMetricsContext, initializeMetrics
 - 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface org.apache.solr.util.plugin.NamedListInitializedPlugininit
 - 
Methods inherited from interface org.apache.solr.metrics.SolrMetricProducerclose
 
- 
 
- 
- 
- 
Field Detail- 
NAMEpublic static final String NAME - See Also:
- Constant Field Values
 
 - 
HINT_TOP_FCpublic static final String HINT_TOP_FC - See Also:
- Constant Field Values
 
 - 
HINT_BLOCKpublic static final String HINT_BLOCK Indicates that values in the collapse field are unique per contiguous block, and a single pass "block based" collapse algorithm can be used. This behavior is the default for collapsing on the_root_field, but may also be enabled for other fields that have the same characteristics. This hint will be ignored if other options prevent the use of this single pass approach (notable: nullPolicy=collapse)Do NOT use this hint if the index is not laid out such that each unique value in the collapse field is garuntteed to only exist in one contiguous block, otherwise the results of the collapse filter will include more then one document per collapse value. - See Also:
- Constant Field Values
 
 - 
COLLECT_ELEVATED_DOCS_WHEN_COLLAPSINGpublic static String COLLECT_ELEVATED_DOCS_WHEN_COLLAPSING If elevation is used in combination with the collapse query parser, we can define that we only want to return the representative and not all elevated docs by setting this parameter to false (true by default).
 - 
NULL_COLLAPSE@Deprecated public static final String NULL_COLLAPSE Deprecated.useCollapsingQParserPlugin.NullPolicyinstead.- See Also:
- Constant Field Values
 
 - 
NULL_IGNORE@Deprecated public static final String NULL_IGNORE Deprecated.- See Also:
- Constant Field Values
 
 - 
NULL_EXPAND@Deprecated public static final String NULL_EXPAND Deprecated.- See Also:
- Constant Field Values
 
 - 
HINT_MULTI_DOCVALUES@Deprecated public static final String HINT_MULTI_DOCVALUES Deprecated.- See Also:
- Constant Field Values
 
 
- 
 - 
Method Detail- 
createParserpublic QParser createParser(String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest request) Description copied from class:QParserPluginreturn aQParser- Specified by:
- createParserin class- QParserPlugin
 
 - 
getTopFieldCacheReaderpublic static org.apache.lucene.index.LeafReader getTopFieldCacheReader(SolrIndexSearcher searcher, String collapseField) This forces the use of the top level field cache for String fields. This is VERY fast at query time but slower to warm and causes insanity.
 - 
rewriteSortpublic static org.apache.lucene.search.Sort rewriteSort(SortSpec sortSpec, org.apache.lucene.search.IndexSearcher searcher) throws IOException Helper method for rewriting the Sort associated with a SortSpec. Handles the special case default of relevancy sort (ie: a SortSpec w/null Sort object)- Throws:
- IOException
 
 
- 
 
-