[发明专利]一种镜像元数据的分布式锁算法在审
| 申请号: | 201310578637.4 | 申请日: | 2013-11-18 |
| 公开(公告)号: | CN103729239A | 公开(公告)日: | 2014-04-16 |
| 发明(设计)人: | 陈颖;黄少伟;胡平;汪国武 | 申请(专利权)人: | 芜湖大学科技园发展有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/52 |
| 代理公司: | 安徽合肥华信知识产权代理有限公司 34112 | 代理人: | 余成俊 |
| 地址: | 241002 安徽省芜湖*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 镜像元 数据 分布式 算法 | ||
技术领域
本发明涉及电力系统数据平台领域,具体为一种镜像元数据的分布式锁算法。
背景技术
电力元数据管理平台中,多个应用程序需要对多台服务器中的元数据进行并发访问,同时需要保证访问过程中各服务器中的元数据的一致性和完整性,以及实现访问的高性能。
发明内容
本发明的目的是提供一种镜像元数据的分布式锁算法,以克服上述现有技术的不足。
为了达到上述目的,本发明所采用的技术方案为:
一种镜像元数据的分布式锁算法,其特征在于:元数据存放在多个元数据服务器及镜像服务器上,当多个应用程序同时读写元数据时,先将读写指令存入电力平台服务器的读写取号队列中,元数据服务器收到读指令后采用共享锁方式进行读操作,写指令采用独占锁方式进行写操作,读操作结果直接返回给应用程序和电力平台服务器,写操作结果返回给电力平台服务器。
所述的一种镜像元数据的分布式锁算法,其特征在于:取号后的写操作指令即可发给每个元数据服务器,读指令将根据各元数据服务器的最新写操作完成情况和网络状况,选择其中一台服务器进行读操作。
所述的一种镜像元数据的分布式锁算法,其特征在于:到达元数据服务器的读操作指令,将比对日志中记录的最新写操作编号和自身的读指令编号,保证读指令在写操作指令之后,确定读指令是否有效或过期作废,如果有效则采用共享锁方式读取元数据,否则废弃读指令,读取失败或超过最大读等待时间,则选择另一符合条件的元数据服务器进行读操作。
所述的一种镜像元数据的分布式锁算法,其特征在于:到达元数据服务器的写操作指令,使用独占锁进行写操作,在写入操作时为提高写入速度,写操作过程采用了分段加锁技术,即将数据分成多段存储,然后给每一段数据加一把锁,多线程同时对各段进行写入操作,提高并发访问效率。
本发明具有如下优点:
(1)采用了队列和分布式读写锁的方案,在多应用程序并发访问多元数据服务器时,保证了数据的一致性和完整性。
(2)元数据服务器在写入操作时采用分段加锁技术,提高了线程的并发访问效率。
(3)相比采用多个元数据服务器同步读(或写)的全局读写锁方案,本方案采用了队列和分布式读写锁,只要保证入队时的读写顺序,既保证了数据的一致性和完整性,又提高了访问速度。
附图说明
图1为本发明的原理图。
具体实施方式
如图1所示。一种镜像元数据的分布式锁算法,元数据存放在多个元数据服务器及其镜像服务器上,当多个应用程序读写元数据时,先将读写指令存入电力平台服务器的读写取号队列,队列中每个操作指令按顺序编号。编号后的写操作指令直接发往每一个存放有元数据的服务器,服务器采用独占锁(X锁)的方式对元数据进行写入操作,即所有元数据的其它锁已释放完毕才可以写入,并将写操作的执行结果返回给电力平台服务器。此外,在写入操作时为提高写入速度,写入时采用了分段加锁技术,即将数据分成多段存储,然后给每一段数据配一把锁,多线程同时对各段进行写入操作,提高并发访问效率。编号的读操作指令,将根据各元数据服务器的最新写操作完成情况以及网络状况,选择其中一台服务器进行读取,该服务器将采用共享锁(S锁)的方式读取元数据,即多个读操作可以并发执行,最后将读操作结果直接返回给应用程序和电力服务器。
由于采用了队列和读写锁的方案,多应用程序并发访问多个元数据服务器时保证了数据的一致性和完整性。另一方面,元数据服务器在写入操作时采用分段加锁技术,提高了线程的并发访问效率。。
实施例1,多个应用程序访问多个元数据服务器或镜像服务器上的元数据。
元数据和两个镜像分布在不同的服务器上,应用程序1、应用程序2、应用程序3和应用程序4分别对元数据进行读、读、写和读操作,他们按时间先后进入读写队列,前两个读指令操作同时从同一镜像元数据服务器中读取了元数据信息,应用程序1和应用程序2得到了相同的元数据信息。其后的写指令同时修改了所有服务器中的元数据内容,应用程序4读取的元数据信息反映了应用程序3的写入操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于芜湖大学科技园发展有限公司,未经芜湖大学科技园发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310578637.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





