OceanBase 分析分布式计划相关的查询问题

分布式计划根据以下步骤分析查询问题:

  1. 通过查看 (g)v$plan_cache_plan_stat 视图、(g)v$sql_audit 中对执行计划类型的记录,确定是否为分布式计划。

  2. 分析该执行计划是否正确。

  3. 通过 trace_id 关联查询 gv$sql_audit,查看所有执行的子计划耗时情况,每个子计划的 RPC 执行均对应一条 sql_audit 记录,分析该 sql_audit 记录来定位问题。

如下例所示,is_executor_rpc = 1 表示子计划执行在 sql_audit 中记录,主要记录执行相关的信息。is_executor_rpc = 0 表示接受 SQL 请求的线程在 sql_audit 中的记录。该记录含有 SQL 执行过程的信息,包括 SQL 信息、获取执行计划信息等。

obclient>SELECT/*+ PARALLEL(15)*/sql_id, is_executor_rpc, elapsed_time 
           FROM oceanbase.gv$sql_audit WHERE trace_id = 'YB420AB74FC6-00056349D323483A';

+----------------------------------+-----------------+--------------+
| sql_id                           | is_executor_rpc | elapsed_time |
+----------------------------------+-----------------+--------------+
|                                  |               1 |          124 |
|                                  |               1 |          191 |
|                                  |               1 |       123447 |
|                                  |               1 |          125 |
| 20172B18BC9EE3F806D4149895754CE0 |               0 |       125192 |
|                                  |               1 |          148 |
|                                  |               1 |          149 |
|                                  |               1 |          140 |
+----------------------------------+-----------------+--------------+
唐伯虎点蚊香

前端小白,想各位学习!

Share
Published by
唐伯虎点蚊香

Recent Posts

vue:页面注入js修改input值

一般会直接这样写: let z…

6 小时 ago

聊聊vue3中的defineProps

在Vue 3中,defineP…

1 周 ago

在 Chrome 中删除、允许和管理 Cookie

您可以选择删除现有 Cooki…

2 周 ago

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

3 周 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

4 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

1 月 ago