Class SortedSetDocValuesField

  • All Implemented Interfaces:
    IndexableField

    public class SortedSetDocValuesField
    extends Field
    Field that stores a set of per-document BytesRef values, indexed for faceting,grouping,joining. Here's an example usage:
       document.add(new SortedSetDocValuesField(name, new BytesRef("hello")));
       document.add(new SortedSetDocValuesField(name, new BytesRef("world")));
     

    If you also need to store the value, you should add a separate StoredField instance.

    Each value can be at most 32766 bytes long.

    • Field Detail

      • TYPE

        public static final FieldType TYPE
        Type for sorted bytes DocValues
    • Constructor Detail

      • SortedSetDocValuesField

        public SortedSetDocValuesField​(String name,
                                       BytesRef bytes)
        Create a new sorted DocValues field.
        Parameters:
        name - field name
        bytes - binary content
        Throws:
        IllegalArgumentException - if the field name is null
    • Method Detail

      • newSlowRangeQuery

        public static Query newSlowRangeQuery​(String field,
                                              BytesRef lowerValue,
                                              BytesRef upperValue,
                                              boolean lowerInclusive,
                                              boolean upperInclusive)
        Create a range query that matches all documents whose value is between lowerValue and upperValue.

        This query also works with fields that have indexed SortedDocValuesFields.

        NOTE: Such queries cannot efficiently advance to the next match, which makes them slow if they are not ANDed with a selective query. As a consequence, they are best used wrapped in an IndexOrDocValuesQuery, alongside a range query that executes on points, such as BinaryPoint.newRangeQuery(java.lang.String, byte[], byte[]).

      • newSlowSetQuery

        public static Query newSlowSetQuery​(String field,
                                            BytesRef... values)
        Create a query matching any of the specified values.

        This query also works with fields that have indexed SortedDocValuesFields.

        NOTE: Such queries cannot efficiently advance to the next match, which makes them slow if they are not ANDed with a selective query. As a consequence, they are best used wrapped in an IndexOrDocValuesQuery, alongside a set query that executes on postings, such as TermInSetQuery.