在集中交易系统中,抛开清算、报表查询等业务,日间业务绝大部分均为简单小事务。目前我们将涉及的热点表全部放在缓冲池中,cache 命中率接近99%。这种情况下,引入闪存真的能显著提高交易性能么?换句话说,如果想提高集中交易的日间交易性能,引入内存数据库和引入闪存二者的优劣在何处呢?
内存数据库能大幅提升热点表的访问效率,但是,内存表对于大数据量表的装载和持久化方面并不让人放心。所以,用内存数据库来解决非频繁变动的热表,配合闪存,更能稳定地提高交易系统的整体性能。
另外,集中交易系统,不能抛开清算、报表统计与查询这些功能,虽然更多的批量运算是在非交易时间,但是,更快地完成清算,并为清算异常处理留出足够的时间,对于集中交易系统来说同样很重要。
建议,就目前的技术成熟度来看,内存数据库与闪存并举为好,如果二者有替代性,可能用闪存来替代内存数据库会更好。当然,不排除在未来,内存数据库技术越来越成熟,成为下一个首选的可能。
收起单从架构角度说,更倾向于一个small and clean的纯粹的交易系统,这样能更容易的实现更高的交易支撑量,而把账户管理、日终清算、报表查询等原本混杂在集中交易系统的功能剥离出去。当然,随着创新业务的不断开展,最好将创新类的复杂交易也另起炉灶,以保障集中交易的轻量交易性质。
个人观点啊,欢迎批判指正 :)
在交易系统可以采用支持NVME的SSD来提升系统速度。当然可以配合Infiniband来一起加速,比如NVME over fabric技术。这样可以大幅降低系统延时,可靠性和未定型也能得到保证。
可以采用exadata的架构,DIY一下未尝不可。