[发明专利]一种数据同步方法有效
申请号: | 201710928744.3 | 申请日: | 2017-10-10 |
公开(公告)号: | CN107491565B | 公开(公告)日: | 2020-01-14 |
发明(设计)人: | 冯泽康 | 申请(专利权)人: | 语联网(武汉)信息技术有限公司 |
主分类号: | G06F16/178 | 分类号: | G06F16/178;G06F16/182;G06F16/13;G06F16/172 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 430073 湖北省武汉市东湖开发区光谷软件*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种应用于至少两个数据节点的数据同步方法,从文件I/O使用频率,系统cpu占有率,时间以及空间复杂度等方面进行了考虑并提供了相应的优化方式,实现了一种通用且高效的文件同步方法;并从算法流程上节约计算量,最主要是优化了文件分块强hash(如md5值)的计算速度;在读取数据时采取自适应的块大小调节模式,并且采用内存映射方法以及哈希值计算判断方法,能够大大提升文件同步的速度,提高用户满意度,同时节省资源开销。 | ||
搜索关键词: | 一种 数据 同步 方法 | ||
【主权项】:
1.一种应用于至少两个数据节点的数据同步方法,所述至少两个数据节点包含至少一第一数据节点和一第二数据节点,所述第一数据节点和所述第二数据节点对应存储同步的至少一个数据文件;当所述第一数据节点的数据发生变化时,应用所述数据同步方法,使得所述第二数据节点的数据保持同步;所述数据同步方法包括如下步骤:/n(1)从第一数据节点的起点开始,按照预定值的大小依次读取至少一个第一数据节点的数据块,计算所述至少一个第一数据节点的数据块的第一采样特征值;/n(2)获取该第二数据节点的对应数据块的第二采样特征值;/n(3)比较步骤(1)、步骤(2)中第一采样特征值与第二采样特征值是否一致;/n(4)如果步骤(3)的比较结果为不一致,则确定第一数据节点的当前数据块与第二数据节点的对应数据块不一致;/n(5)重复步骤(1)-步骤(4),直到确定出第二数据节点中与第一数据节点中所有对应数据块不一致的数据块;/n(6)自动编辑步骤(5)确定出的第二数据节点中与第一数据节点中所有对应数据块不一致的数据块,使得第二数据节点的数据与第一数据节点的数据保持同步;其特征在于:/n所述步骤(1)中,读取第一数据节点的数据块时,首先依次将预定值大小的数据块根据缓冲区的大小映射到内存中;/n并且,所述方法进一步包括:/n所述第一采样特征值包括所述预定值大小的第一数据节点的数据块的MD5值,以及所述第一数据节点中除所述预定值大小的第一数据节点的数据块之外的其他数据块的MD5值;/n所述第二采样特征值包括所述按照所述预定值的大小读取的对应的一个第二数据节点的数据块的MD5值,以及所述第二数据节点中除所述按照所述预定值的大小读取的对应的一个第二数据节点的数据块之外的其他数据块的MD5值;/n其中,所述方法还包括:首先从第一数据节点(310)的起点开始,按照预定值(31,41,51)的大小依次读取至少一个第一数据节点的数据块;并且,读取第一数据节点的数据块时,首先将第一数据节点的相关数据映射到内存中,再按照所述预定值的大小在内存中依次读取第一数据节点的数据块;读取不同的数据块时,所述预定值大小不同;/n如果在某个时间节点,按照第一预定值的大小读取的一个第一数据节点的数据块和按照所述第一预定值的大小读取对应的一个第二数据节点的数据块的分块弱哈希值以及强哈希值比较结果为一致,/n则接下来,按照第二预定值的大小读取下一个第一数据节点的数据块;所述第二预定值大于第一预定值;否则,按照第三预定值的大小读取下一个第一数据节点的数据块;所述第三预定值小于第一预定值。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于语联网(武汉)信息技术有限公司,未经语联网(武汉)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710928744.3/,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置