欢迎访问 OceanBase 官网获取更多信息:https://www.oceanbase.com/
租户容量本质上是指租户的服务能力,包括计算能力和存储能力。
OceanBase 数据库支持动态调整租户容量,可以调整单节点的服务能力,也可以调整服务节点个数。前者对应垂直扩缩容,后者对应水平扩缩容。这也是 OceanBase 数据库相比于传统数据库的架构优势之一,易用的水平扩展性,可以轻松突破单机容量上限。
通过上一小节的介绍,我们了解到租户资源有若干个 Unit 组成,每个 Unit 占据节点上一定的物理资源。通过调整 Unit 的资源规格大小和 Unit 个数,及业务流量在 Unit 上的分布,从而达到调整租户容量的目的。
根据扩缩容的实现的不同方式,可以分为以下两种:
垂直扩缩容
调整 Unit 的资源规格对应着传统数据库的垂直扩缩容。
资源规格定义了常见物理资源项的大小,包括 CPU、内存、磁盘空间、IOPS 等。通过调整资源规格,从而调整租户在单节点上占据的物理资源,达到调整租户容量的目的。调整资源规格是最高效最便捷的容量瓶颈的应急手段,无需数据腾挪,秒级生效。每个节点需要预留一定的物理资源,备用于租户紧急扩容,如果预留资源不够,可以临时下调同节点上其他租户的资源规格以释放物理资源。调整资源规格的扩缩容方式受限于单机容量的上限,OceanBase 数据库的水平扩展能力适用于该场景,可以轻松突破单机容量上限。
详细的操作步骤,参见 通过调整资源规格实现租户扩缩容。
水平扩缩容
调整租户的 Unit 个数及业务流量在 Unit 上的分布对应着 OceanBase 独特的水平扩缩容方式。具体来说,通过增加 Unit Number 和增加 Primary Zone,从而增加服务节点,达到租户总服务能力的提升。
Unit Number 个数增加:表示该租户在所分布 Zone 的 Unit 个数增加,从而可以使用更多的存储资源和计算资源。
详细的操作步骤,参见 通过调整 Unit Number 实现租户扩缩容。
Primary Zone 个数增加:表示该租户的 Leader 的 Zone 分布增加,而 Leader 承担了强一致读写流量,从而可以使用更多的计算资源。相比于垂直扩容,水平扩容增加了服务节点个数,需要认真设计业务数据在 Unit 间的分布,以避免分布式事务对性能的损耗。如果预计业务量会突破单机容量上限,需要提前做好数据分片的设计,数据分片需要尽量避免分布式事务。
详细的操作步骤,参见 通过调整 Primary Zone 实现租户扩缩容。
欢迎访问 OceanBase 官网获取更多信息:https://www.oceanbase.com/




