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查询,为什么还是这么慢?