C# (CSharp) Lucene.Net.Facet.Taxonomy Namespace

Nested Namespaces

Lucene.Net.Facet.Taxonomy.Directory
Lucene.Net.Facet.Taxonomy.WriterCache

Classes

Name Description
CachedOrdinalsReader A per-segment cache of documents' facet ordinals. Every CachedOrds holds the ordinals in a raw {@code int[]}, and therefore consumes as much RAM as the total number of ordinals found in the segment, but saves the CPU cost of decoding ordinals during facet counting.

NOTE: every CachedOrds is limited to 2.1B total ordinals. If that is a limitation for you then consider limiting the segment size to fewer documents, or use an alternative cache which pages through the category ordinals.

NOTE: when using this cache, it is advised to use a DocValuesFormat that does not cache the data in memory, at least for the category lists fields, or otherwise you'll be doing double-caching.

NOTE: create one instance of this and re-use it for all facet implementations (the cache is per-instance, not static).

CachedOrdinalsReader.CachedOrds Holds the cached ordinals in two parallel {@code int[]} arrays.
CachedOrdinalsReader.OrdinalsSegmentReaderAnonymousInnerClassHelper
DocValuesOrdinalsReader Decodes ordinals previously indexed into a BinaryDocValues field
DocValuesOrdinalsReader.OrdinalsSegmentReaderAnonymousInnerClassHelper
FastTaxonomyFacetCounts Computes facets counts, assuming the default encoding into DocValues was used. @lucene.experimental
FloatTaxonomyFacets Base class for all taxonomy-based facets that aggregate to a per-ords float[].
IntAssociationFacetField Add an instance of this to your Document to add a facet label associated with an int. Use TaxonomyFacetSumIntAssociations to aggregate int values per facet label at search time. @lucene.experimental
IntTaxonomyFacets Base class for all taxonomy-based facets that aggregate to a per-ords int[].
ParallelTaxonomyArrays Returns 3 arrays for traversing the taxonomy:
  • {@code parents}: {@code parents[i]} denotes the parent of category ordinal {@code i}.
  • {@code children}: {@code children[i]} denotes a child of category ordinal {@code i}.
  • {@code siblings}: {@code siblings[i]} denotes the sibling of category ordinal {@code i}.
To traverse the taxonomy tree, you typically start with {@code children[0]} (ordinal 0 is reserved for ROOT), and then depends if you want to do DFS or BFS, you call {@code children[children[0]]} or {@code siblings[children[0]]} and so forth, respectively.

NOTE: you are not expected to modify the values of the arrays, since the arrays are shared with other threads. @lucene.experimental

PrintTaxonomyStats
TaxonomyFacetCounts Reads from any OrdinalsReader; use FastTaxonomyFacetCounts if you are using the default encoding from BinaryDocValues. @lucene.experimental
TaxonomyFacetSumValueSource Aggregates sum of values from FunctionValues.DoubleVal, for each facet label. @lucene.experimental
TaxonomyFacetSumValueSource.FakeScorer
TaxonomyFacetSumValueSource.ScoreValueSource ValueSource that returns the score for each hit; use this to aggregate the sum of all hit scores for each facet label.
TaxonomyFacetSumValueSource.ScoreValueSource.DoubleDocValuesAnonymousInnerClassHelper
TestTaxonomyCombined
TestTaxonomyCombined.ThreadAnonymousInnerClassHelper
TestTaxonomyFacetCounts
TestTaxonomyFacetCounts.PerFieldSimilarityWrapperAnonymousInnerClassHelper
TestTaxonomyFacetCounts2
TestTaxonomyFacetSumValueSource
TestTaxonomyFacetSumValueSource.ValueSourceAnonymousInnerClassHelper
TestTaxonomyFacetSumValueSource.ValueSourceAnonymousInnerClassHelper.DoubleDocValuesAnonymousInnerClassHelper