【技术实现步骤摘要】
【专利摘要】本申请涉及一种多线程的数据更新的加锁方法和设备,其中,该方法可以包括:确定对InnoDB存储引擎中要更新的线程进行加锁的请求是否成功;如果所述加锁请求失败,则判断所述等待锁数是否超过预定阈值;如果所述等待锁数没有超过预定阈值,则创建针对所述失败线程的锁并等待加锁;如果所述等待锁数超过预定阈值,则将所述加锁失败线程调度出InnoDB存储引擎并将其哈希到各个桶中;将相同桶中的加锁失败线程以轮询的方式传送到InnoDB存储引擎以请求加锁。采用本申请,通过利用锁竞争的情况来识别并发更新的热点数据,从而对并发更新热点数据的线程进行调度控制,进而优化了高并发热点数据更新的处理能力。【专利说明】数据更新的加锁方法和设备
本申请涉及数据处理领域,更具体地涉及一种针对多线程的数据更新进行处理的方法和设备。
技术介绍
在计算领域中,InnoDB存储引擎是MySQL的数据库引擎之一,是其中使用最频繁的一种引擎,InnoDB存储引擎由Innobase Oy公司所开发。InnoDB支持回滚、崩溃恢复能力、多版本并发控制、ACID事务,支持行级锁定等功能, ...
【技术保护点】
一种多线程的数据更新的加锁方法,其特征在于,包括:确定对InnoDB存储引擎中要更新的线程进行加锁的请求是否成功;如果所述加锁请求失败,则判断所述等待锁数是否超过预定阈值;如果所述等待锁数没有超过预定阈值,则创建针对所述失败线程的锁并等待加锁;如果所述等待锁数超过预定阈值,则将所述加锁失败线程调度出InnoDB存储引擎并将其哈希到各个桶中;将相同桶中的加锁失败线程以轮询的方式传送到InnoDB存储引擎以请求加锁。
【技术特征摘要】
【专利技术属性】
技术研发人员:刘辉,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。