全部产品

读写分离

更新时间:2018-06-05 17:26:13

HBase有三个典型的API : read(get、scan)、write ,我们有时候希望这三个访问尽可能的互相不影响,可以参考如下配置:(线上默认没有配置读写分离)

场景
  • 写请求与读请求都比较高,业务往往接受:写请求慢点可以,读请求越快越好,最好有单独的资源保障
  • scan与get都比较多,业务希望scan不影响get(因为scan比较消耗资源)
相关配置:
  • hbase.ipc.server.callqueue.read.ratio
  • hbase.ipc.server.callqueue.scan.ratio
具体含义:
  • hbase.ipc.server.callqueue.read.ratio 设置为0.5,代表有50%的线程数处理读请求
  • 如果再设置hbase.ipc.server.callqueue.scan.ratio 设置为0.5,则代表在50%的读线程之中,再有50%的线程处理scan,也就是全部线程的25%
操作步骤
  • 打开HBase控制台,找到实例,点击进去,找到 - 参数设置
  • 修改配置,按照业务读写情况
  • 不重启不会生效,请在业务低峰期重启集群,重启不会中断业务,可能会有一些抖动

修改配置

请根据实际的业务配置以上数值,默认情况下是没有配置的,也就是读写都共享。