Uses of Interface
org.apache.hadoop.hbase.io.hfile.BlockCache
Package
Description
Provides HBase Client
Provides implementations of
HFile
and HFile
BlockCache
.Provides
BucketCache
, an implementation of
BlockCache
.-
Uses of BlockCache in org.apache.hadoop.hbase.client
-
Uses of BlockCache in org.apache.hadoop.hbase.io.hfile
Modifier and TypeInterfaceDescriptioninterface
In-memory BlockCache that may be backed by secondary layer(s).interface
BlockCache which is resizable.Modifier and TypeClassDescriptionclass
CombinedBlockCache is an abstraction layer that combinesFirstLevelBlockCache
andBucketCache
.class
class
An on heap block cache implementation extended LruBlockCache and only cache index block.class
This realisation improve performance of classical LRU cache up to 3 times via reduce GC job.class
A block cache implementation that is memory-aware usingHeapSize
, memory-bound using an LRU eviction algorithm, and concurrent: backed by aConcurrentHashMap
and with a non-blocking eviction thread giving constant-timeLruBlockCache.cacheBlock(org.apache.hadoop.hbase.io.hfile.BlockCacheKey, org.apache.hadoop.hbase.io.hfile.Cacheable, boolean)
andLruBlockCache.getBlock(org.apache.hadoop.hbase.io.hfile.BlockCacheKey, boolean, boolean, boolean)
operations.class
Class to store blocks into memcached.final class
A block cache that is memory-aware usingHeapSize
, memory bounded using the W-TinyLFU eviction algorithm, and concurrent.Modifier and TypeFieldDescription(package private) final BlockCache[]
BlockCachesIterator.bcs
private final BlockCache
CacheConfig.blockCache
protected final BlockCache
CombinedBlockCache.l2Cache
private BlockCache
TinyLfuBlockCache.victimCache
private BlockCache
LruAdaptiveBlockCache.victimHandler
Where to send victims (blocks evicted/missing from the cache).private BlockCache
LruBlockCache.victimHandler
Where to send victims (blocks evicted/missing from the cache).Modifier and TypeFieldDescription(package private) Class<? extends BlockCache>
BlockCacheFactory.ExternalBlockCaches.clazz
Modifier and TypeMethodDescriptionstatic BlockCache
BlockCacheFactory.createBlockCache
(org.apache.hadoop.conf.Configuration conf) private static BlockCache
BlockCacheFactory.createExternalBlockcache
(org.apache.hadoop.conf.Configuration c) BlockCache.getBlockCaches()
Returns The list of sub blockcaches that make up this one; returns null if no sub caches.CombinedBlockCache.getBlockCaches()
LruAdaptiveBlockCache.getBlockCaches()
LruBlockCache.getBlockCaches()
MemcachedBlockCache.getBlockCaches()
TinyLfuBlockCache.getBlockCaches()
CombinedBlockCache.getSecondLevelCache()
Modifier and TypeMethodDescriptionBlockCacheUtil.getLoadedCachedBlocksByFile
(org.apache.hadoop.conf.Configuration conf, BlockCache bc) Get aBlockCacheUtil.CachedBlocksByFile
instance and load it up by iterating content inBlockCache
.private void
HFileReaderImpl.returnAndEvictBlock
(BlockCache cache, BlockCacheKey cacheKey, Cacheable block) void
FirstLevelBlockCache.setVictimCache
(BlockCache victimCache) Specifies the secondary cache.void
LruAdaptiveBlockCache.setVictimCache
(BlockCache victimCache) void
LruBlockCache.setVictimCache
(BlockCache victimCache) void
TinyLfuBlockCache.setVictimCache
(BlockCache victimCache) static boolean
BlockCacheUtil.shouldReplaceExistingCacheBlock
(BlockCache blockCache, BlockCacheKey cacheKey, Cacheable newBlock) Because of the region splitting, it's possible that the split key locate in the middle of a block.static String
BlockCacheUtil.toJSON
(BlockCache bc) Returns JSON string ofbc
content.private void
CombinedBlockCache.updateBlockMetrics
(Cacheable block, BlockCacheKey key, BlockCache cache, boolean caching) ModifierConstructorDescription(package private)
BlockCachesIterator
(BlockCache[] blockCaches) CacheConfig
(org.apache.hadoop.conf.Configuration conf, ColumnFamilyDescriptor family, BlockCache blockCache, ByteBuffAllocator byteBuffAllocator) Create a cache configuration using the specified configuration object and family descriptor.CacheConfig
(org.apache.hadoop.conf.Configuration conf, BlockCache blockCache) CombinedBlockCache
(FirstLevelBlockCache l1Cache, BlockCache l2Cache) -
Uses of BlockCache in org.apache.hadoop.hbase.io.hfile.bucket
Modifier and TypeClassDescriptionclass
BucketCache usesBucketAllocator
to allocate/free blocks, and uses BucketCache#ramCache and BucketCache#backingMap in order to determine if a given element is in the cache. -
Uses of BlockCache in org.apache.hadoop.hbase.regionserver
Modifier and TypeFieldDescriptionprivate BlockCache
HRegion.blockCache
private BlockCache
HRegionServer.blockCache
private BlockCache
MetricsRegionServerWrapperImpl.blockCache
private BlockCache
MetricsRegionServerWrapperImpl.l1Cache
private BlockCache
MetricsRegionServerWrapperImpl.l2Cache
Modifier and TypeMethodDescriptionHRegionServer.getBlockCache()
May be null if this is a master which not carry table.RegionServerServices.getBlockCache()
Returns The block cache instance.Modifier and TypeMethodDescriptionvoid
HRegion.setBlockCache
(BlockCache blockCache) Only used for unit test which doesn't start region server.private ResizableBlockCache
HeapMemoryManager.toResizableBlockCache
(BlockCache blockCache) ModifierConstructorDescription(package private)
HeapMemoryManager
(BlockCache blockCache, FlushRequester memStoreFlusher, Server server, RegionServerAccounting regionServerAccounting)