[发明专利]数据同步方法及装置有效
申请号: | 201510824943.0 | 申请日: | 2015-11-24 |
公开(公告)号: | CN106775437B | 公开(公告)日: | 2020-01-31 |
发明(设计)人: | 阳振坤;王鲁俊 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 11363 北京弘权知识产权代理事务所(普通合伙) | 代理人: | 逯长明;许伟群 |
地址: | 开曼群岛*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 同步 方法 装置 | ||
本发明实施例提供了一种数据同步方法及装置,在本发明中,无需按照预设顺序存储待同步数据,因此,当接收到待同步数据时,无需先判断待同步数据是否与已经同步的数据之间的顺序是否为预设顺序,且无需将待同步数据存储在缓存空间中,而是直接在预设存储空间中的一个存储位置中存储待同步数据;从而节省了缓存空间,也不会因为缓存空间被占满而丢弃接收的数据,进而避免造成同步的数据不完整。
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据同步方法及装置。
背景技术
当前,人们通常利用存储设备来存储数据,有时候存储设备在工作过程中可能会宕机,这样会使得存储的数据不可用。为了避免因存储设备宕机而造成存储的数据不可用,通常需要将存储设备中存储的数据同步至一个备份设备中,这样,当存储设备宕机之后,备份设备中存储的数据仍旧可用。
在实际场景中,有时候存储设备需要向备份设备同步的数据中可能会存在占用存储空间比较大的大数据。当存储设备向备份设备同步大数据时,存储设备一般会将大数据按顺序拆分多条数据,然后分别向备份设备同步拆分的多条数据。其中,由于拆分的多条数据中的每条数据在大数据中的位置顺序是固定的,当需要将拆分的数据拼接成大数据时,必须按照拆分的每条数据分别在大数据中的位置顺序进行拼接,否则就无法得到原始的大数据。
因此,当存储设备将拆分的多条数据向备份设备发送时,需要将拆分的每条数据按照其在大数据中的位置顺序分别依次向备份设备发送。这样,备份设备在接收拆分的数据时才能够按照每条数据在大数据中的顺序依次接收,并依次按照每条数据在大数据中的顺序将接收的每条数据存储在存储空间中。
然而,有时候可能会由于链路异常导致备份设备接收数据时不是按照每条数据在大数据中的顺序依次接收,而是乱序接收。
对于接收的每条数据,备份设备会判断该数据是否为与已经存储的最后一条数据相邻的数据;当是时,则将该数据存储在已经存储的最后一条数据之后;当不是时,则将该数据先存储在缓存空间中,待该数据为与已经存储的最后一条数据相邻的数据时,再将该数据存储在已经存储的最后一条数据之后。
但是,发明人发现,当接收的乱序的数据较多时,将这些乱序的数据全部存储在缓存空间中会占用较多的缓存空间,尤其是当存储的乱序数据已经占满整个缓存空间后,如果后续还接收到乱序的数据,由于缓存空间已经没有多余的存储空间,因此会将后续接收到的乱序数据丢弃,最终造成同步的数据不完整。
发明内容
为克服相关技术中存在的问题,本发明提供一种数据同步方法及装置。
根据本发明实施例的第一方面,提供一种数据同步方法,所述方法包括:
当接收到待同步数据时,在预设存储空间中的一个存储位置中存储所述待同步数据;
获取已存储的数据标识与存储位置之间的对应关系;所述对应关系中存储的数据标识之间的顺序为预设顺序;
判断所述对应关系中的数据标识与所述待同步数据的数据标识之间的顺序是否为预设顺序;
当不为预设顺序时,在预设缓存空间中缓存所述待同步数据的数据标识与所述存储位置;直至当所述对应关系中的数据标识与所述待同步数据的数据标识之间的顺序为预设顺序时,将存储在所述预设缓存空间中的所述待同步数据的数据标识与所述存储位置作为一条记录并按照所述预设顺序添加在所述对应关系中。
进一步地,所述方法还包括:
当将所述待同步数据的数据标识与所述存储位置作为一条记录并按照所述预设顺序添加在所述对应关系中之后,从所述预设缓存空间中删除所述待同步数据的数据标识与所述存储位置。
其中,所述判断所述对应关系中的数据标识与所述待同步数据的数据标识之间的顺序是否为预设顺序,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510824943.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置