Fork me on GitHub
  • API

    Show / Hide Table of Contents

    Class DrillSideways

    Computes drill down and sideways counts for the provided 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 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.

    Note

    This API is experimental and might change in incompatible ways in the next release.

    Inheritance
    object
    DrillSideways
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Lucene.Net.Facet
    Assembly: Lucene.Net.Facet.dll
    Syntax
    public class DrillSideways

    Constructors

    DrillSideways(IndexSearcher, FacetsConfig, SortedSetDocValuesReaderState)

    Create a new DrillSideways instance, assuming the categories were indexed with SortedSetDocValuesFacetField.

    Declaration
    public DrillSideways(IndexSearcher searcher, FacetsConfig config, SortedSetDocValuesReaderState state)
    Parameters
    Type Name Description
    IndexSearcher searcher
    FacetsConfig config
    SortedSetDocValuesReaderState state

    DrillSideways(IndexSearcher, FacetsConfig, TaxonomyReader)

    Create a new DrillSideways instance.

    Declaration
    public DrillSideways(IndexSearcher searcher, FacetsConfig config, TaxonomyReader taxoReader)
    Parameters
    Type Name Description
    IndexSearcher searcher
    FacetsConfig config
    TaxonomyReader taxoReader

    DrillSideways(IndexSearcher, FacetsConfig, TaxonomyReader, SortedSetDocValuesReaderState)

    Create a new DrillSideways instance, where some dimensions were indexed with SortedSetDocValuesFacetField and others were indexed with FacetField.

    Declaration
    public DrillSideways(IndexSearcher searcher, FacetsConfig config, TaxonomyReader taxoReader, SortedSetDocValuesReaderState state)
    Parameters
    Type Name Description
    IndexSearcher searcher
    FacetsConfig config
    TaxonomyReader taxoReader
    SortedSetDocValuesReaderState state

    Fields

    m_config

    FacetsConfig passed to constructor.

    Declaration
    protected readonly FacetsConfig m_config
    Field Value
    Type Description
    FacetsConfig

    m_searcher

    Lucene.Net.Search.IndexSearcher passed to constructor.

    Declaration
    protected readonly IndexSearcher m_searcher
    Field Value
    Type Description
    IndexSearcher

    m_state

    SortedSetDocValuesReaderState passed to constructor; can be null.

    Declaration
    protected readonly SortedSetDocValuesReaderState m_state
    Field Value
    Type Description
    SortedSetDocValuesReaderState

    m_taxoReader

    TaxonomyReader passed to constructor.

    Declaration
    protected readonly TaxonomyReader m_taxoReader
    Field Value
    Type Description
    TaxonomyReader

    Properties

    ScoreSubDocsAtOnce

    Override this and return true if your collector (e.g., Lucene.Net.Join.ToParentBlockJoinCollector) expects all sub-scorers to be positioned on the document being collected. This will cause some performance loss; default is false. Note that if you return true from this method (in a subclass) be sure your collector also returns false from Lucene.Net.Search.ICollector.AcceptsDocsOutOfOrder: this will trick Lucene.Net.Search.BooleanQuery into also scoring all subDocs at once.

    Declaration
    protected virtual bool ScoreSubDocsAtOnce { get; }
    Property Value
    Type Description
    bool

    Methods

    BuildFacetsResult(FacetsCollector, FacetsCollector[], string[])

    Subclass can override to customize per-dim Facets impl.

    Declaration
    protected virtual Facets BuildFacetsResult(FacetsCollector drillDowns, FacetsCollector[] drillSideways, string[] drillSidewaysDims)
    Parameters
    Type Name Description
    FacetsCollector drillDowns
    FacetsCollector[] drillSideways
    string[] drillSidewaysDims
    Returns
    Type Description
    Facets

    Search(DrillDownQuery, Filter, FieldDoc, int, Sort, bool, bool)

    Search, sorting by Lucene.Net.Search.Sort, and computing drill down and sideways counts.

    Declaration
    public virtual DrillSidewaysResult Search(DrillDownQuery query, Filter filter, FieldDoc after, int topN, Sort sort, bool doDocScores, bool doMaxScore)
    Parameters
    Type Name Description
    DrillDownQuery query
    Filter filter
    FieldDoc after
    int topN
    Sort sort
    bool doDocScores
    bool doMaxScore
    Returns
    Type Description
    DrillSidewaysResult

    Search(DrillDownQuery, ICollector)

    Search, collecting hits with a Lucene.Net.Search.ICollector, and computing drill down and sideways counts.

    Declaration
    public virtual DrillSidewaysResult Search(DrillDownQuery query, ICollector hitCollector)
    Parameters
    Type Name Description
    DrillDownQuery query
    ICollector hitCollector
    Returns
    Type Description
    DrillSidewaysResult

    Search(DrillDownQuery, int)

    Search, sorting by score, and computing drill down and sideways counts.

    Declaration
    public virtual DrillSidewaysResult Search(DrillDownQuery query, int topN)
    Parameters
    Type Name Description
    DrillDownQuery query
    int topN
    Returns
    Type Description
    DrillSidewaysResult

    Search(ScoreDoc, DrillDownQuery, int)

    Search, sorting by score, and computing drill down and sideways counts.

    Declaration
    public virtual DrillSidewaysResult Search(ScoreDoc after, DrillDownQuery query, int topN)
    Parameters
    Type Name Description
    ScoreDoc after
    DrillDownQuery query
    int topN
    Returns
    Type Description
    DrillSidewaysResult
    Back to top Copyright © 2024 The Apache Software Foundation, Licensed under the Apache License, Version 2.0
    Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation.
    All other marks mentioned may be trademarks or registered trademarks of their respective owners.