问题描述
- hbase RowFilter 性能问题
-
hbase表中有一千万数据,id字段建有二级索引,分别用RowFilter和SingleColumnValueFilter去查询单条记录,如:Filter filter1 = new RowFilter(CompareFilter.CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes("name_id"))); //name_id是一个rowkey的值 Filter filter2 = new SingleColumnValueFilter(Bytes.toBytes("col"), Bytes.toBytes("id"), CompareFilter.CompareOp.EQUAL, Bytes.toBytes(id));
使用filter1作为过滤条件,查询很慢,使用filter2作为过滤条件,查询就很快。
我的问题是:通过rowFilter指定了rowkey查询,为什么还是这么慢?
解决方案
既然有具体Rowkey,可以直接使用Get(rowkey)方法,1000万条数据应该是在毫秒级别。
解决方案二:
怎么就没人回答呢,只能自己顶一下。。。
时间: 2024-12-11 15:32:55