Package org.rocksdb

Enum Class PrepopulateBlobCache

java.lang.Object
java.lang.Enum<PrepopulateBlobCache>
org.rocksdb.PrepopulateBlobCache
All Implemented Interfaces:
Serializable, Comparable<PrepopulateBlobCache>, Constable

public enum PrepopulateBlobCache extends Enum<PrepopulateBlobCache>
Enum PrepopulateBlobCache

Prepopulate warm/hot blobs which are already in memory into blob cache at the time of flush. On a flush, the blob that is in memory (in memtables) get flushed to the device. If using Direct IO, additional IO is incurred to read this blob back into memory again, which is avoided by enabling this option. This further helps if the workload exhibits high temporal locality, where most of the reads go to recently written data. This also helps in case of the remote file system since it involves network traffic and higher latencies.

  • Enum Constant Details

  • Method Details

    • values

      public static PrepopulateBlobCache[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static PrepopulateBlobCache valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getPrepopulateBlobCache

      public static PrepopulateBlobCache getPrepopulateBlobCache(String libraryName)

      Get the PrepopulateBlobCache enumeration value by passing the library name to this method.

      If library cannot be found the enumeration value PREPOPULATE_BLOB_DISABLE will be returned.

      Parameters:
      libraryName - prepopulate blob cache library name.
      Returns:
      PrepopulateBlobCache instance.
    • getPrepopulateBlobCache

      public static PrepopulateBlobCache getPrepopulateBlobCache(byte byteIdentifier)

      Get the PrepopulateBlobCache enumeration value by passing the byte identifier to this method.

      Parameters:
      byteIdentifier - of PrepopulateBlobCache.
      Returns:
      PrepopulateBlobCache instance.
      Throws:
      IllegalArgumentException - If PrepopulateBlobCache cannot be found for the provided byteIdentifier
    • getValue

      public byte getValue()

      Returns the byte value of the enumerations value.

      Returns:
      byte representation
    • getLibraryName

      public String getLibraryName()

      Returns the library name of the prepopulate blob cache mode identified by the enumeration value.

      Returns:
      library name