MySQL Status Ndb_api_wait_exec_complete_count 数据库状态作用意思及如何正确

本站中文解释

MySQL status 变量Ndb_api_wait_exec_complete_count 指的是Ndb API 等待完成的查询的次数,也就是有多少查询经由Ndb API向NDB Cluster发出,并且还没收到NDB Cluster的完成响应代码,从而使MySQL需要排队等待接收来自NDB Cluster的响应。 NDB_api_wait_exec_complete_count 变量用于衡量间歇性延迟以及由于负载抑制而产生的延迟,即时等待数不能保证达到每秒请求的最大QPS,也不能衡量有多少的请求正等待完成。因此,大多数情况下,Ndb_api_wait_exec_complete_count变量应该比Ndb_api_req_count变量大,表明某些查询正在等待完成。

MySQL status变量Ndb_api_wait_exec_complete_count是一个负责计数的只读变量,不可以被设置。为了避免过多的等待,应该注意以下几点:

1、提高MySQL服务器上MySQL ETL服务器处理能力(包括硬件规划,优化Schema和查询),确保MySQL代理可以快速把SQL查询发送到NDB Cluster后立即收到答复。

2、尽量把数据集分布在多个分区,以避免复杂的查询操作将数据集发送到单个分区上被抑制(在多个分区上发送请求可以改善这个情况)。

3、尽量减少大量的批量写服务的发送请求,这样可以减少将大量写操作拆分成多个操作的情况,以最大限度减少NDBAPI等待和写等待完成的次数。

4、增加索引,减少查询复杂度以正确利用NDB存储引擎提供的并发性质,使更多的查询可以得到较快答复。


数据运维技术 » MySQL Status Ndb_api_wait_exec_complete_count 数据库状态作用意思及如何正确