[发明专利]硬件事务内存(HTM)辅助数据库事务的方法及系统有效
申请号: | 201780089494.7 | 申请日: | 2017-04-19 |
公开(公告)号: | CN110546609B | 公开(公告)日: | 2022-06-14 |
发明(设计)人: | 希勒尔·阿维尼;阿哈龙·埃威佐 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F16/23;G06F16/2455 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;李稷芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 硬件 事务 内存 htm 辅助 数据库 方法 系统 | ||
一种用于利用内存数据库的硬件事务内存(Hardware Transactional Memory,简称HTM)的系统,包括:处理器,用于执行并发保存到共享内存数据库的多个数据库事务,其具体方法如下:将所述多个数据库事务中的每一个划分为多个HTM事务,所述多个HTM数据库事务中的每一个被原子地执行,以访问数据库的多个行中的一行;对于所述多个HTM事务中的每一个,执行以下操作:访问所述多个行中的某一行;对于读取HTM事务,在检测并发写入所述某一行的另一写入HTM事务的情况下,获取所述某一行的先前版本的内容;对于写入HTM事务,在所述检测的情况下,在启动时异常中止所述写入HTM事务;通过附加HTM事务,验证和提交所述每个HTM事务。
技术领域和背景技术
在一些实施例中,本发明涉及利用内存数据库的硬件事务内存(HardwareTransactional Memory,简称HTM),更具体地但不完全地,涉及利用通过将数据库事务划分为多个HTM事务来访问内存数据库的多个线程的所述内存数据库的HTM。
特别地,通过结合在一个或多个处理器的一个或多个核心上运行的多个线程利用的多处理,计算能力不断提高和发展,从而允许并发执行多个过程。
类似地,存储技术和架构也在不断发展,特别是结合高密度(容量)和高速动态随机存取存储器(Dynamic Random Access memory,简称DRAM)利用的系统存储器。
不断发展的高密度高速存储器方法允许在所述易失性DRAM中存储更多数据,以支持加速访问和减少时延,从而确保提高性能。用于此类实现方式的一个示例可以是内存数据库,其中数据库和/或其一部分可以存储在由所述DRAM使用的所述系统存储器中。通过由所述多个线程执行的多个并发过程启动对所述内存数据库的多个并发访问(数据库事务),可以进一步加速对所述数据库的访问。
发明内容
根据本发明的第一方面,提供了一种用于利用内存数据库的硬件事务内存(Hardware Transactional Memory,简称HTM)的系统,包括:处理器,用于执行并发保存到共享内存数据库的多个数据库事务,其具体方法如下:
-将所述多个数据库事务中的每一个划分为多个HTM事务,所述多个HTM事务中的每一个被原子地执行,以访问数据库的多个行中的一行;
-对于所述多个HTM事务中的每一个,执行以下操作:
■访问所述多个行中的某一行;对于读取HTM事务,在检测并发写入所述某一行的另一写入HTM事务的情况下,获取所述某一行的先前版本的内容;对于写入HTM事务,在所述检测的情况下,在启动时异常中止所述写入HTM事务;
■通过附加HTM事务,验证和提交所述每个HTM事务。
将所述数据库事务划分为HTM事务可以大大简化数据库事务管理,同时通过利用保证旨在防止访问冲突的原子性的高效HTM硬件机制和减少和/或避免使用复杂软件实现的机制显著提高数据库访问性能。此外,对于所述读取HTM事务,所述系统应用乐观并发控制;对于所述写入HTM事务,所述系统应用悲观并发控制。由于可以在所述事务早期(在启动阶段)检测到两个写入HTM事务之间的冲突(竞争),因此这可以显著提高所述数据库访问和处理性能。在执行此类检测时,可能会异常中止所述并发写入HTM事务中的一个,以避免冗余处理工作,从而处理最终异常中止的所述写入HTM事务。另一方面,读取HTM事务,特别是写后读HTM事务的性能可以显著提高,因为所述乐观并发控制可以确保由并发读取和写入HTM事务导致的最少异常中止事件。此外,在单独的HTM事务中执行所述验证和提交操作可以允许保持遵守所述缓存行大小限制,同时利用所述HTM的所述原子性属性。因此,即使对于过多的数据库事务,特别是对于大量读取数据库事务,也可以保持遵守所述缓存行大小限制。
根据本发明的第二方面,提供了一种利用由多个线程访问的内存数据库的硬件事务内存(Hardware Transactional Memory,简称HTM)的方法,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780089494.7/2.html,转载请声明来源钻瓜专利网。