开发者社区 问答 正文

麻烦问一个OceanBase数据库每个租户的这几个表都是必有的对吧,这几个也都是隔离的对吧?

麻烦问一个OceanBase数据库每个租户的这几个表都是必有的对吧,这几个也都是隔离的对吧?

展开
收起
真的很搞笑 2023-12-05 22:11:56 132 分享 版权
来自: OceanBase
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在OceanBase数据库中,采用了多租户架构,每个租户都是独立的实例,拥有自己独享的访问端口、CPU和内存资源。这意味着每个租户之间在数据、权限以及资源上都是隔离的。此外,OceanBase数据库通过租户实现资源隔离,保证每个数据库服务的实例不会感知到其他实例的存在。这样的设计使得不同租户之间的表也是相互隔离的。所以,对于您的问题,“这几个表是否必有”以及“这些表是否都是隔离的”,答案都是肯定的。

    2023-12-06 13:07:23
    赞同 展开评论
  • 资源隔离概述https://www.oceanbase.com/docs/common-ocp-1000000000348172

    资源隔离方式
    OCP 的资源隔离从使用粒度,可以分为以下三种类型:

    用户资源隔离

    用于指定用户与资源组的映射关系,使该用户执行的所有 SQL 使用的资源即为对应 Group 分配的资源,通过使用该特性,可以让不同用户执行不同类型的任务。

    后台任务隔离

    用于指定后台任务与资源组的映射关系,隔离各任务使用的资源。当前支持 8 种后台任务的使用资源。

    compaction_high: Mini Merge 和 DDL KV Merge 任务。

    ha_high:复制、Rebuild 和恢复等高优先级高可靠任务。

    compaction_mid:Minor Merge 任务。

    ha_mid:中优先级高可靠任务,例如迁移任务。

    compaction_low:Major Merge 任务。

    ha_low:备份和备份清理等低优先级高可靠任务。

    ddl:唯一索引校验、删列补数据等场景的任务。

    ddl_high:DDL MemTable 的转储任务。

    SQL 级资源隔离

    SQL 级的资源隔离是比用户级粒度更细的隔离方式。通常适用的场景是,业务中存在多个账号,处理一个账号的一个订单时,会开启一个事务然后执行一批与该账号相关的 SQL (通常是在 WHERE 条件中指定账号的值)。账号中可能存在大账号(数据量较大)和小账号(数据量较小),为了避免大账号把 CPU 资源用完导致小账号的订单无法得到处理,可以将处理不同订单的 SQL 绑定到不同的资源组,绑定后不同订单的 SQL 就会使用不同资源组的资源。

    2023-12-06 09:58:03
    赞同 展开评论