tiflash replica count 设置成多少是最佳的?

哪位大佬能解释一下 replica count 数的意义,通常设置几个副本是最佳的实践,与 tikv 的副本有没有相关性

3 tikv
3 tiflash

tiflash replica count 设置成 1、2、3 有什么区别

1赞

参数解释

在上面的结果中 AVAILABLE 字段表该表的 TiFlash 副本是否可用。1 代表可用,0 代表不可用。副本状态为可用之后就不再改变,如果通过 DDL 命令修改副本数则会重新计算同步进度。PROGRESS 字段代表同步进度,在 0.0~1.0 之间,1 代表至少 1 个副本已经完成同步。所以如果部署多个 tiflash 节点且 replica 的 num 大于 1 时,当一个副本同步完成, progressavailable 都是 1(实际上多副本的其他副本还在同步中)

检查配置的副本数是否小于等于集群 TiKV 节点数。若配置的副本数超过 TiKV 节点数,则 PD 不会向 TiFlash 同步数据。

3赞

replica count就是建了几个列存副本,副本数不要大于TiFlash节点数,tiflash副本是raft learner角色,tikv副本是raft follower角色。

3赞

3 tikv
3 tiflash

tiflash replica count 设置成 1、2、3 有什么区别?

多一个副本就多存一份数据,一来可以做高可用,二来均衡TiFlash节点的压力。

replica越多查询越快

大佬请问确定是replica越多查询越快吗?,2个节点tiflash我设置replica 1和replica2,是replica1查询速度快还是replica2查询速度快?

参考这个https://asktug.com/t/topic/93051

感谢大佬!了解了

  • replica_count 就是用户通过 alter table xxx set tiflash replica N 设置的期望的在 tiflash 上的数据副本数。

  • available 代表是否已经有一份完整的 tiflash 副本可用。比如说 replica_count = 2,但是数据只同步好了 1 副本,available 也是 1(因为此时可以查询了)

  • replica_count 原则上只与 高可用 相关,和查询性能没有关系。但是实践中,数据副本数太多,也可能会影响性能,原因是集群管理的数据变多了。综合高可用和查询性能,一般情况下推荐设置 2 tiflash 副本

  • tiflash 的性能和 tikv 的副本数没有相关性。

1赞

:+1:学到了

理解了感谢