上海交通大学王肇国获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉上海交通大学申请的专利基于细粒度事务修复的分布式并发控制方法及系统获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN116339931B 。
龙图腾网通过国家知识产权局官网在2025-09-19发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202310465852.7,技术领域涉及:G06F9/46;该发明授权基于细粒度事务修复的分布式并发控制方法及系统是由王肇国;董致远;许贤;陈海波设计研发完成,并于2023-04-26向国家知识产权局提交的专利申请。
本基于细粒度事务修复的分布式并发控制方法及系统在说明书摘要公布了:本发明提供了一种基于细粒度事务修复的分布式并发控制方法及系统,包括:步骤S1:计算节点接收用户请求,并根据请求内容执行事务操作;步骤S2:根据执行事务操作的结果,计算节点本地提交,并将本地提交的事务入队;步骤S3:当计算节点本地事务队列塞满后,将队列中的所有事务打包成一个批处理事务,并向存储节点全局提交批处理事务;如果批处理事务在全局提交过程中不能通过验证,则通过细粒度事务修复将批处理事务恢复到能够提交状态,继续提交批处理事务。本发明利用计算节点的本地缓存来减少事务执行期间读取存储节点数据操作带来的通信,从而降低了事务执行时延。
本发明授权基于细粒度事务修复的分布式并发控制方法及系统在权利要求书中公布了:1.一种基于细粒度事务修复的分布式并发控制方法,其特征在于,包括: 步骤S1:计算节点接收用户请求,并根据请求内容执行事务操作; 步骤S2:根据执行事务操作的结果,计算节点本地提交事务,并将本地提交的事务入队; 步骤S3:当计算节点本地事务队列塞满后,将队列中的所有事务打包成一个批处理事务,并向存储节点全局提交批处理事务; 如果批处理事务在全局提交过程中不能通过验证,则通过细粒度事务修复将批处理事务恢复到能够提交状态,继续提交批处理事务; 执行事务操作中包括对数据的读操作和写操作; 在所述步骤S2中: 步骤S2.1:对于执行完成的事务,将该事务的写集合中的元组写入本地缓存; 步骤S2.2:将该事务加入计算节点本地事务队列,释放该事务为其读集合与写集合中的所有元组申请的本地共享锁和互斥锁; 所述本地事务队列是每个计算节点维护一份的队列数据结构,元素是事务唯一的标识符; 在所述步骤S3中: 步骤S3.1:在计算节点本地事务队列中的事务达到阈值后,将所有事务合并成一个批处理事务,将所有事务的读写集合分别合并为批处理事务的读集合与写集合,并去重; 步骤S3.2:计算节点向时间戳服务器发送时间戳获取请求,时间戳服务器根据时间戳获取请求,当前批处理事务访问的数据段,将对应数据段的当前时间戳单元组合为结果时间戳,并根据请求的数据段及对应访问类型更新数据段的时间戳单元,将结果时间戳返回给计算节点,当计算节点收到返回时间戳后,进入步骤S3.3; 步骤S3.3:计算节点向存有当前批处理事务读集合与写集合元组的相关存储节点发送准备提交请求;存储节点接收到准备提交请求后,根据对应批处理事务间的时间戳顺序,为批处理事务的读集合和写集合申请存储节点本地共享锁和互斥锁; 步骤S3.4:存储节点对批处理事务的读集合进行验证,将收到的准备提交请求持久化,将验证结果返回对应计算节点;计算节点收集来自相关存储节点的验证结果返回;如果有存储节点验证失败,则进入步骤S3.5;如果存储节点验证全部成功,进入步骤S3.6; 步骤S3.5:计算节点根据验证失败的存储节点返回的最新元组,开始细粒度修复当前批处理事务;在事务修复结束后,计算节点根据批处理事务被修复后的写集合更新本地缓存,进入步骤S3.6; 步骤S3.6:计算节点向存储节点发送提交请求,在存储节点收到提交请求后,如果对应的批处理被修复,则将请求中附带的修复后的写集合持久化,存储节点根据批处理事务的写集合更新本地存储,并将已申请的存储节点的本地共享锁与本地互斥锁全部释放; 所述存储节点是一个逻辑的存储节点,由多个物理存储节点通过状态机备份的方式组成,每个物理存储节点初始状态相同,并按照相同顺序处理来自计算节点的请求; 所述准备提交请求包括批处理事务的读集合和写集合、时间戳、事务执行输入; 所述验证指将被验证批处理事务的读集合中的每一个元组和在存储节点本地的相同键的最新元组进行比较,比较两个元组的版本,如果版本相同则验证成功,否则验证失败,所述步骤S3.4在验证失败时,存储节点记录验证失败的元组,并将存储节点本地的相同键的最新元组返回给计算节点; 提交确认请求的内容包括确认提交的批处理事务的标识符;每个批处理事务都会被分配一个唯一的标识符; 所述时间戳是一个向量时间戳,该向量的每个元素对应一个数据段的时间戳单元,所述时间戳单元是一对计数器seq和readers,seq计数器记录了该数据段被批处理事务修改的次数,readers计数器记录自当前数据段被最后一次修改后,读取该数据段的批处理事务的数量; 所述时间戳服务器是一个提供时间戳服务的服务器,存储了所有数据段对应的时间戳单元,时间戳服务器在处理来自同一个计算节点的时间戳获取请求时,保证按照对应批处理事务在计算节点本地事务队列中的顺序处理;时间戳服务器通过拿时间戳服务器的本地互斥锁保护读取和更新数据段对应时间戳单元的原子性;在更新时间服务器中数据段的时间戳单元时,如果目标数据段被当前批处理事务修改,将时间戳单元的seq计数器加一,readers计数器清零;如果目标数据段被当前批处理事务读取,则将时间戳单元的readers计数器加一; 所述数据段是分配时间戳单元的基本单位,一个数据段包含一个或多个元组,每个节点保存数据段与对应元组的映射关系;一个批处理事务修改一个数据段,表示该批处理事务的写集合中存在对应数据段保护的元组;一个批处理事务读取一个数据段,表示该批处理事务的读集合中存在当前数据段保护的元组,并且该批处理事务不修改当前数据段;当一个批处理事务修改或读取了一个数据段时,称该批处理事务访问了对应数据段;所述时间戳获取请求包含该批处理事务所修改的数据段集合和所读取的数据段集合; 所述时间戳顺序是一个偏序关系; 所述细粒度修复指的是计算节点重新执行需要被重新执行的读操作或写操作,在修复批处理事务时,计算节点根据事务本地提交的顺序,依次修复每一个当前批处理事务中的事务;在修复事务时,计算节点根据拓扑顺序遍历对应事务逻辑的数据流图中的操作节点,对于一个读操作,计算节点在事务执行时记录该操作所读取元组,在修复时将执行时记录的元组与当前事务修复过程的实时元组信息比较,如果当前读操作所读取的元组不同,则当前读操作重新执行,并且所有依赖当前读操作的操作也重新执行。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人上海交通大学,其通讯地址为:200240 上海市闵行区东川路800号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。
请提出您的宝贵建议,有机会获取IP积分或其他奖励