47.1。对于快速失败比等待更好的应用

  • 在客户端的hbase-site.xml中,设置以下参数:

    • 设置hbase.client.pause = 1000

    • 设置hbase.client.retries.number = 3

    • 如果你想骑过分裂和区​​域移动,大幅增加hbase.client.retries.number(> = 20)

    • 设置 RecoverableZookeeper 重试次数:zookeeper.recovery.retry = 1(不重试)

  • 在服务器端的hbase-site.xml中,设置 Zookeeper 会话超时以检测服务器故障:zookeeper.session.timeout⇐30 秒(20-30 是好的)。

47.2。适用于可以容忍稍微过时信息的应用程序

**HBase 时间轴一致性(HBASE-10070)**启用只读副本后,区域(副本)的只读副本将分布在群集上。一个 RegionServer 为默认或主副本提供服务,这是唯一可以为写入提供服务的副本。其他 RegionServers 服务于辅助副本,遵循主 RegionServer,并且只能查看已提交的更新。辅助副本是只读的,但可以在主服务器故障转移时立即提供读取,从而将读取可用性从几秒钟缩短到几毫秒。 Phoenix 支持时间轴一致性,自 4.4.0 提示:

  • 部署 HBase 1.0.0 或更高版本。

  • 在服务器端启用时间轴一致的副本。

  • 使用以下方法之一设置时间轴一致性:

    • 使用ALTER SESSION SET CONSISTENCY = 'TIMELINE’

    • 在 JDBC 连接字符串中将连接属性Consistency设置为timeline

47.3。更多信息

有关操作和性能架构设计选项的更多信息,请参见性能部分 perf.schema ,例如布隆过滤器,表配置的区域大小,压缩和块大小。