Class StringValueFacetCounts


  • public class StringValueFacetCounts
    extends Facets
    Compute facet counts from a previously indexed SortedSetDocValues or SortedDocValues field. This approach will execute facet counting against the string values found in the specified field, with no assumptions on their format. Unlike SortedSetDocValuesFacetCounts, no assumption is made about a "dimension" path component being indexed. Because of this, the field itself is effectively treated as the "dimension", and counts for all unique string values are produced. This approach is meant to complement LongValueFacetCounts in that they both provide facet counting on a doc value field with no assumptions of content.

    This implementation is useful if you want to dynamically count against any string doc value field without relying on FacetField and FacetsConfig. The disadvantage is that a separate field is required for each "dimension". If you want to pack multiple dimensions into the same doc values field, you probably want one of FastTaxonomyFacetCounts or SortedSetDocValuesFacetCounts.

    Note that there is an added cost on every IndexReader open to create a new StringDocValuesReaderState. Also note that this class should be instantiated and used from a single thread, because it holds a thread-private instance of SortedSetDocValues.

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