一、性能管理:告别'盲调',用可视化工具精准定位瓶颈
1. SQL 语句参数值统计:揪出参数倾斜导致的慢查询
该功能自动采集 SQL 执行时的参数分布,包括过滤条件取值频率、参数类型匹配情况,并生成热力报告。
2. 数据库时间模型动态性能视图:把全链路耗时拆解开看
此动态视图将数据库处理请求的全流程拆解为解析、计划、执行、IO、锁等待等维度,支持精准统计各维度耗时。
可运行的查询语句:
-- 查询数据库时间模型耗时分布(单位:毫秒)
SELECT metric_name, total_time, round(total_time / sum(total_time) over () * 100, 2) AS time_ratio
FROM sys_time_model
WHERE total_time > 0
ORDER BY total_time DESC;
3. SQL 调优建议器:新手也能搞定慢 SQL
对于不擅长手动调优的场景,建议器结合参数统计和执行计划,自动生成可执行的优化方案。
以订单慢查询为例:
-- 原始慢 SQL(执行耗时 5.2s,全表扫描)
SELECT * FROM order_info WHERE create_time > '2025-01-01' AND user_id = 1001;
-- 调用金仓调优建议器(通过系统函数触发)
SELECT * FROM sys_sql_tuning_advise(
'SELECT * FROM order_info WHERE create_time > ''2025-01-01'' AND user_id = 1001;'
);
建议器返回的具体优化方案如下:
- 为 order_info 表添加联合索引 idx_user_create(user_id, create_time)
- 避免 SELECT *,仅查询业务需要的字段(如 order_id, amount, create_time)
- 将 create_time 的字符串条件改为日期类型,避免隐式转换
按照建议优化后,SQL 耗时直接从 5.2s 降到 0.3s,优化后的 SQL 如下:
INDEX idx_user_create order_info(user_id, create_time);
order_id, amount, create_time
order_info
create_time TO_DATE(, ) user_id ;


