0 码力 |
4807 页 |
101.31 MB
| 1 年前 3
“lock”、“outdated” 和 “full” 等。“outdated” 表示请求超时,很可能 是由于排队时间过久,或者单个请求的耗时比较长。“full” 表示 Coprocessor 的请求队列已经满了,可 能是正在执行的请求比较耗时,导致新来的请求都在排队。耗时比较长的查询需要查看下对应的执行 计划是否正确。 268 7.5.3.3.8 TiKV_coprocessor_request_lock_error • Wait_time:表示这个语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等 待时间都会增加。 281 • Process_keys:表示 Coprocessor 处理的 key 的数量。相比 total_keys,processed_keys 的语句都是有问题的。会造成集群整体压力增大的,是那些 process_time 很大的语句。 wait_time 很大,但 process_time 很小的语句通常不是问题语句,是因为被问题语句阻塞,在执行队列等待造成 的响应时间过长。 8.1.8 admin show slow 命令 除了获取 TiDB 日志,还有一种定位慢查询的方式是通过 admin show slow SQL 命令: admin
0 码力 |
2259 页 |
48.16 MB
| 1 年前 3
• Wait_time:表示这个语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等 待时间都会增加。 • Process_keys:表示 Coprocessor 处理的 key 的数量。相比 total_keys,processed_keys 的语句都是有问题的。会造成集群整体压力增大的,是那些 process_time 很大的语句。 wait_time 很大,但 process_time 很小的语句通常不是问题语句,是因为被问题语句阻塞,在执行队列等待造成 的响应时间过长。 8.1.8 admin show slow 命令 除了获取 TiDB 日志,还有一种定位慢查询的方式是通过 admin show slow SQL 命令: admin 291 • wait_time:该语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等待时间都 会增加。 • request_count:该语句发送的 Coprocessor 请求的数量。 • total_keys:Coprocessor
0 码力 |
2189 页 |
47.96 MB
| 1 年前 3
以下为计划将在未来版本中废弃的功能: – TiDB 在 v8.0.0 引入了系统变量tidb_enable_auto_analyze_priority_queue,用于控制是否启用优先 队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任 务的唯一排序方式,系统变量tidb_enable_auto_analyze_priority_queue 将被废弃。 42 – TiDB 在 4.2 升级到 v6.2.0 及以上版本时,如何解决升级卡住的问题 从 v6.2.0 开始,TiDB 默认开启并发 DDL 框架执行并发 DDL。该框架改变了 DDL 作业存储方式,由 KV 队列变为表 队列。这一变化可能会导致部分升级场景卡住。下面是一些会触发该问题的场景及解决方案: • 加载插件导致的卡住 升级过程中加载部分插件时需要执行 DDL 语句,此时会卡住升级。 解决方案:升级过 0,则无需关闭 TiDB 分布式执行框架,请忽略此限制。 • 在使用 TiUP 进行升级的场景下,由于 TiUP 升级存在超时时间,如果在升级之前集群中有大量 DDL(超过 300 条)正在处理队列中等待执行,则此次升级可能会失败。 • 在升级过程中,不允许以下操作: – 对系统表(mysql.*、information_schema.*、performance_schema.*、metrics_schema
0 码力 |
4987 页 |
102.91 MB
| 10 月前 3
4.2 升级到 v6.2.0 及以上版本时,如何解决升级卡住的问题 从 v6.2.0 开始,TiDB 默认开启并发 DDL 框架执行并发 DDL。该框架改变了 DDL 作业存储方式,由 KV 队列变为表 队列。这一变化可能会导致部分升级场景卡住。下面是一些会触发该问题的场景及解决方案: • 加载插件导致的卡住 升级过程中加载部分插件时需要执行 DDL 语句,此时会卡住升级。 解决方案:升级过 pause,TiDB 会尝试重试。如果重试失败,会报错并退出升级。 • 在使用 TiUP 进行升级的场景下,由于 TiUP 升级存在超时时间,如果在升级之前集群中有大量 DDL(超过 300 条)正在处理队列中等待执行,则此次升级可能会失败。 • 在升级过程中,不允许以下操作: – 对系统表(mysql.*、information_schema.*、performance_schema.*、metrics_schema PRIORITY 高的任务会被优先调度。如果没有设置绝对优先级 (PRIORITY),TiKV 会将资源组的 RU_PER_SEC 取值映射成各自资源组读写请求的优先级,并基于各自的优先级在存储层使用优先级队列调度处理请 求。 8.5.1 使用场景 资源管控特性的引入对 TiDB 具有里程碑的意义。它能够将一个分布式数据库集群划分成多个逻辑单元,即使 个别单元对资源过度使用,也不会挤占其他单元所需的资源。利用该特性:
0 码力 |
4369 页 |
98.92 MB
| 1 年前 3
• Wait_time:表示这个语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等 待时间都会增加。 • Process_keys:表示 Coprocessor 处理的 key 的数量。相比 total_keys,processed_keys 的语句都是有问题的。会造成集群整体压力增大的,是那些 process_time 很大的语句。 wait_time 很大,但 process_time 很小的语句通常不是问题语句,是因为被问题语句阻塞,在执行队列等待造成 的响应时间过长。 8.1.8 admin show slow 命令 除了获取 TiDB 日志,还有一种定位慢查询的方式是通过 admin show slow SQL 命令: admin 316 • wait_time:该语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等待时间都 会增加。 • request_count:该语句发送的 Coprocessor 请求的数量。 • total_keys:Coprocessor
0 码力 |
2374 页 |
49.52 MB
| 1 年前 3
• Wait_time:表示这个语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等 待时间都会增加。 • Process_keys:表示 Coprocessor 处理的 key 的数量。相比 total_keys,processed_keys 的语句都是有问题的。会造成集群整体压力增大的,是那些 process_time 很大的语句。 wait_time 很大,但 process_time 很小的语句通常不是问题语句,是因为被问题语句阻塞,在执行队列等待造成 的响应时间过长。 8.1.8 admin show slow 命令 除了获取 TiDB 日志,还有一种定位慢查询的方式是通过 admin show slow SQL 命令: admin 相关的字段: • wait_time:该语句在 TiKV 的等待时间之和,因为 TiKV 的 Coprocessor 线程数是有限的,当所有的 Coprocessor 线程都在工作的时候,请求会排队;当队列中有某些请求耗时很长的时候,后面的请求的等待时间都 会增加。 • request_count:该语句发送的 Coprocessor 请求的数量。 • total_keys:Coprocessor
0 码力 |
2852 页 |
52.59 MB
| 1 年前 3