我有一个庞大的MySQL表(> 1000万行),我正在寻找提高查询效率的最佳机制。
具体来说,表压缩看起来很有用,因为它会减少磁盘I / O负载。
但是,如何衡量使用压缩的影响?例如,查看INSERT查询在压缩表与非压缩表上执行需要多长时间?
答案 0 :(得分:0)
您可以使用pt-query-digest。
首先,虽然表格没有压缩,但仍然使用long_query_time=0
启用慢速日志(为方便起见,您可以使用slow.sh。)
当您收集大量查询时,在慢速日志上运行pt-query-digest
pt-query-digest slow-query-issue-$issue.log
它将为您提供一个查询配置文件,其中包含每个查询对总响应时间的个别贡献。
然后压缩表格并使用pt-query-digest
重复练习。
然后比较两个查询配置文件,您将看到压缩影响。