Hbase 学习(四) hbase客户端设置缓存优化查询

  • 时间:
  • 浏览:1

下面展示的是当batch=3,caching=6完后 的图,是一次RPCs的传递的数据。

接着大家继续看下图

一次查询20条记录励志的话 ,只只有3次RPCs,列数在10列以内的数据,取20条,20/10即可,为那先 是3呢,将会还有一次RPC是用来确认的。

这就好说啦,那我大家就只有用来优化大家的scan查询了,在查询的完后 ,按照查询的列数动态设置batch,将会全查,则根据另一方所有的表的大小设置一两个 折中的数值,caching就和分页的值一样就行。

首先是大家的客户端代码

当caching和batch都为1的完后 ,大家要返回10行具有20列的记录,就要进行201次RPC,将会每一列都作为一两个 单独的Result来返回,那我是大家不只有接受的。

有个公式RPCs = (Rows * Cols per Row) / Min(Cols per Row, Batch Size)/ Scanner Caching 。

大家在用hbase的api对hbase进行scan操作的完后 ,只有设置caching和batch来提交查询效率,那它们之间的关系是啥样的呢,大家又应该咋样去设置?