Interface BlockCacheManager.Configuration

Enclosing class:
BlockCacheManager

public static interface BlockCacheManager.Configuration
  • Method Summary

    Modifier and Type
    Method
    Description
    long
    Before Accumulo's cache implementation was configurable, its built in cache had a configurable block size.
    long
    Before Accumulo's cache implementation was configurable, its built in caches had a configurable size.
    This method provides a way for a cache implementation to access arbitrary configuration set by a user.
  • Method Details

    • getMaxSize

      long getMaxSize(CacheType type)
      Before Accumulo's cache implementation was configurable, its built in caches had a configurable size. These sizes were specified by the system properties tserver.cache.config.data.size, tserver.cache.config.index.size, and tserver.cache.config.summary.size. This method returns the values of those settings. The settings are made available, but cache implementations are under no obligation to use them.

      When this plugin is running in a scan server, the value associated with sserver.cache.config.data.size, sserver.cache.config.index.size, and sserver.cache.config.summary.size are returned instead of tserver values.

    • getBlockSize

      long getBlockSize()
      Before Accumulo's cache implementation was configurable, its built in cache had a configurable block size. This block size was specified by the system property tserver.default.blocksize. This method returns the value of that setting. The setting is made available, but cache implementations are under no obligation to use it.

      When this plugin is running in scan server, the value associated with sserver.default.blocksize is returned instead.

    • getProperties

      Map<String,String> getProperties(String prefix, CacheType type)
      This method provides a way for a cache implementation to access arbitrary configuration set by a user.

      When running in a tserver, returns all Accumulo properties that have a prefix of tserver.cache.config.<prefix>.<type>. or tserver.cache.config.<prefix>.default. with values for specific cache types overriding defaults.

      When running in a scan server, returns all Accumulo properties that have a prefix of sserver.cache.config.<prefix>.<type>. or sserver.cache.config.<prefix>.default. with values for specific cache types overriding defaults.

      For example assume the following data is in Accumulo's system config and the plugin is running in a tserver.

       tserver.cache.config.lru.default.evictAfter=3600
       tserver.cache.config.lru.default.loadFactor=.75
       tserver.cache.config.lru.index.loadFactor=.55
       tserver.cache.config.lru.data.loadFactor=.65
       

      If this method is called with prefix=lru and type=INDEX then it would return a map with the following key values. The load factor setting for index overrides the default value.

       evictAfter=3600
       loadFactor=.55
       
      Parameters:
      prefix - A unique identifier that corresponds to a particular BlockCacheManager implementation.