关于tablegroup的疑问

【产品名称】

【产品版本】

【问题描述】

可以通过查看什么指标来识别应该创建tablegroup缓解性能问题。

1.tablegroup介绍

table group是一组表的集合。通过定义table group,用户可以控制一组表在物理存储上的临近关系。特别地,对于包含分区表的table group,它由若干个partition group组成,每一个partition group包含每个分区表的一个分区。一般地,属于同一个partition group的所有partition,系统会通过自动调度使得他们位于同一台observer服务器上,且这些分区副本的leader也位于一台observer上。

  1. partition group是负载均衡等操作的最小的迁移单位
  2. partition group是切换leader的单位
  3. 一个partition group内的分区,物理上位于同一个replication group内

除了用来定义“临近”关系,分区表本身隐含的“分片”作用,要求系统在调度的时候,还会把同一个table group的不同partition group尽量在多个可用的机器间分散来开,以支持水平自动扩展。

2.通过查看什么指标来识别应该创建tablegroup缓解性能?

select count(*), plan_type   from oceanbase.gv$sql_audit where tenant_id=100x group by plan_type;

plan_type=1:本地计划,性能最好local

plan_type=2 远程计划,一般可能是路由不准

plan_type=3 分布式计划,可以考虑创建tablegroup缓解规避分布式执行