public class DrillSideways extends Object
DrillDownQuery
. Drill sideways counts include
alternative values/aggregates for the drill-down
dimensions so that a dimension does not disappear after
the user drills down into it.
Use one of the static search
methods to do the search, and then get the hits and facet
results from the returned DrillSideways.DrillSidewaysResult
.
NOTE: this allocates one FacetsCollector
for each drill-down, plus one. If your
index has high number of facet labels then this will
multiply your memory usage.
Modifier and Type | Class and Description |
---|---|
static class |
DrillSideways.DrillSidewaysResult
Represents the returned result from a drill sideways search.
|
Modifier and Type | Field and Description |
---|---|
protected IndexSearcher |
searcher |
protected SortedSetDocValuesReaderState |
state |
protected TaxonomyReader |
taxoReader |
Constructor and Description |
---|
DrillSideways(IndexSearcher searcher,
SortedSetDocValuesReaderState state)
Create a new
DrillSideways instance, assuming the categories were
indexed with SortedSetDocValuesFacetFields . |
DrillSideways(IndexSearcher searcher,
TaxonomyReader taxoReader)
Create a new
DrillSideways instance, assuming the categories were
indexed with FacetFields . |
Modifier and Type | Method and Description |
---|---|
protected FacetsAccumulator |
getDrillDownAccumulator(FacetSearchParams fsp)
Override this to use a custom drill-down
FacetsAccumulator . |
protected FacetsAccumulator |
getDrillSidewaysAccumulator(String dim,
FacetSearchParams fsp)
Override this to use a custom drill-sideways
FacetsAccumulator . |
protected boolean |
scoreSubDocsAtOnce()
Override this and return true if your collector
(e.g., ToParentBlockJoinCollector) expects all
sub-scorers to be positioned on the document being
collected.
|
DrillSideways.DrillSidewaysResult |
search(DrillDownQuery query,
Collector hitCollector,
FacetSearchParams fsp)
Search, collecting hits with a
Collector , and
computing drill down and sideways counts. |
DrillSideways.DrillSidewaysResult |
search(DrillDownQuery query,
Filter filter,
FieldDoc after,
int topN,
Sort sort,
boolean doDocScores,
boolean doMaxScore,
FacetSearchParams fsp)
Search, sorting by
Sort , and computing
drill down and sideways counts. |
DrillSideways.DrillSidewaysResult |
search(ScoreDoc after,
DrillDownQuery query,
int topN,
FacetSearchParams fsp)
Search, sorting by score, and computing
drill down and sideways counts.
|
protected final IndexSearcher searcher
protected final TaxonomyReader taxoReader
protected final SortedSetDocValuesReaderState state
public DrillSideways(IndexSearcher searcher, TaxonomyReader taxoReader)
DrillSideways
instance, assuming the categories were
indexed with FacetFields
.public DrillSideways(IndexSearcher searcher, SortedSetDocValuesReaderState state)
DrillSideways
instance, assuming the categories were
indexed with SortedSetDocValuesFacetFields
.public DrillSideways.DrillSidewaysResult search(DrillDownQuery query, Collector hitCollector, FacetSearchParams fsp) throws IOException
Collector
, and
computing drill down and sideways counts.IOException
public DrillSideways.DrillSidewaysResult search(DrillDownQuery query, Filter filter, FieldDoc after, int topN, Sort sort, boolean doDocScores, boolean doMaxScore, FacetSearchParams fsp) throws IOException
Sort
, and computing
drill down and sideways counts.IOException
public DrillSideways.DrillSidewaysResult search(ScoreDoc after, DrillDownQuery query, int topN, FacetSearchParams fsp) throws IOException
IOException
protected FacetsAccumulator getDrillDownAccumulator(FacetSearchParams fsp) throws IOException
FacetsAccumulator
.IOException
protected FacetsAccumulator getDrillSidewaysAccumulator(String dim, FacetSearchParams fsp) throws IOException
FacetsAccumulator
.IOException
protected boolean scoreSubDocsAtOnce()
Collector.acceptsDocsOutOfOrder()
: this will trick
BooleanQuery into also scoring all subDocs at once.Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.