OceaBase 4.0 推出了的单机模式,单机模式与分布式架构中的单副本模式有何区别?

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】清晰明确描述问题
OceaBase 4.0 推出了的单机分布式一体化架构,想请问集中的单机模式与分布式架构下的单副本模式的区别是?使用分布式架构下的单副本模式是否就相当于是4.0里单机模式的概念?因为分布式架构的单副本模式在2.X、3.X版本中就能直接提供,因此4.0推出的单机模式并不是新事物?
谢谢
【复现路径】问题出现前后相关操作
【问题现象及影响】

【附件】

资源规格降低,处理能力提升,兼容性增强,更加open

??????

OB 4.0是单机分布式一体化的架构,在一台机器上事务的处理开销与一台单机数据库相当,所以用户可以把OB当作单机数据库来使用。同时OB中存储的数据又拥有迁移扩展的能力,其扩展性与其他分布式数据库相当,当用户需要扩容时通过新增机器就能完成集群的扩容。OB 4.0使用一套架构可以既满足使用单机数据库的需求又能满足分布式数据库的需求。

虽然在OB3.x也支持单副本/单机部署的模式,但存在以下等问题:

  • 单机支持的分区数量受限制,分区数量多了之后系统的消耗非常大并且稳定性受影响,
  • 单机上的数据修改,如果涉及多个分区,也需要两阶段提交协议来保证原子性,性能上有很多损耗。

在OB3.x中,事务的提交单位和数据迁移单位可以理解是以分区为粒度的,OB4.0里引入了单机日志流,和 tablet,在OB4.0开始事务提交单位和数据迁移单位分开了,事务提交单位是日志流,数据迁移单位是tablet,table/partition是用户创建的逻辑,tablet是对应的物理存储对象。大幅提高了单机的分区上限,单机多分区的事务不需要两阶段提交来,同时减少了事务参与者的数量,提高了事务提交的性能。

2 个赞