Hbase not support MemStore to BlockCache

原文地址: http://web.archiveorange.com/archive/v/kaweJLpl8BCoXAfi3S8p

 

提问题的这个哥们还是蛮有想法的,今天还想HBase的写操作会不会经过LruBlockCache,看完代码以后,答案是否定地~

we are trying to read efficiently a hot column family (in_memory=true,
blockcaching=true) that get writes at say 500 qps and reads at 10,000 qps.

- as long as writes are in memstore we get them from memstore and its fast
- if we have read it once it will be at least in block cache (gets priority
due to in_memory=true) and subsequent reads are faster
- however memstore flush puts records on disk which demands for disk IO to
get them back in block cache

is there a way for memstore flush to go to blockcache?


-- Abhijit

-----------------------

Not currently.

Blockcache is made of blocks pulled from HDFS. It'd be a little
awkward inserting hot records into the block cache w/o going via HDFS.

But, yes, you have a good point that flush is disruptive of hot records.

In the past we talked of a keyvalue cache on top of the block cache
but it fell out of favor because block cache seemed to be good enough
but sounds like we need to revive it or do some fancy dancing if
column family is marked in-memory, we keep around the snapshot of
memstore until we know the block cache has been populated?

Any other suggestions?

File an issue. We need to come up w/ a fix for this case.

Thanks for writing the list,

St.Ack

------------------------

thanks bunch stack for the response.

agree, we should work towards it. very attractive feature for onlinestore
use case of hbase

i will open a Jira and as we ramp-up on HBase here, might be able to discuss
solutions and potentially work on adding this feature

-- Abhijit
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值