二、单选题
1.OceanBase 的租户的资源分配的流程是?
A 1、定义资源规格2、创建资源池3、系统在 observer上分配资源4、创建租户
B 1、创建资源池2、定义资源规格3、系统在 observer上分配资源4、创建租户
C 1、创建租户2、创建资源池3、定义资源规格4、系统在 observer 上分配资源
D 1、定义资源规格2、创建租户3、创建资源池4、系统在 observer 上分配资源
答:A
解析:这里的资源规格,我们可以想象成一个小的虚拟机,提供(CPU、内存、disk、session 和 IOPS)这些能力,
资源池可以理解成在哪些物理机上部署这些虚拟机(unit),资源的总量=unit的规格*unit的数量,
租户绑定到一个或者多个资源池进行数据的存储。
2.客户的 OceanBase 集群有三个 zone,分别为 z1,z2,z3。在正常情况下,客户的读写流量只访问 z1 的数据库节点;在 z1 整体出现故障的场景下,读写流量需要均分到 z2 和 z3。为满足上述业务需求,如下 primary zone 设置正确的是?
A (z1,z2,z3)
B (z1;z2;z3)
C (z1;z2,z3)
D (z1,z2;z3)
答:C
解析:primary zone 表示 leader 副本的偏好位置, 指定 primary zone 实际上是指定了 leader 更趋向于被调度到哪个zone 上。
规则:当primary zone列表包含多个zone时,用;分隔的具有从高到底的优先级;用,分隔的具有相同优先级。
https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.1/data-copy-and-service
3.OceanBase 默认单个SQL语句的 timeout 时间是多少?
A 1s
B 100s
C 10s
D 无限制
答:C
解析:可以登录租户后查看一下变量,show variables like 'ob_query_timeout';
https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.1/ob_query_timeout
4.对于分布式事务,业务数据模型的设计原则是 ?
A 尽量避免跨机分布式事务
B OceanBase 对于两阶段提交做了优化,不需要考虑分布式事务的效率因素
C 尽量避免设计多张表的业务
D 尽可能多利用 OB 跨机分布式事务的能力
答:A
解析:分布式事务涉及跨节点协同交互,其性能是没有本地事物好的,所以OB在这里提供了表组的设计,
对经常会被同时访问的一组表,为了优化性能,需要将它们相同分区ID对应的分区存储在同一个observer服务器中,且这些分区副本的 leader 也位于一台observer上。
从这里不难看出在我们平时的业务模型设计上应该避免跨机分布式事务。
https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.1/about-table-groups
5.参数(应该是变量)ob_trx_timeout的默认值是?
A 120秒
B 10秒
C 100秒
D 1000秒
答: C
解析:可以登录租户后查看一下变量,show variables like 'ob_trx_timeout';
https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.1/ob_trx_timeout
6.OceanBase 对分区扩展的描述,哪个正确?
A Range 分区支持添加后续分区
B Hash 分区支持删除现有分区
C 都不支持扩展
D Key 分区支持添加后续分区
答:A
解析:对于 Range 分区,只能在最大的分区之后添加一个分区,不可以在中间某个或者开始的地方添加。如果当前的分区中有 MAXVALUE 的分区,则不能继续添加分区,所以A正确
对于 Hash/Key 分区,目前 OceanBase 数据库暂不支持添加一级分区。
对于 Hash/Key 分区,目前 OceanBase 数据库暂不支持删除一级分区。
https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.1/level-1-partition-table
7.对于 key 分区类型的分区表,如果在建表语句中,不指定任何分区键,比如 partition by key() partitions 5, 则会?
A 没有分区键
B 以主键作为分区键
C 以建表语句的第一列作为分区键
D 该语法有问题,分区键不能为空,该 DDL 语句会报错
答:B
解析:"Key 分区的分区键中不指定任何列时,表示 Key 分区的分区键是主键"
https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.1/partitioning-policy-3