想拿下以性能为首要目标的库存服务,必然需要一款同样以性能称王的数据库做底层支撑。华为云GaussDB数据库以“高性能”的优势,成为库存服务改造的趁手利器。GaussDB充分融合了华为多年来软硬全栈协同的优势,在硬件领域,结合了鲲鹏处理器的多线程、原子指令、智能网卡的计算下推、RDMA的短时延高带宽、SCM的字节寻址持久化能力等,在软件技术领域,通过动态编译、向量化引擎等能力,实现了极致的数据处理能力。
然而,上线过程中挑战仍然存在。GaussDB团队积极攻坚,细切目标,逐个攻破上线过程中遇到的难题。
首先,是如何提高执行计划的准确性。库存服务有近10万条SQL,并且存在复杂的多表关联,所以,如何保证交易数据库执行计划的准确性成为TOP挑战。对此,攻关团队围绕压测过程中识别的索引漂移等核心痛点场景,突破了智能基数估计、自适应计划选择技术,从而优化了数据库执行计划的精准性,进一步保障了库存服务每一条SQL的执行性能。
其次,是如何解决高频交易的性能问题。库存服务中有近2.7TB的数据集中在5张高频交易表里,单表数据量超过了10亿行。为了保障高频交易时性能稳定不下降,攻关团队通过组合分区和大并发线程池等技术,在打散数据访问热点的基础上,优化了线程调度机制,一方面提高了系统的响应速度,另一方面也提升了硬件的资源利用率。最终的全链路压测结果显示,切换GaussDB后,库存服务总体交易性能显著提升,达到老ERP交易峰值的3倍。
最后,是如何将攻坚历程形成可借鉴的成功经验。对此,团队在合作攻关的同时,系统性地总结了基于GaussDB数据库的开发和调优的最佳实践经验,并汇总成完整的《GaussDB开发设计及编程规范》,为后续GaussDB在其他应用的上线提供了宝贵的借鉴经验和技术规范指导。




