慢SQL 诊断
⚫ 慢SQL提供给用户对于慢SQL诊断所需的详细信息,用户无需通过复现就能离线诊断特定 慢SQL的性能问题。表和函数接口方便用户统计慢SQL指标,对接第三方平台。
⚫ 慢SQL诊断提供诊断慢SQL所需要的必要信息,帮助开发者回溯执行时间超过阈值的SQL, 诊断SQL性能瓶颈。
⚫ 慢SQL能根据用户提供的执行时间阈值(log_min_duration_statement),记录所有超 过阈值的执行完毕的作业信息。
⚫ 慢SQL提供表和函数两种维度的查询接口,用户从接口中能查询到作业的执行计划,开
始、结束执行时间,执行查询的语句,行活动,内核时间,CPU时间,执行时间,解析
时间,编译时间,查询重写时间,计划生成时间,网络时间,IO时间,网络开销,锁开
销等。所有信息都是脱敏的。
慢SQL 诊断—特性增强
⚫ 增加对慢SQL指标信息,安全性(脱敏),执行计划,查询接口的增强。
执行命令查看数据库实例中SQL语句执行信息
gsql> select * from dbe_perf.get_global_full_sql_by_timestamp(start_timestamp, end_timestamp);
例如:
postgres=# select * from DBE_PERF.get_global_full_sql_by_timestamp('2020-12-01 09:25:22', '2020-12-31 23:54:41');
-[ RECORD 1 ]--------+--------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------
node_name | coordinator1
db_name | postgres
schema_name | "$user",public
origin_node | 1938253334
user_name | user_dj
application_name | gsql
client_addr |
client_port | -1
unique_query_id | 3671179229
debug_query_id | 72339069014839210
query | select name, setting from pg_settings where name in (?)
start_time | 2020-12-19 16:19:51.216818+08
finish_time | 2020-12-19 16:19:51.224513+08
...
query_plan | Coordinator Name: coordinator1
| Function Scan on pg_show_all_settings a (cost=0.00..12.50 rows=5 width=64)
| Filter: (name = '***'::text)
...




