Faceted Search API


Interface Summary
CategoryListIterator An interface for iterating over a "category list", i.e., the list of categories per document.
Heap<T> Declares an interface for heap (and heap alike) structures, handling a given type T
ScoredDocIDs Document IDs with scores for each, driving facets accumulation.
ScoredDocIDsIterator Iterator over document IDs and their scores.

Class Summary
AdaptiveFacetsAccumulator FacetsAccumulator whose behavior regarding complements, sampling, etc.
DrillDown Creation of drill down term or query.
FacetArrays Provider of arrays used for facet operations such as counting.
FacetResultsHandler Handler for facet results.
FacetsAccumulator Driver for Accumulating facets of faceted search requests over given documents.
FacetsCollector Collector for facet accumulation.
FloatArrayAllocator An FloatArrayAllocator is an object which manages float array objects of a certain size.
IntArrayAllocator An IntArrayAllocator is an object which manages counter array objects of a certain length.
PayloadIntDecodingIterator A payload deserializer comes with its own working space (buffer).
PayloadIterator A utility class for iterating through a posting list of a given term and retrieving the payload of the first occurrence in every document.
SamplingWrapper Wrap any Facets Accumulator with sampling.
ScoredDocIdCollector A Collector which stores all docIDs and their scores in a ScoredDocIDs instance.
StandardFacetsAccumulator Standard implementation for FacetsAccumulator, utilizing partitions to save on memory.
TemporaryObjectAllocator<T> An TemporaryObjectAllocator is an object which manages large, reusable, temporary objects needed during multiple concurrent computations.
TopKFacetResultsHandler Generate Top-K results for a particular FacetRequest.
TopKInEachNodeHandler Generates FacetResult from the count arrays aggregated for a particular FacetRequest.
TopKInEachNodeHandler.IntermediateFacetResultWithHash Intermediate result to hold counts from one or more partitions processed thus far.
TotalFacetCounts Maintain Total Facet Counts per partition, for given parameters: Index reader of an index Taxonomy index reader Facet indexing params (and particularly the category list params) The total facet counts are maintained as an array of arrays of integers, where a separate array is kept for each partition.
TotalFacetCountsCache Manage an LRU cache for TotalFacetCounts per index, taxonomy, and facet indexing params.

Package Description

Faceted Search API

API for faceted search has several interfaces - simple, top level ones, adequate for most users, and advanced, more complicated ones, for the more advanced users.

We now describe the simpler interfaces. There are mainly 3 interfaces for faceted search:

  1. Facets Request defines requirements:
  2. Facets Extractor Controls how facets are extracted, with variations of:
  3. Facet Results Handler Controls how results are further processed and merged (also between partitions):

Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.