数据库基础组件介绍 
==============================

为了更好地管理 OceanBase 数据库，您需要了解 OceanBase 数据库的基础组件信息，包括 OceanBase 集群、Zone 、OBServer、资源池、租户、分区等。

OceanBase 数据库是由蚂蚁集团、阿里巴巴完全自主研发的金融级分布式关系数据库。OceanBase 数据库通过 OceanBase 集群来进行管理。一个 OceanBase 集群由多个 Zone 组成，Zone 的个数大于等于 3 个，每个 Zone 又包含了多个 OceanBase 服务器（observer 进程运行在这些服务器上），一般情况下各个 Zone 内的机器配置与数量保持一致，多台 OceanBase 服务器作为资源组成各个业务所需的资源池。管理员可以根据业务情况，将资源再划分成不同大小的资源池分配给租户使用，一般建议高性能要求的业务分配大资源池，低性能要求的业务分配小资源池。

租户拥有资源池后，可以创建数据库、表、分区等。

OceanBase 数据库基础组件之间的关系如下图所示。![基础组件图](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/3410242161/p236768.png)

OceanBase 集群、Zone 和 OceanBase 服务器 
------------------------------------------------------

一个集群由多个 Zone 组成，每一份数据在各个 Zone 上都会有一份副本，并且只能有一份副本，这样一个 Zone 故障后不会影响业务正常运行和数据的完整性。从物理角度上来说，不同的 Zone 可以对应不同的城市；也可以对应一个城市的不同机房；还可以对应一个机房的不同机架，从而实现不同级别的容灾。

Zone 的个数大于等于 3 个，因为 OceanBase 数据库采用 Paxos 协议，多数派需要达成一致，3 个及以上的 Zone 可以保证当 1 个 Zone 故障后，剩下的 2 个 Zone 内的副本依然还可以构成多数派，不影响业务。
OceanBase 服务器相对独立，拥有自己的计算引擎和存储引擎，也会有部分数据。对业务而言，每台 OceanBase 服务器均是一台传统的集中式数据库，业务访问到这台 OceanBase 服务器后，如果需要访
问的数据在其它 OceanBase 服务器上，它们自己会自动协商调度，对业务无感知。

资源池和租户 
---------------------------

集群的多个服务器组成了一个大的资源池，管理员会根据各个租户的要求，创建与之对应的虚拟资源池给租户使用，资源池包括指定规格的 CPU、内存、存储、TPS、QPS 等。为了避免租户之间争抢资源，租户之间的资源相互隔离，内存是物理隔离、CPU 是逻辑隔离。

系统租户保存系统表，一般系统租户的 ID 为 1000 以内。剩下的是业务租户，创建租户时只支持 MySQL 模式的租户。
