项目使用Sharding-Sphere分表测试经验总结

背景

项目运行4年,数据量较大,现平台查询数据较慢,因此决定重构系统,采用Sharding-Sphere进行数据分表,提升查询效率,半年数据存入一张表内,之前测试的多为单表业务,分表测试的时候还是有很多地方没考虑到,因此本博文作为项目经验教训记录。

问题

一、平台上设置默认时间段,即3个月,前端自动算出起-止时间,传与后台,后台根据传输的时间判断具体查询某张表,前端推算3个月的时候,直接自然月-3,导致算出了错误的开始时间,如当前月份为5.30,月份-3,则算出开始时间为2.30,传给后台的时间段则为5.30-2.30,实际上2月并无30号,导致定位查询表错误,平台报错

总结:测试时,需要构造异常月份数据,如2.30、2.31等。


二、查看某条单据的详情时,前端需要传递起-止时间,后台根据传输的时间判断具体查询某张表,列表上搜索的时间端为2020/3/20-2020/5/20,且选择该时间段的单据查看详情,此时前端传递的时间应该是2020/3/20-2020/5/20,但是前端传递成了当前日期-前3月,导出查看详情报错。

总结:测试时,需要查看除当前默认查询时间外的数据详情。


三、测试统计数据时,发现页面上展示的数据值与数据库实际统计数据不一致,后经过核查,发现开发在代码中编写的sql语句使用了ifnull函数,后将ifnull函数去掉,统计数据正确

总结:sharding-jdbc不支持ifnull的写法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值