开发者社区> 问答> 正文

OceanBase一个zone里面的数据只有一份 比如我创一个表 有8个partition 有办法?

OceanBase一个zone里面的数据只有一份 比如我创一个表 有8个partition 有办法让一个zone内两个observer都存一部分partition么?

展开
收起
真的很搞笑 2023-06-03 11:17:13 128 0
来自:OceanBase
2 条回答
写回答
取消 提交回答
  • 可以在同一个zone内的多个observer上存储同一张表的不同分区。在这种情况下,您需要通过在创建表时指定不同的ReplicaNum和PartitionNum来实现。

    具体来说,对于一个有8个partition的表,您可以将ReplicaNum设置为2,然后将PartitionNum设置为4。这意味着每个observer仅存储其中4个分区,并且两个observer一起存储了完整的8个分区。

    当两个observer均可用时,OceanBase会根据算法将请求均匀地发送到两个observer上,以实现负载平衡和高可用性。但是当某个observer宕机时,OceanBase仍然可以使用另一个observer上的数据提供服务,因此数据的可用性不会受到影响。

    需要注意的是,对于同一个ReplicaNum和PartitionNum,OceanBase仅支持在同一个zone内的多个observer上存储相同数量的分区,因为这可以确保在有多个observer宕机时仍然能够提供服务。因此,如果您想在两个observer上存储不同数量的分区,最好使用不同的ReplicaNum和PartitionNum来创建表。

    2023-06-03 11:49:24
    赞同 展开评论 打赏
  • 调整unit_num =2,此回答整理自钉群“[社区]技术答疑群OceanBase”

    2023-06-03 11:47:12
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
蚂蚁OceanBase数据库团队,用于OceanBase技术原理、运维经验和案例分享、对外交流。
问答排行榜
最热
最新

相关电子书

更多
开源HTAP OceanBase产品揭秘 立即下载
云数据库OceanBase 架构演进及在金融核心系统中的实践 立即下载
自研金融数据库OceanBase的创新之路 立即下载