【已解决】doris resource_group不同的划分方案能否提高节点可用性?

Viewed 47

背景

生产环境数据目前是存的3副本, 现有6个be节点, 启用了doris的resource_group特性, 一个writer分组对应4个节点承担2个副本, 一个reader分组对应2个节点承担一个副本

问题

  1. 这种部署划分方案下, 最多允许挂掉几台be? 以下是我们的测算, 不知道是否正确
    我们自己测算的话, reader分组两台都可以挂掉, 从writer分组下进行读写. writer分组最多只能挂1台, 挂两台可能部分表的2个副本刚好在这两台机器上就只剩下一个副本了.
  2. 如果将writer下的4台节点再拆分成writerA和writerB两个分组, 表副本分布策略为: reader:1, writerA:1, writerB:1, 相比现在的分布策略, 可以允许writerA或WriterB任一分组两台节点都挂掉, 这样可用性感觉会高一点, 请问这种方式是否推荐?
  3. 如果推荐使用第2个问题中的划分方案的话, 在生产环境进行集群resource_group调整的操作有啥大的风险吗?
1 Answers

两个点:

  1. Doris中3副本表由于多数协议是可以允许单节点故障的,就是说如过这张表是3副本,分散在3个group 中,可以允许其中一个group的节点全部挂掉,不影响读写,因为每个group承担一个副本,挂掉一个副本也不影响这张表的读写。所以只要满足:3副本允许单节点故障这个规则就好。
  2. 生产环境中一般是不建议对集群进行硬划分的操作,因为涉及到一些group之间的副本划分和迁移,风险也会比较高。