Advertisement

HBase的行缓存和列式缓存机制分别用于高效读取和快速写入

阅读量:

目录

  • 读写缓存
  • BlockCache
    • LRUBlockCache
    • SlabCache
    • BucketCache

读写缓存

HBase中的RegionServer缓存系统主要包含两部分: memstore 和 blockcache 。其中 memstore 主要用于存储临时性 writes ,而 blockcache 则用于存储持久化的 read 数据 。当数据被写入 HBase存储系统时 ,会首先将数据存储在 memstore 中 。当 memstore 中的数据量达到预设的内存阈值后 ,会触发 flush 操作将该 memstore 的数据持久化至磁盘 。对于客户的读取请求而言 ,如果未在 memstore 中找到所需的数据 ,则会继续查询 blockcache 。如果 still 未找到对应的数据 ,则需要从磁盘上进行读取操作 ,并将读取到的新数据同时更新至 blockcache 中 。其中 BlockCache 采用了基于最近使用频率( LRU )的淘汰策略 ,因此在其容量达到 heapsize × hfile.block.cache.size × 0.85 的上限后 ,将会启动淘汰机制 ,永久删除掉最久未被访问的一批旧数据 。

BlockCache

在高效数据获取方面进行配置以优化性能,在内存

全部评论 (0)

还没有任何评论哟~