Enum Constant and Description |
---|
kBinarySearch
A space efficient index block that is optimized for
binary-search-based index.
|
kBinarySearchWithFirstKey
Like
kBinarySearch , but index also contains first key of each block. |
kHashSearch
The hash index, if enabled, will do the hash lookup when
Options.prefix_extractor is provided. |
kTwoLevelIndexSearch
A two-level index implementation.
|
Modifier and Type | Method and Description |
---|---|
byte |
getValue()
Returns the byte value of the enumerations value
|
static IndexType |
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static IndexType[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final IndexType kBinarySearch
public static final IndexType kHashSearch
Options.prefix_extractor
is provided.public static final IndexType kTwoLevelIndexSearch
public static final IndexType kBinarySearchWithFirstKey
kBinarySearch
, but index also contains first key of each block.
This allows iterators to defer reading the block until it's actually
needed. May significantly reduce read amplification of short range scans.
Without it, iterator seek usually reads one block from each level-0 file
and from each level, which may be expensive.
Works best in combination with:
- IndexShorteningMode::kNoShortening,
- custom FlushBlockPolicy to cut blocks at some meaningful boundaries,
e.g. when prefix changes.
Makes the index significantly bigger (2x or more), especially when keys
are long.public static IndexType[] values()
for (IndexType c : IndexType.values()) System.out.println(c);
public static IndexType valueOf(java.lang.String name)
name
- the name of the enum constant to be returned.java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is nullpublic byte getValue()