[发明专利]与Redis服务器进行数据同步的方法、装置和系统有效
申请号: | 201510325597.1 | 申请日: | 2015-06-12 |
公开(公告)号: | CN104881494B | 公开(公告)日: | 2019-02-19 |
发明(设计)人: | 孙小俊;麦俊生 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙) 11276 | 代理人: | 宋菲;刘兰兰 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | redis 服务器 进行 数据 同步 方法 装置 系统 | ||
1.一种与Redis服务器进行数据同步的方法,用于将Redis服务器中的数据同步到磁盘中,其包括:
接收Redis服务器发送的全量数据;其中,所述全量数据为指定时刻存储在Redis服务器上的全部数据的镜像文件;
对所述全量数据进行解析及存储,在解析及存储所述全量数据的过程中,通过日志文件记录接收到的来自所述Redis服务器的增量数据,直至完成与所述Redis服务器之间的数据同步;
其中,当所述全量数据解析并存储完毕后,开始解析并存储所述日志文件中记录的增量数据;
以及,通过以下方式确定是否完成与所述Redis服务器之间的数据同步:
在解析并存储所述日志文件中记录的增量数据的过程中,如果进一步接收到来自所述Redis服务器的增量数据,则计算所述来自所述Redis服务器的增量数据中包含的同步位移与所述日志文件中已解析的增量数据中包含的同步位移之间的位移差,当所述位移差小于预设阈值时,确定已完成与所述Redis服务器之间的数据同步。
2.根据权利要求1所述的方法,其中,当确定已完成与所述Redis服务器之间的数据同步后,如果进一步接收到来自所述Redis服务器的增量数据,则直接存储所述增量数据。
3.根据权利要求1所述的方法,其中,所述全量数据为所述Redis服务器根据接收到的同步请求生成的数据快照文件,在解析并存储所述数据快照文件的过程中,通过多线程并行运行的方式进行解析,并对解析结果为指定类型的数据通过批量写入的方式进行存储,其中,指定类型的数据包括:hash,set,list,和/或zset类型的数据。
4.根据权利要求1所述的方法,其中,所述日志文件为自定义格式的文件,其通过不同的日志项分别记录各条增量数据,每个日志项中包含该条增量数据及其对应的同步位移,以及用于对该日志项进行数据校验的校验码。
5.根据权利要求1-4任一项所述的方法,其中,通过SSDB服务器存储所述全量数据及增量数据。
6.一种与Redis服务器进行数据同步的装置,用于将Redis服务器中的数据同步到磁盘中,其包括:
接收模块,适于接收Redis服务器发送的全量数据以及增量数据;其中,所述全量数据为指定时刻存储在Redis服务器上的全部数据的镜像文件;
第一存储模块,适于对所述接收模块接收到的全量数据进行解析及存储;
日志模块,适于在解析及存储所述全量数据的过程中,通过日志文件记录所述接收模块接收到的来自所述Redis服务器的增量数据,直至完成与所述Redis服务器之间的数据同步;
第二存储模块,适于在所述第一存储模块对所述全量数据解析并存储完毕后,开始解析并存储所述日志模块中记录的增量数据;
其中,用于确定是否完成与所述Redis服务器之间的数据同步的判断模块,在所述第二存储模块解析并存储所述日志文件中记录的增量数据的过程中,如果所述接收模块进一步接收到来自所述Redis服务器的增量数据,则所述判断模块计算所述来自所述Redis服务器的增量数据中包含的同步位移与所述日志文件中已解析的增量数据中包含的同步位移之间的位移差,当所述位移差小于预设阈值时,确定已完成与所述Redis服务器之间的数据同步。
7.根据权利要求6所述的装置,其中,当确定已完成与所述Redis服务器之间的数据同步后,如果所述接收模块进一步接收到来自所述Redis服务器的增量数据,则直接将所述增量数据存储在所述第二存储模块中。
8.根据权利要求6所述的装置,其中,所述全量数据为所述Redis服务器根据接收到的同步请求生成的数据快照文件,所述第一存储模块通过多线程并行运行的方式解析所述数据快照文件,并对解析结果为指定类型的数据通过批量写入的方式进行存储,其中,指定类型的数据包括:hash,set,list,和/或zset类型的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510325597.1/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置