Package org.rocksdb

Enum PrepopulateBlobCache

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<PrepopulateBlobCache>

    public enum PrepopulateBlobCache
    extends java.lang.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.

    • Method Detail

      • values

        public static PrepopulateBlobCache[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (PrepopulateBlobCache c : PrepopulateBlobCache.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static PrepopulateBlobCache valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • getPrepopulateBlobCache

        public static PrepopulateBlobCache getPrepopulateBlobCache​(java.lang.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:
        java.lang.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 java.lang.String getLibraryName()

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

        Returns:
        library name