JAVA MySQL性能测试

测试目的

使用 JAVA 语言对数据库进行增删改查功能,验证是否能够达到预期的性能指标。

测试环境

平台:Win10 x64 操作系统
数据库:Navicat for MySQL,此数据库苹果,谷歌,微软,阿里等知名公司都有使用。
开发环境:IntelliJ IDEA,业界公认最好的 Java 开发环境。

测试指标

  • 首先创建数据库并与开发环境进行关联,使之开发环境能够对数据库进行操作。
  • 向数据库中插入 150w 条数据,使用数据库 Select 语句进行多条件查询。
  • 条件匹配 5 项字段值,查询一条需要花费的时间在 50ms 以内。
数据库操作耗时(ms)记录SQL 语句
插入150w条数据2.6 h在这里插入图片描述在这里插入图片描述INSERT INTO table_b_bul(FULLNAME,ISCONTENT,COMTYPE,COMDUR) VALUES(“张三”,“是”,“1”,1)
匹配一项字段值第一次 165ms,后续 4ms左右在这里插入图片描述在这里插入图片描述SELECT * FROM table_b_bul WHERE ID=1000000
匹配两项字段值第一次167ms,后续5ms左右在这里插入图片描述在这里插入图片描述SELECT * FROM table_b_bul WHERE ID=1000000 AND FULLNAME = ‘张三’
匹配三项字段值第一次175ms,后续5ms左右在这里插入图片描述在这里插入图片描述SELECT * FROM table_b_bul WHERE ID=1000000 AND FULLNAME = ‘张三’ AND COMTYPE = '999994’
匹配四项字段值第一次163ms,后续5ms左右在这里插入图片描述在这里插入图片描述SELECT * FROM table_b_bul WHERE ID=1000000 AND FULLNAME = ‘张三’ AND COMTYPE = '999994’AND COMDUR = 999994
匹配五项字段值第一次 182ms,后续 5ms左右在这里插入图片描述在这里插入图片描述SELECT * FROM table_b_bul WHERE ID=1000000 AND FULLNAME = ‘张三’ AND COMTYPE = '999994’AND COMDUR = 999994 AND ISCONTENT = ‘是’
添加时间索引查询平均时间 5 ms在这里插入图片描述在这里插入图片描述SELECT * FROM table_b_bul WHERE FULLNAME = ‘张三’ AND COMTYPE = '1579693’AND COMDUR = 1579693 BETWEEN ‘2020-02-28 11:18:44’ and ‘2020-02-28 11:18:54’
不添加索引查询平均时间 1500ms在这里插入图片描述SELECT * FROM table_b_bul WHERE FULLNAME = ‘张三’ AND COMTYPE = '1579693’AND COMDUR = 1579693 BETWEEN ‘2020-02-28 11:18:44’ and ‘2020-02-28 11:18:54’

测试分析

  • 向数据库中插入 150w 条数据耗时 2.5h,对比于 c 语言插入数据是比较慢。
  • 根据数据库字段 ID 查询,匹配 1 个条件与匹配 5 个条件第一次查询耗时在 165ms左右,再次进行多次查询耗时 5ms 左右,第一次耗时原因是连接超时并加入缓存。
  • 查询条件不加入 ID 主键,匹配 1- 5 项条件,平均查询时间 1500ms。
  • 查询条件不加入 ID 主键,时间字段添加索引,查询时间范围内中一条数据,查询速度大幅度提高,查询平均时间 4ms 左右。
  • 另测同时插入与查询实际场景操作,得出结果插入操作并不影响查询速度,查询时间几乎保持不变。
  • 综上,数据库的 5 项匹配条件查询一条数据,完全在 50ms 之内,符合测试指标。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值