内存数据库锁的实现方法和装置及计算机可读存储介质制造方法及图纸

技术编号:20425222 阅读:24 留言:0更新日期:2019-02-23 08:31
本发明专利技术适用于数据库技术领域,提供了内存数据库锁的实现方法、装置及计算机可读存储介质,该方法包括:接收针对内存数据库的事务处理请求;所述事务处理请求包括待处理的事务的信息;基于所述事务的信息获取所述内存数据库中的所述事务所对应的元素的锁区的值,并根据所述锁区的值确定所述元素的持有锁的状况;其中,所述元素包括索引总节点和行数据;基于所述持有锁的状况及所述事务包含的针对所述元素的操作类型,对所述元素加读锁或加写锁;基于上述方法,本发明专利技术实施例可实现内存数据库中高并发的事务处理,适合对单笔延时和整体吞吐率要求较高的内存数据库。

【技术实现步骤摘要】
内存数据库锁的实现方法和装置及计算机可读存储介质
本专利技术属于数据库
,尤其涉及内存数据库锁的实现方法、装置及计算机可读存储介质。
技术介绍
事务是查询并可能更新内存数据库中各种数据的程序执行单元,是恢复和并发控制的基本单位。在处理并发事务时,常采用基于锁的并发控制技术,在基于锁的管理机制中,根据锁的粒度不同,锁分为行锁、表锁和数据库级别锁等。目前,对内存数据库加行锁,在处理并发事务时实现复杂,不能满足对延时性能有苛刻要求的应用领域。而对内存数据库加数据库级别锁或表锁,虽然在处理并发事务时,实现较为简单,但是在并发度上不高,系统的吞吐率不高。因此,急迫需要开发实现简单、并发度高的内存数据库的锁系统。
技术实现思路
有鉴于此,本专利技术实施例提供了内存数据库锁的实现方法和装置及计算机可读存储介质,以解决现有技术中内存数据库在处理并发事务时,并发度不高,系统的吞吐率不高的问题。本专利技术实施例的第一方面提供了内存数据库锁的实现方法,包括:接收针对内存数据库的事务处理请求;所述事务处理请求包括待处理的事务的信息;基于所述事务的信息获取所述内存数据库中的所述事务所对应的元素的锁区的值,并本文档来自技高网...

【技术保护点】
1.内存数据库锁的实现方法,其特征在于,包括:接收针对内存数据库的事务处理请求;所述事务处理请求包括待处理的事务的信息;基于所述事务的信息获取所述内存数据库中的所述事务所对应的元素的锁区的值,并根据所述锁区的值确定所述元素的持有锁的状况;其中,所述元素包括索引总节点和行数据;基于所述持有锁的状况及所述事务包含的针对所述元素的操作类型,对所述元素加读锁或加写锁。

【技术特征摘要】
1.内存数据库锁的实现方法,其特征在于,包括:接收针对内存数据库的事务处理请求;所述事务处理请求包括待处理的事务的信息;基于所述事务的信息获取所述内存数据库中的所述事务所对应的元素的锁区的值,并根据所述锁区的值确定所述元素的持有锁的状况;其中,所述元素包括索引总节点和行数据;基于所述持有锁的状况及所述事务包含的针对所述元素的操作类型,对所述元素加读锁或加写锁。2.根据权利要求1所述的内存数据库锁的实现方法,其特征在于,所述接收针对内存数据库的事务处理请求之前,还包括:在所述内存数据库的每个元素前增加锁区。3.根据权利要求1所述的内存数据库锁的实现方法,其特征在于,所述基于所述事务的信息获取所述内存数据库中的所述事务所对应的元素的锁区的值,并根据所述锁区的值确定所述元素的持有锁的状况,包括:根据所述事务的信息获取所述内存数据库中的所述事务所对应的元素的元素ID,并根据所述元素ID获取所述元素的锁区的值;分析所述锁区的最低一个比特位的值,确定所述元素的持有锁的状况;其中,若所述锁区的最低一个比特位的值为1,则确定所述元素持有写锁;若所述锁区的值的最低一个比特位的值为2,则确定所述元素持有读锁;若所述锁区的值的最低一个比特位的值为0,则确定所述元素没有持有读锁或写锁。4.根据权利要求1所述的内存数据库锁的实现方法,其特征在于,所述基于所述持有锁的状况及所述事务包含的针对所述元素的操作类型,对所述元素加读锁或加写锁,包括:当所述元素被所述事务的第一线程对应的操作类型加读锁时,若所述事务的第二线程包含与读相关的操作类型,则对所述元素加读锁;当所述元素被所述事务的第一线程对应的操作类型...

【专利技术属性】
技术研发人员:易其亮
申请(专利权)人:深圳市金证科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1