HBase有三个典型的API : read(get、scan)、write ,若需三个访问互相不影响,可以参见如下配置(线上默认没有配置读写分离)。

场景

  • 写请求与读请求都比较高,业务往往接受:写请求慢点可以,读请求越快越好,最好有单独的资源保障。
  • scan与get都比较多,业务希望scan不影响get(因为scan比较消耗资源)。

相关配置

  • hbase.ipc.server.callqueue.read.ratio:设置为0.5,代表有50%的线程数处理读请求。
  • hbase.ipc.server.callqueue.scan.ratio:如果同时设置为0.5,则代表在50%的读线程之中,再有50%的线程处理scan,也就是全部线程的25%。

操作步骤

  1. 打开HBase控制台,单击目标实例,找到参数设置
  2. 修改配置,按照业务读写情况。
  3. 不重启不会生效,请在业务低峰期重启集群,重启不会中断业务,可能会有一些抖动。

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