[发明专利]一种事务处理系统、事务处理方法及主机系统有效
| 申请号: | 202110701526.2 | 申请日: | 2021-06-23 |
| 公开(公告)号: | CN113342480B | 公开(公告)日: | 2022-02-22 |
| 发明(设计)人: | 蔡云龙;刘新春 | 申请(专利权)人: | 海光信息技术股份有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50;G06F16/22;G06F16/23 |
| 代理公司: | 北京兰亭信通知识产权代理有限公司 11667 | 代理人: | 赵永刚 |
| 地址: | 300384 天津市南开区华苑产*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 事务处理 系统 方法 主机 | ||
本发明提供一种事务处理系统、事务处理方法及主机系统,该事务处理系统包括至少两个处理器内核组、至少两个内存模块。将主内存模块中需要加锁的数据内存镜像到镜像内存模块中,由镜像内存模块及其对应的处理器内核组处理事务请求接收模块中的部分需要被处理的事务请求,使主内存模块及其对应的处理器内核组和镜像内存模块及其对应的处理器内核组同时处理事务请求,形成事务分区处理方式,降低事务处理时对数据资源的争用现象。在镜像内存模块及其对应的处理器内核组处理完上述事务请求之后,将处理结果提交给事务冲突检测模块,检测处理结果和主内存模块中的数据是否存在冲突,并在不冲突时,才将处理结果进行提交,满足数据库的强一致性要求。
技术领域
本发明涉及计算机技术领域,尤其涉及一种事务处理系统、事务处理方法及主机系统。
背景技术
数据库执行事务处理时,为满足强一致性或者事务隔离级别的要求,需要锁定数据库中的数据表、数据页、记录行以及其他相关的数据,例如索引、日志等。数据库资源加锁,会导致严重的资源竞争,从而导致性能下降。为优化数据库资源锁,多版本控制(Multi-Version Concurrency Control,MVCC)技术用来改善数据库资源锁的争用。但由于CPU(Central Processing Unit,中央处理器)核数众多以及NUMA(Non-uniform MemoryAccess,非一致性内存访问)系统跨节点的超长时延,即使采用数据库资源锁多版本控制以优化事务访问的并发,还是会产生非常严重的竞争,导致性能下降。
发明内容
本发明提供了一种事务处理系统、事务处理方法及主机系统,以改善由于数据库资源锁过多而引起的性能下降问题,提高整体性能。
第一方面,本发明提供了一种事务处理系统,该事务处理系统包括至少两个处理器内核组、以及至少两个内存模块。其中,每个处理器内核组至少包含有一个处理器内核;该至少两个内存模块和至少两个处理器内核组一一对应,每个内存模块直连对应的处理器内核组,该至少两个内存模块中包含有主内存模块、和除主内存模块之外的其他内存模块。在主内存模块中设置有事务请求接收模块,事务请求接收模块用于接收事务请求,并由主内存模块对应的处理器内核组处理事务请求。事务处理系统还包括性能受限监控模块,用于从其他内存模块中选择镜像内存模块,并将需要加锁的数据内存镜像到镜像内存模块中;且主内存模块还与镜像内存模块共享无需加锁的数据。事务处理系统还包括事务请求重定向模块,使镜像内存模块对应的处理器内核组处理事务请求接收模块中需要被处理的事务请求。镜像内存模块用于在其对应的处理器内核组处理完需要被处理的事务请求并生成处理结果后,向主内存模块提交处理结果。事务处理系统还包括事务冲突检测模块,事务冲突检测模块用于检测镜像内存模块提交的处理结果和主内存模块中的数据是否冲突;事务冲突检测模块还用于在检测结果为不冲突时,将处理结果进行提交。
在上述的方案中,通过将主内存模块中需要加锁的数据内存镜像到镜像内存模块中,由镜像内存模块及其对应的处理器内核组来处理事务请求接收模块中的部分需要被处理的事务请求,从而使主内存模块及其对应的处理器内核组和镜像内存模块及其对应的处理器内核组能够同时处理事务请求,形成事务分区处理方式,降低处理事务请求过程中对数据资源的争用现象。在镜像内存模块及其对应的处理器内核组处理完上述需要被处理的事务请求之后,将处理结果提交给事务冲突检测模块,来检测处理结果和主内存模块中的数据是否存在冲突,并在不冲突时,才将处理结果进行提交,以满足数据库的强一致性要求。采用本申请的方式,通过内存镜像方式隔离需要加锁的数据资源,降低事务处理时对数据资源的争用现象,且缓解由于加锁引起的事务请求排队引起的处理器内核空闲情况,从而提高整体处理效率。
在一个具体的实施方式中,性能受限监控模块具体用于在监控到单位时间内事务请求的增加量大于成功提交的处理结果增加量时,从其他内存模块中选择镜像内存模块,并将主内存模块中需要加锁的数据内存镜像到镜像内存中,由事务请求重定向模块使镜像内存模块对应的处理器内核组处理需要被处理的事务请求。以便于在主内存模块及其对应的处理器内核组的处理性能受限时,自动触发性能受限监控模块及事务请求重定向模块,实现事务处理系统的性能线性扩展。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海光信息技术股份有限公司,未经海光信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110701526.2/2.html,转载请声明来源钻瓜专利网。





