AISWare MDB助力客户占据万物互联的时代先机

客户需求

某运营商集团无法同时支撑全国30多个省分400个地市的出账任务,需要分为三个批次串行,且需要操作人员根据负载情况全程手工调度,总计耗超过17个小时。涉及数据库的需求重点是: 1.数据库能支撑全国400个地市的并发访问; 2.数据库要有极致性能,可以大幅缩短出账时间

建设方案

客户引入AISWare MDB ,替换目前使用中的数据库的OLTP功能。 AISWare MDB中的线程池功能,相比一个客户端连接一个线程的模式,系统资源占用更少,并具有更高的吞吐量。 AISWare MDB中的协程模型,在上下文切换的时候,不需要内核参与,并且可以由应用层代码控制切换的实际。与线程池搭配使用,可以解决线程池引起的线程数量抖动,死锁等问题,可以支撑百万级的连接数。 AISWare MDB的区间索引功能,采用B- Link-tree算法,读写并发,修改btree时不用锁住整棵树,不用锁住从根节点到叶子节点的完整路径,大大提高了区间索引访问的并发性能,同时,节点合并回收功能尽量减少对内存的占用。 AISWare MDB的hash索引功能,支持动态hash。在使用hash索引时,表扩容时动态逐步扩展hash索引空间,使得hash算法性能保持线性,同时采用rehash的算法避免rehash引起的锁表。 AISWare MDB的MVCC功能,读写事务相互隔离,读事务不需要加读锁;在大并发更新场景下,相比别的MVCC算法有更佳的性能表现。

应用效果

  • 并发能力增强

    通过AISWare MDB的线程池和协程模型,全国30多个省400个地市并发出账。

  • 性能提升

    通过AISWare MDB的索引和MVCC技术,吞吐量达到10万话单/秒,出账从之前的17小时提升到2小时以内。