Package org.apache.lucene.search
Class TotalHitCountCollectorManager
java.lang.Object
org.apache.lucene.search.TotalHitCountCollectorManager
- All Implemented Interfaces:
CollectorManager<TotalHitCountCollector,
Integer>
public class TotalHitCountCollectorManager
extends Object
implements CollectorManager<TotalHitCountCollector,Integer>
Collector manager based on
TotalHitCountCollector
that allows users to parallelize
counting the number of hits, expected to be used mostly wrapped in MultiCollectorManager
.
For cases when this is the only collector manager used, IndexSearcher.count(Query)
should
be called instead of IndexSearcher.search(Query, CollectorManager)
as the former is
faster whenever the count can be returned directly from the index statistics.-
Constructor Summary
ConstructorsConstructorDescriptionTotalHitCountCollectorManager
(IndexSearcher.LeafSlice[] leafSlices) Creates a new total hit count collector manager, providing the array of leaf slices that search targets, which can be retrieved viaIndexSearcher.getSlices()
for the searcher. -
Method Summary
Modifier and TypeMethodDescriptionReturn a newCollector
.reduce
(Collection<TotalHitCountCollector> collectors) Reduce the results of individual collectors into a meaningful result.
-
Constructor Details
-
TotalHitCountCollectorManager
Creates a new total hit count collector manager, providing the array of leaf slices that search targets, which can be retrieved viaIndexSearcher.getSlices()
for the searcher.- Parameters:
leafSlices
- the slices that the searcher targets. Used to optimize the collection depending on whether segments have been partitioned into partitions or not.
-
-
Method Details
-
newCollector
Description copied from interface:CollectorManager
Return a newCollector
. This must return a different instance on each call.- Specified by:
newCollector
in interfaceCollectorManager<TotalHitCountCollector,
Integer> - Throws:
IOException
-
reduce
Description copied from interface:CollectorManager
Reduce the results of individual collectors into a meaningful result. For instance aTopDocsCollector
would compute thetop docs
of each collector and then merge them usingTopDocs.merge(int, TopDocs[])
. This method must be called after collection is finished on all provided collectors.- Specified by:
reduce
in interfaceCollectorManager<TotalHitCountCollector,
Integer> - Throws:
IOException
-