数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

高性能MySQL:设计和规划基准测试


发布日期:2022年08月01日
 
高性能MySQL:设计和规划基准测试

设计和规划基准测试

规划基准测试的第一步是提出问题并明确目标然后决定是采用标准的基准测试还是设计专用的测试

如果采用标准的基准测试应该确认选择了合适的测试方案例如不要使用TPCH 测试电子商务系统在TPC 的定义中TPCH 是即席查询和决策支持型应用的基准测试因此不适合用来测试OLTP 系统

设计专用的基准测试是很复杂的往往需要一个迭代的过程首先需要获得生产数据集的快照并且该快照很容易还原以便进行后续的测试

然后针对数据运行查询可以建立一个单元测试集作为初步的测试并运行多遍但是这和真实的数据库环境还是有差别的更好的办法是选择一个有代表性的时间段比如高峰期的一个小时或者一整天记录生产系统上的所有查询如果时间段选得比较小则可以选择多个时间段这样有助于覆盖整个系统的活动状态例如每周报表的查询或者非峰值时间运行的批处理作业注

可以在不同级别记录查询例如如果是集成式(fullstack)基准测试可以记录Web服务器上的HTTP 请求也可以打开MySQL 的查询日志(Query Log)倘若要重演这些查询就要确保创建多线程来并行执行而不是单个线程线性地执行对日志中的每个连接都应该创建独立的线程而不是将所有的查询随机地分配到一些线程中查询日志中记录了每个查询是在哪个连接中执行的

即使不需要创建专用的基准测试详细地写下测试规划也是必需的测试可能要多次反复运行因此需要精确地重现测试过程而且也应该考虑到未来执行下一轮测试时可能已经不是同一个人了即使还是同一个人也有可能不会确切地记得初次运行时的情况测试规划应该记录测试数据系统配置的步骤如何测量和分析结果以及预热的方案等

应该建立将参数和结果文档化的规范每一轮测试都必须进行详细记录文档规范可以很简单比如采用电子表格(spreadsheet)或者记事本形式也可以是复杂的自定义的数据库需要记住的是经常要写一些脚本来分析测试结果因此如果能够不用打开电子表格或者文本文件等额外操作当然是更好的

返回目录高性能MySQL

编辑推荐

ASP NET开发培训视频教程

数据仓库与数据挖掘培训视频教程

Oracle索引技术

上一篇:高性能MySQL:基准测试方法

下一篇:高性能MySQL:基准测试应该运行多长时间