[发明专利]一种基于Redis数据库的系统和数据处理方法有效
申请号: | 201810389533.1 | 申请日: | 2018-04-26 |
公开(公告)号: | CN108614876B | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 张振铎;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F11/14 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 张成新 |
地址: | 430000 湖北省武汉市武汉东湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 redis 数据库 系统 数据处理 方法 | ||
一种基于Redis数据库的系统,包括:主Redis数据库,其包括位于存储装置的主Redis增量文件;备份Redis数据库,其包括位于存储装置的备份Redis增量文件;第一写入模块,用于将数据写入主Redis数据库中;第二写入模块,用于在所述第一写入模块工作的同时,将所述数据写入所述备份Redis数据库中;第三写入模块,用于将所述数据采用每隔1秒同步的方式写入所述主Redis增量文件中;第四写入模块,用于将所述数据采用持续同步的方式写入所述备份Redis增量文件中。
技术领域
本发明涉及数据通信的技术领域,更具体地,涉及一种基于Redis数据库的系统和数据处理方法。
背景技术
Redis数据库将数据存储在内存,直接在内存中读取数据进行相应的操作处理,由于内存的数据读写速度要高出磁盘几个数量级,Redis数据库通过将数据存储在内存能够极大地提高数据的处理效率。
内存数据具有断电丢失的特性,一旦机器发生故障或重启时,内存中的数据将全部丢失,因而,如何确保内存数据的安全性是内存数据库需要解决的问题,Redis数据库提供了快照文件(RDB)和增量文件(AOF)两种方式确保内存数据的安全性。其中快照文件对Redis的影响很小,但是可靠性较差,一般对数据要求较高的场景应用较少。
增量文件是将Redis数据库的每次写操作都保持在一个增量文件,由于增量文件中保存了每次的写操作,可以很好地确保数据的安全性,然而,增量文件是不断地积累Redis数据库的写操作,随时时间的推移,增量文件会变得越来越大,占用大量的存储空间。
发明内容
针对上述问题中的至少一个,作为本发明的一个方面,提出了一种基于Redis数据库的系统,包括:
主Redis数据库,其包括位于存储装置的主Redis增量文件;
备份Redis数据库,其包括位于存储装置的备份Redis增量文件;
第一写入模块,用于将数据写入主Redis数据库中;
第二写入模块,用于在所述第一写入模块工作的同时,将所述数据写入所述备份Redis数据库中;
第三写入模块,用于将所述数据采用每隔1秒同步的方式写入所述主Redis增量文件中;
第四写入模块,用于将所述数据采用持续同步的方式写入所述备份Redis增量文件中。
在一些实施例中,当所述主Redis数据库发生宕机时,将所述备份Redis数据库的增量文件中最近1秒写入的数据合并到所述主Redis数据库的增量文件后,以完成数据恢复。
在一些实施例中,将写入所述备份Redis数据库的增量文件中的数据设置为3s过期。
其中,所述第一写入模块的工作方式为:调用分叉函数创建子进程,由所述子进程将写入内存的数据每隔1秒同步写入所述主Redis数据库的增量文件中;
所述第二写入模块的工作方式为:调用分叉函数创建子进程,由所述子进程将写入内存的数据持续同步写入所述备用Redis数据库的增量文件中。
作为本发明的另一个方面,提出了一种数据处理方法,所述方法包括如下步骤:
在主Redis数据库写入数据,同时将所述数据以每隔1秒同步的方式写入主Redis数据库的增量文件;
同时,将所述数据写入备份Redis数据库,同时将所述数据采用持续同步的方式写入备份Redis数据库的增量文件。
在一些实施例中,所述方法还包括:当主Redis数据库发生宕机时,将备份Redis数据库的增量文件中最近1秒写入的数据合并到主Redis数据库的增量文件后,以完成数据恢复。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810389533.1/2.html,转载请声明来源钻瓜专利网。