[发明专利]一种基于消息队列的异步数据备份方法在审
申请号: | 201710081470.9 | 申请日: | 2017-02-15 |
公开(公告)号: | CN106874145A | 公开(公告)日: | 2017-06-20 |
发明(设计)人: | 郭凤;徐兵兵;丁庆申;董志鹏 | 申请(专利权)人: | 山东浪潮商用系统有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F17/30 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 孟峣 |
地址: | 250100 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 消息 队列 异步 数据 备份 方法 | ||
技术领域
本发明涉及大数据技术领域,具体地说是一种基于消息队列的异步数据备份方法。
背景技术
随着大数据时代的到来,人们越来越多的意识到数据对企业的重要性。在这个“数据即资产”的时代,如何利用数据备份来保证数据安全也成为我们迫切需要解决的难题。传统的数据备份方案大多依赖于数据库的冗余模式(主从库),其缺点如下:
依赖于特定的数据库平台,不能满足不同应用场景数据备份需求。
采用主从库之间的数据复制模式,当主库因误操作执行清除数据操作时,存在数据丢失的风险。
局限于结构化数据,很难支持半结构化、非结构化数据的备份需求。
为了克服上述现有技术的不足,本发明提供了一种基于消息队列的数据备份方案,解决全品类数据备份的难题。
发明内容
本发明的技术任务是针对以上不足之处,提供一种基于消息队列的异步数据备份方法。
一种基于消息队列的异步数据备份方法,其实现过程为:
首先通过客户端发起数据写入请求;
然后由备份服务器读取请求消息并生成本地文件,该本地文件为临时文件,达到最大容量限制后输出数据文件;
最后将本地文件上传至ftp文件备份服务器,完成备份过程。
在客户端发起数据写入请求时,首先需要通过业务接口读取并判断是否开启备份开关配置,如果文件备份开关为开启状态,则将数据写入消息队列中。
备份服务器通过持续读取消息队列来生成本地数据文件,具体过程为:
备份服务器读取消息队列,判断是否有新消息,如果没有则休眠10s后继续读取,如有新消息,则读取消息内容,调用文件写入接口;
文件写入接口判断是否需要生成新文件:
如果不需要生成新文件,则追加写入文件内容,即采用追加的方式写入文件内容,结构化数据写文本文件,一行写一条数据,非结构化数据写二进制文件,以TLV格式写入文件内容,单个数据文件写入数据时以加锁的方式控制并发访问;
如果需要生成新数据文件,则需先将临时文件输出至本地目录,然后将文件备份结果写记录,最后生成新的临时文件,写入文件内容。
在上述步骤中生成的新数据文件采用如下规则命名:表名+主机ip第四段+日期+主键,并以后缀的方式区分临时文件及数据文件,新生成的临时文件以.tmp为后缀;已写入完成的数据文件以.data为后缀。
所述文件备份结果写记录在备份文件结果记录模块中,该模块用于统计分析、数据比对,并根据存储记录,文件恢复时快速定位备份文件,该备份文件结果记录模块中记录的内容包括ID;日期;备份文件类型;业务表名;备份文件名;文件大小,单位为MB;记录数,即文件数据条数;创建时间,即输出数据文件的时间;是否已上传,即用于标识文件是否已上传至ftp服务器,0表示否,1表示是;上传时间;ftp文件备份服务器主机ip;文件存放主目录;是否已删除,用于标识文件是否已从ftp服务器删除,0表示否,1表示是。
将本地文件上传至ftp文件备份服务器的具体过程为:
首先扫描本地文件目录,判断是否存在数据文件,如果不存在则休眠10分钟后继续扫描;
如果存在待上传的数据文件,则统计ftp文件备份服务器存储使用情况,判断是否达到存储上限;
如果达到存储上限则删除文件,释放空间,实现数据滚动存储,删除规则为一次删除一天的数据,优先删除最早日期的数据;
最后将本地数据文件上传至ftp文件备份服务器,上传成功后更新相关记录信息并删除本地文件。
所述ftp文件备份服务器数据存储规划根据不同的文件类型,通过设置时间、容量两个维度进行控制,如果存储时间或者容量任一维度达到阈值限制,则进行滚动存储。
本发明的一种基于消息队列的异步数据备份方法和现有技术相比,具有以下有益效果:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮商用系统有限公司,未经山东浪潮商用系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710081470.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种JS引擎容错方法和装置
- 下一篇:安防监控中云备份的方法及系统