刚接触 OceanBase 的时候,“租户” 这个概念绕了我一阵子,今天把它捋顺了,分享给同样刚上手的兄弟。
一句话理解:集群是 “硬件 / 部署” 层面的事,租户是 “资源 / 逻辑” 层面的事。
集群是物理概念 —— 一堆节点、Zone 按地域(Region)组织起来;而租户是在这些物理节点上 “切” 出来的一块逻辑资源,能指定 CPU、内存、日志盘、IOPS 这些配额,就跟你开一台虚拟机给固定资源差不多。
再直白点:租户就约等于传统数据库里的 “实例”,在租户下面照样建库、建表、建用户,但好处是它独占一块配额,而且配额能动态调,不用动物理机器。
为什么用多租户?主要是两类场景:一是资源整合,多套业务挤在一套集群上,省机器省运维;二是 SaaS,一个集群给一堆客户各开一个租户,互不干扰。
我现在的理解是:想管好 OceanBase,先分清 “集群管部署、租户管资源” 这个大框架,后面看日志、做扩容都不容易懵。有理解不到位的地方欢迎指正。