随着用友的营销业务迅速发展,原来使用的数据库遇到了一些痛点和诉求,比如业务复杂查询慢、部分核心功能在查询时候超时;月末、季度末和年末,业务查询涉及数量大和并发高的情况,对数据库资源的快速弹升和晋级弹升的要求高;读库延迟大不能充分利用且扩张能力不足;迁移数据库对兼容性和容量的要求比较高。
针对上述痛点,用友在对主流数据库充分调研后最终选择了阿里云的PolarDB数据库。测试证明,PolarDB并行查询能有效提升复杂查询的执行速度,营销云验证场景下平均降低查询耗时66%,解决查询超时的问题。PolarDB具备分钟级别的弹性能力,5-10分钟增加节点,15-20分钟垂直升配节点,能有效满足营销云弹性升降配诉求。同时,PolarDB一致性级别设置解决读库延迟问题,充分利用读库。
面对跨平台跨版本升级可能带来的兼容性和性能挑战,方案中使用了阿里云数据库自治服务 DAS。通过DAS智能压测评估兼容性和性能,确保从原有数据库升级到PolarDB上切换后无兼容性和性能风险。方案从生产环境采集全量的SQL,经过消息流、流量处理和学习,最终落到OSS里形成压缩文件,且可以自定义回放压测。这解决了数据库跨版本的兼容性问题和迁移数据库之后效率的问题。虽然看起来流程很长,但是只需要在页面上单机配置整个迁移过程。最终实现低负载捕获真实业务流量,写流量回放压测,自动生成压测流量,语法自动转换等。