数据库基准测试中应该避免的错误

基准测试可以说是唯一方便有效的、可以学习系统在给定工作负载下会发生什么的方法。可见基准测试的重要性,在设计基准测试前,我们要了解一下基准测试的常见错误,防止自己在测试中犯这些错误。

数据库基准测试中常见错误:
  • 使用真实数据的子集而不是全集:例如真实情况下,应用需要处理100G的数据,然而在测试时,只有1G数据;或者只使用当前数据进行测试,却希望模拟未来业务大幅增长后的情况。
  • 使用错误的数据分布:例如使用均匀分布的数据测试,而系统真实数据有很多热点区域(随机生成的测试数据通常无法模拟真实的数据分布)
  • 使用不真实的分布参数:例如假定所有用户的个人信息都会被平均地读取。
  • 在多用户场景下,只做单用户测试。
  • 在单服务器上测试分布式应用。
  • 与真实用户行为不匹配。例如Web页面中的“思考时间”。真实用户在请求到一个页面后,会阅读一段时间,而不是不停顿的一个接一个点击相关链接。
  • 反复执行同一个查询。真实的查询都是不尽相同的,这可能会导致缓存命中率降低。而反复执行同一个查询在某种程度上,会全部或者部分缓存结果。
  • 没有检查错误:如果测试的结果无法得到合理的解释,比如一个本应很慢的查询突然变快了,就应该检查是否有错误产生。否则可能只是测试了MySQL检测语法错误的速度了。基准测试完成后,一定要检查一下错误日志,这应该时基本要求。
  • 忽略了系统预热(warm up)的过程。例如系统重启后马上进行测试。有时候需要了解系统重启需要多长时间才能达到正常的性能容量,要特别留意预热的时长。反过来说,如果要想分析正常的性能,需要注意,若基准测试在重启后马上启动,则缓存时冷的,还没有数据,这时即使测试的压力相同,得到的结果也和缓存已经装满数据时时不同的。
  • 使用默认的服务器配置
  • 测试时间太短。基准测试需要持续一段时间。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值