OceanBase各位大佬,如果搭建一个2-1-1的集群;zone1创建一个规格,然后pool1=unit1,zonelist=zone1;zone2\3创建一个规格,然后poo2=unit2,zonelist=zone2,zone3;这样使用OB有问题吗? 我理解的是假如我这样搭建了,假设表1有8个分片,zone1里面因为是两个unit,所以每个unit上各4个分片;然后zone2、3只有1台机器,所以每个unit里面8个分片;总的来说,仍然是3个副本;坏任意一台机器,集群仍然是好的,我这样理解对吗?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在 OceanBase 集群中,一个副本集(Replica Set)通常包含三个副本(Replica),分别位于不同的物理服务器上,以确保数据的高可用性和容错性。通常情况下,副本集的分布情况为 3-3-3 或者 2-2-2-1,即每个副本集分别包含 3 个副本或者 4 个副本。
如果您要搭建一个 2-1-1 的集群,意味着有两个副本集,每个副本集包含 2 个副本和 1 个副本。
你的理解大致是正确的。在你描述的这种 OceanBase 集群架构中(2-1-1),根据你的配置,有以下几个方面需要注意:
分片数量:根据你的描述,表1有8个分片。在 zone1 中,每个 unit 上分配了 4 个分片,而在 zone2 和 zone3 的每个 unit 上分配了 8 个分片。这样总共有 3 个副本,确保任意一台机器故障时都有备份。
数据分布:由于 zone1 中有两个 unit,它们将负责处理 zone1 的数据。zone2 和 zone3 各有一个 unit,它们将负责处理 zone2 和 zone3 的数据。这样可以实现数据的分布和负载均衡。
容错性:在你的配置中,即使任何一个 zone 发生故障,集群仍然能正常运行。因为每个分片都有 3 个副本,其中一个副本位于 zone1,另外两个副本位于 zone2 和 zone3。即使其中一个 zone 故障,其他两个 zone 仍然可以提供服务。
照你那样说,zone1里面为什么会有两个unit??? zone1里面有几个unit不是要看你创建pool1时给了多少个unit_num吗 是好像在哪里见过这种架构介绍,但不建议,此回答整理自钉群“[社区]技术答疑群OceanBase”