HBase get查询比较慢

旗舰 发布于 2014/02/28 09:12
阅读 2K+
收藏 0

HBase环境:3台机器,2台做data节点,1台做name节点,目前数据量有4亿,存储达到2.6TB左右

机器配置:IBM3650,24CPU,32GB内存

现在查询比较慢,在没有缓存的情况下,拿到一个rowkey,到HBase get,平均需要3.4s,极端时刻有时需要5到6s.........

请教各位N,怎么破解?

加载中
0
一只小桃子
一只小桃子
多搞几台机器。。。。
0
旗舰
旗舰
@中山野鬼,大叔这个怎么破
0
顾海林
顾海林
建议加机器,多说一句,HBase想要查询快就得提高缓存命中率,否则HBase会从存储在Hdfs上的HFile取数据,从HDFS上直接取数据速度你可想而知。再多说一句,你机器的内存太小了。
旗舰
旗舰
=》多加机器,这个最后考虑,资源有限,呵呵; 我的rowkey是从索引库,根据关键词查出来的,在第一次查询没有缓存的基础上,10个rowkey直接几乎都是散列的
0
s
sdasfd34
get一条数据不至于这么慢吧,rowkey没有设计好?机器是少了点,起码要5台吧,这么少机器hbase的优势发挥不了
旗舰
旗舰
回复 @dragon_blog : 你的查询也这么慢?
s
sdasfd34
@旗舰 我现在也在烦着效率的问题,但是我们有7台机器的集群,之前查8亿数据,就是从二级索引表中查询都用了5s。我觉得表的设计不过不够好的话,估计快不了,剩下的估计就是环境配置问题了
旗舰
旗舰
我的rowkey是从索引查出来的,也就是说先从根据关键词从索引库里查询,比如根据“张三”查到了10条相关的数据rowkey,然后用这些rowkey到HBase里面查。这10个rowkey基本上是散列的,对于HBase的rowkey连续性特点,我这种应用集合也应用不到吧?
0
旗舰
旗舰
自己先顶起,继续提问。。。
返回顶部
顶部