tidb 慢日志问题

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【TiDB 版本】
v4.0.0
【问题描述】

Txn_start_ts: 424544480132595728

User: md_jdorder_user@172.21.0.236

Conn_ID: 320212

Query_time: 4.629548549

Parse_time: 0.000136321

Compile_time: 0.000618961

Process_time: 13.266 Wait_time: 132.383 Request_count: 957 Total_keys: 350776 Process_keys: 324780

部分慢日志显示,
1 怎么判断tidb执行的总时间(从服务发送给tidb到拿到结果的时间,类似于mysql的query_time).
2 为什么wait_time 是130s+ 而query_time 只有4s(3节点),因为总和130s,那么每个节点至少40s等待时间,这个时间不会算到query_time里面么。程序不会等待这么长时间么?


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

1.SQL 查询总耗时就是慢日志中的 Query_time;
2.Wait_time 表示这个语句在所有 TiKV 的等待时间之和,而 SQL 计算下推到 tikv 存储层时会并发计算,所以这个值累加后会比较大,同样的 process_time 也存在这个情况。慢日志具体各个字段的解释可以参考下官方文档:
https://docs.pingcap.com/zh/tidb/stable/identify-slow-queries#慢查询日志

一条sql从进入tidb到拿到结果结束,那个数值能体现总体时间,是query_time么?

就是tidb+tidb的时间总和

是的,SQL 的 query_time 反应的就是整体的查询耗时。