OceanBase 中租户的资源隔离主要依靠哪两个核心参数控制,简述二者作用?

OceanBase 中租户的资源隔离主要依靠哪两个核心参数控制,简述二者作用?

1 个赞

OceanBase 中租户的资源隔离主要由 CPU(中央处理器)Memory(内存) 这两个核心参数控制。二者分工明确:CPU参数主要控制租户的计算能力上限,而内存参数则直接划定了租户能使用的存储资源边界。

1 个赞

在OceanBase数据库中,租户资源隔离的两个核心参数是 CPU内存(Memory) 。 1. CPU 隔离

  • 作用:控制租户对CPU资源的使用,防止不同租户之间因CPU争抢而影响性能。
  • 实现方式
    • V3.1.x 版本之前,OceanBase 主要通过 控制活跃线程数量 来限制 CPU 消耗。
    • V3.1.x 及之后版本,支持通过 cgroup 进行 CPU 资源隔离,但需要操作系统级别的配置配合生效。
  • 相关参数
    • MAX_CPU:指定租户可使用的最大CPU资源。
    • MIN_CPU(可选):指定租户可保证的最小CPU资源。

2. 内存(Memory)隔离

  • 作用:确保每个租户拥有独立的内存空间,避免内存争抢导致系统不稳定。
  • 实现方式
    • V4.0.0 版本开始,OceanBase 不再支持内存超卖,以提高租户工作的稳定性。
    • 废弃了旧的 MIN_MEMORYMAX_MEMORY 参数,改用统一的 MEMORY_SIZE 参数来指定内存大小。
  • 相关参数
    • MEMORY_SIZE:直接指定租户可使用的内存总量。