TiDB 关键指标和集群资源利用率
Query Per Second、Command Per Second 和 Prepared-Plan-Cache
通过观察 Performance Overview 里的以下三个面板,可以了解应用的负载类型,与 TiDB 的交互方式,以及是否能有效地利用 TiDB 的执行计划缓存。
QPS:表示 Query Per Second,包含应用的 SQL 语句类型执行次数分布。
CPS By Type:CPS 表示 Command Per Second,Command 代表 MySQL 协议的命令类型。同样一个查询语句可以通过 query 或者 prepared statement 的命令类型发送到 TiDB。
Queries Using Plan Cache OPS:TiDB 集群每秒执行计划缓存的命中次数(即
avg-hit) 和未命中次数(即avg-miss)。StmtExecute 每秒执行次数等于
avg-hit + avg-miss。执行计划缓存只支持 prepared statement 命令。当 TiDB 开启执行计划缓存时,存在三种使用情况:- 完全无法命中执行计划缓存:每秒命中次数
avg-hit为 0,avg-miss等于 StmtExecute 命令每秒执行次数。可能的原因包括:- 应用使用了 query 命令。
- 每次 StmtExecute 执行之后,应用调用了 StmtClose 命令,导致缓存的执行计划被清理。
- StmtExecute 执行的所有语句都不符合缓存的条件,导致无法命中执行计划缓存。
- 完全命中执行计划缓存:每秒命中次数
avg-hit等于 StmtExecute 命令每秒执行次数,每秒未命中次数avg-miss等于 0。 - 部分命中执行计划缓存:每秒命中次数
avg-hit小于 StmtExecute 命令每秒执行次数。执行计划缓存目前存在一些限制,比如不支持子查询,该类型的 SQL 执行计划无法被缓存。
- 完全无法命中执行计划缓存:每秒命中次数
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




