@InterfaceAudience.Private
public interface BlockCache
Cacheable
interface can be put in the cache.| Modifier and Type | Method and Description |
|---|---|
void |
cacheBlock(BlockCacheKey cacheKey,
Cacheable buf)
Add block to cache (defaults to not in-memory).
|
void |
cacheBlock(BlockCacheKey cacheKey,
Cacheable buf,
boolean inMemory)
Add block to cache.
|
boolean |
evictBlock(BlockCacheKey cacheKey)
Evict block from cache.
|
int |
evictBlocksByHfileName(String hfileName)
Evicts all blocks for the given HFile.
|
Cacheable |
getBlock(BlockCacheKey cacheKey,
boolean caching,
boolean repeat)
Fetch block from cache.
|
List<BlockCacheColumnFamilySummary> |
getBlockCacheColumnFamilySummaries(org.apache.hadoop.conf.Configuration conf)
Performs a BlockCache summary and returns a List of BlockCacheColumnFamilySummary objects.
|
long |
getBlockCount()
Returns the number of blocks currently cached in the block cache.
|
long |
getCurrentSize()
Returns the occupied size of the block cache, in bytes.
|
long |
getEvictedCount()
Returns the number of blocks that have been evicted.
|
long |
getFreeSize()
Returns the free size of the block cache, in bytes.
|
CacheStats |
getStats()
Get the statistics for this block cache.
|
void |
shutdown()
Shutdown the cache.
|
long |
size()
Returns the total size of the block cache, in bytes.
|
void cacheBlock(BlockCacheKey cacheKey, Cacheable buf, boolean inMemory)
cacheKey - The block's cache key.buf - The block contents wrapped in a ByteBuffer.inMemory - Whether block should be treated as in-memoryvoid cacheBlock(BlockCacheKey cacheKey, Cacheable buf)
cacheKey - The block's cache key.buf - The object to cache.Cacheable getBlock(BlockCacheKey cacheKey, boolean caching, boolean repeat)
cacheKey - Block to fetch.caching - Whether this request has caching enabled (used for stats)repeat - Whether this is a repeat lookup for the same block
(used to avoid double counting cache misses when doing double-check locking)HFileReaderV2.readBlock(long, long, boolean, boolean, boolean, BlockType)boolean evictBlock(BlockCacheKey cacheKey)
cacheKey - Block to evictint evictBlocksByHfileName(String hfileName)
CacheStats getStats()
void shutdown()
long size()
long getFreeSize()
long getCurrentSize()
long getEvictedCount()
long getBlockCount()
List<BlockCacheColumnFamilySummary> getBlockCacheColumnFamilySummaries(org.apache.hadoop.conf.Configuration conf) throws IOException
conf - HBaseConfigurationIOException - exceptionCopyright © 2014 The Apache Software Foundation. All Rights Reserved.