CN111026783A - 一种防卡死的数据存储方法、系统及装置 - Google Patents
一种防卡死的数据存储方法、系统及装置 Download PDFInfo
- Publication number
- CN111026783A CN111026783A CN201911005025.XA CN201911005025A CN111026783A CN 111026783 A CN111026783 A CN 111026783A CN 201911005025 A CN201911005025 A CN 201911005025A CN 111026783 A CN111026783 A CN 111026783A
- Authority
- CN
- China
- Prior art keywords
- data
- redis
- database
- slave
- cache unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000013500 data storage Methods 0.000 title claims abstract description 32
- 238000011084 recovery Methods 0.000 claims description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种防卡死的数据存储方法、装置及系统,该方法包括:搭建redis集群;获取数据,把数据写入到redis集群的主redis缓存单元;把写入到主redis缓存单元的数据同步到redis集群的从redis缓存单元;把主redis缓存单元的数据存储到主数据库;把主数据库的数据复制到从数据库。该系统包括:初始模块、写入模块、同步模块、存储模块和复制模块。该装置包括存储器以及用于执行上述防卡死的数据存储方法的处理器。通过使用本发明,可提高服务器的负载性能。本发明作为一种防卡死的数据存储方法、装置及系统可广泛应用于数据存储领域。
Description
技术领域
本发明涉及数据存储领域,尤其涉及一种防卡死的数据存储方法、系统及装置。
背景技术
目前,存储数据的方式有很多,有的会直接采用redis集群存储数据,但是并不适用于存储有关联的数据,有的是把数据存在如mysql的数据库,利用redis作缓存,但是目前的存储方式由于存储数据和读取数据都在一个数据库进行,进行读操作的时候比较麻烦,如果遇到并发量大的时候,容易出现卡死的情况。
发明内容
为了解决上述技术问题,本发明的目的是提供一种防卡死的数据存储方法、装置及系统,可提高服务器的负载性能。
本发明所采用的第一技术方案是:一种防卡死的数据存储方法,包括以下步骤:
搭建redis集群;
获取数据,把数据写入到redis集群的主redis缓存单元;
把写入到主redis缓存单元的数据同步到redis集群的从redis缓存单元;
把主redis缓存单元的数据存储到主数据库;
把主数据库的数据复制到从数据库。
所述主redis缓存单元只进行写操作,所述从redis缓存单元只进行读操作,所述主数据库只允许存储,所述从数据库只允许读取。
进一步,所述主数据库是mysql数据库,用于储存有关联的数据,所述从数据库类型与主数据库一致,用于从主数据库复制数据。
进一步,所述从数据库与集群的从redis缓存单元一一对应。
进一步,所述主redis缓存单元同步到从redis缓存单元是实时同步的,当主redis缓存单元数据丢失时,可以通过从redis缓存单元进行恢复。
进一步,所述主redis缓存单元可设置为可被从redis缓存单元替换或不可被从redis缓存单元替换。
进一步,所述主数据库可被从数据库替换,主数据库出现故障时,将从数据库替换主数据库继续进行存储工作。
进一步,所述主数据库数据丢失时,可在从数据库复制数据进行回复。
本发明所采用的第二技术方案是:一种防卡死数据存储系统,包括:
初始模块,用于搭建redis集群;
写入模块,用于获取数据,把数据写入到redis集群的主redis缓存单元;
同步模块,用于把写入到主redis缓存单元的数据同步到redis集群的从redis缓存单元;
存储模块,用于把主redis缓存单元的数据存储到主数据库;
复制模块,用于把主数据库的数据复制到从数据库。
本发明所采用的第三技术方案是:一种防卡死的数据存储装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述第一技术方案一种防卡死的数据存储方法。
本发明方法、装置及系统的有益效果是:本发明把数据存储分为两层,第一层以redis集群来实现,通过在主redis缓存单元存储,在集群的从redis缓存单元读取来实现读写分离,第二层以mysql的主从复制来实现,在主数据库存储,在从数据库读取,使读操作和写操作不在同一个数据库中进行,可以有效提高服务器的负载性能。
附图说明
图1是本发明一种防卡死的数据存储方法的步骤流程图;
图2是本发明一种防卡死的数据存储系统的结构框图;
具体实施方式
下面结合附图和具体实施例对本发明做进一步的详细说明。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
如图1所示,本发明提供了一种防卡死的数据存储方法,该方法包括以下步骤:
S101、搭建一个redis集群;
具体地,其中主redis缓存单元只允许进行写操作,从redis缓存单元只允许进行读操作。
S102、获取数据,把数据写入到主redis缓存单元;
具体地,所有的写操作都在主redis缓存单元中进行。
S103、把写入到主redis缓存单元的数据同步到该集群的从redis缓存单元;
具体地,数据同步分为两步,当初次连接启动时,把主redis缓存单元的全部数据同步到从redis缓存单元中,后续只是把主redis缓存单元有修改的数据同步到从redis缓存单元。
S104、把主redis缓存单元的数据存储到主数据库;
具体地,根据需要存储的数据的类型来选用主数据库的类型,并且把一些不适合放在redis里存储的以及不常用的数据存储到主数据库,这样既可以提高服务器负载性能,又可以使该方案适用的场景更广泛,还可以极大的增大存储空间,使其能存储更多数据。
S105、把主数据库的数据复制到从数据库。
具体地,根据S101搭建的redis集群,来决定选用多少个从数据库。
进一步作为本方法的优选实施例,所述主数据库和从数据库均采用mysql数据库,该数据库属于关系型数据库,可用于储存有关联的数据,所述从数据库类型与主数据库一致,用于从主数据库复制数据。
进一步作为本方法的优选实施例,所述从数据库与集群的从redis缓存单元一一对应。
进一步作为本方法的优选实施例,所述主redis缓存单元同步到从redis缓存单元是实时同步的,当主redis缓存单元数据丢失时,可以通过从redis缓存单元进行恢复。
进一步作为本方法的优选实施例,所述主redis缓存单元可设置为可被从redis缓存单元替换或不可被从redis缓存单元替换。
具体地,如果设置为可被从redis缓存单元替换时,当主redis缓存单元出现故障时,可以提出以其中一个从redis缓存单元充当主redis缓存单元,如果设置为不可被从redis缓存单元替换,当主redis缓存单元出现故障时,从redis缓存单元等待主redis缓存单元重启后重新连接。
进一步作为本方法的优选实施例,所述主数据库可被从数据库替换,主数据库出现故障时,将从数据库替换主数据库继续进行存储工作。
进一步作为本方法的优选实施例,所述主数据库数据丢失时,可在从数据库复制数据。
下面给出一个具体实施例,搭建一个一主四从的redis集群,以该集群的其中一个redis为主redis缓存单元,其他4个redis为从redis缓存单元,为了与redis集群的从redis缓存单元一一对应,所以选用4个从数据库,当数据需要存储时,先把数据写进redis集群的主redis缓存单元,然后同步复制到其余从redis缓存单元,并且把主redis缓存单元中需要长久存储的数据以及不常用的数据存储到主mysql数据库,最后把主mysql数据库的数据复制到4个从数据库中。当需要读取数据时,先在其中一个从redis缓存单元读取,若该从redis缓存单元没有所需的数据,再到其所对应的从数据库中读取,这样节省了存储空间与读取时间。
如图2所示,一种防卡死的数据存储系统,包括:
初始模块,用于搭建一个redis集群,限定一个redis为主redis缓存单元,其余多个redis为从redis缓存单元;
写入模块,用于获取数据,把数据写入到主redis缓存单元;
同步模块,用于把写入到主redis缓存单元的数据同步到该集群的从redis缓存单元;
存储模块,用于把主redis缓存单元的数据存储到主数据库;
复制模块,用于把主数据库的数据复制到从数据库。
优选地,所述一种防卡死的数据存储系统,还包括:
调用模块,用于当主数据库出现故障时,调用从数据库充当主数据库继续工作。
本发明还提供了一种防卡死的数据存储装置,该装置包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述一种防卡死的数据存储方法。
上述方法实施例中的内容均适用于本装置实施例中,本装置实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
由上述可得,本发明的存储方案所具有的优点是:通过更改数据库的类型,可存储各种类型的数据;读取数据时,先在redis缓存单元读取,在redis缓存单元读取不到所需的数据时,再到数据库里搜索;通过redis集群在一个redis里写数据,在其他4个redis里读数据,实现读写分离,可以提高服务器的负载能力;通过把不常用的数据存储到mysql数据库,极大的增加存储空间;可以通过使用多个从redis缓存单元以及多个从数据库来提高服务器的容灾能力。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.一种防卡死的数据存储方法,其特征在于:包括以下步骤:
搭建redis集群;
获取数据,把数据写入到redis集群的主redis缓存单元;
把写入到主redis缓存单元的数据同步到redis集群的从redis缓存单元;
把主redis缓存单元的数据存储到主数据库;
把主数据库的数据复制到从数据库;
所述主redis缓存单元只用于进行写操作,所述从redis缓存单元只用于进行读操作,所述主数据库只允许存储,所述从数据库只允许读取。
2.根据权利要求1所述一种防卡死的数据存储方法,其特征在于:所述主数据库和从数据库均采用mysql数据库。
3.根据权利要求1所述一种防卡死的数据存储方法,其特征在于:所述从数据库的数量与集群的从redis缓存单元数量相同并且一一对应。
4.根据权利要求1所述一种防卡死的数据存储方法,其特征在于:所述主redis缓存单元实时同步数据到从redis缓存单元,当主redis缓存单元数据丢失时,可把从redis缓存单元的数据恢复到主redis缓存单元。
5.根据权利要求1所述一种防卡死的数据存储方法,其特征在于:所述主redis缓存单元可设置为可被从redis缓存单元替换或不可被从redis缓存单元替换。
6.根据权利要求1所述一种防卡死的数据存储方法,其特征在于:还包括:当主数据库出现故障时,将从数据库替换主数据库继续进行存储工作。
7.根据权利要求1所述一种防卡死的数据存储方法,其特征在于:所述主数据库数据丢失时,可在从数据库复制数据进行恢复。
8.一种防卡死的数据存储系统,其特征在于:包括:
初始模块,用于搭建redis集群;
写入模块,用于获取数据,把数据写入到redis集群的主redis缓存单元;
同步模块,用于把写入到主redis缓存单元的数据同步到redis集群的从redis缓存单元;
存储模块,用于把主redis缓存单元的数据存储到主数据库;
复制模块,用于把主数据库的数据复制到从数据库。
9.根据权利要求8所述一种防卡死的数据存储系统,其特征在于:包括:
调用模块,用于当主数据库出现故障时,将从数据库替换主数据库继续进行存储工作。
10.一种防卡死的数据存储装置,其特征在于:包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-7任一项所述一种防卡死的数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911005025.XA CN111026783A (zh) | 2019-10-22 | 2019-10-22 | 一种防卡死的数据存储方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911005025.XA CN111026783A (zh) | 2019-10-22 | 2019-10-22 | 一种防卡死的数据存储方法、系统及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111026783A true CN111026783A (zh) | 2020-04-17 |
Family
ID=70201327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911005025.XA Pending CN111026783A (zh) | 2019-10-22 | 2019-10-22 | 一种防卡死的数据存储方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111026783A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632092A (zh) * | 2020-12-18 | 2021-04-09 | 北京浪潮数据技术有限公司 | 一种集群管理方法、装置、设备及存储介质 |
CN112650807A (zh) * | 2021-01-04 | 2021-04-13 | 成都知道创宇信息技术有限公司 | 数据存储管理方法、装置、电子设备和可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104965850A (zh) * | 2015-04-29 | 2015-10-07 | 云南电网有限责任公司 | 一种基于开源技术的数据库高可用实现方法 |
CN104993940A (zh) * | 2015-05-11 | 2015-10-21 | 广东小天才科技有限公司 | 一种减少主备节点故障切换过程中数据丢失的方法和装置 |
CN107734004A (zh) * | 2017-09-26 | 2018-02-23 | 河海大学 | 一种基于Nginx、Redis的高并发负载均衡系统 |
US20180253483A1 (en) * | 2017-03-06 | 2018-09-06 | Datastreams Corp. | Apparatus and method for replicating changed-data in source database management system to target database management system in real time |
CN108614876A (zh) * | 2018-04-26 | 2018-10-02 | 武汉斗鱼网络科技有限公司 | 一种基于Redis数据库的系统和数据处理方法 |
-
2019
- 2019-10-22 CN CN201911005025.XA patent/CN111026783A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104965850A (zh) * | 2015-04-29 | 2015-10-07 | 云南电网有限责任公司 | 一种基于开源技术的数据库高可用实现方法 |
CN104993940A (zh) * | 2015-05-11 | 2015-10-21 | 广东小天才科技有限公司 | 一种减少主备节点故障切换过程中数据丢失的方法和装置 |
US20180253483A1 (en) * | 2017-03-06 | 2018-09-06 | Datastreams Corp. | Apparatus and method for replicating changed-data in source database management system to target database management system in real time |
CN107734004A (zh) * | 2017-09-26 | 2018-02-23 | 河海大学 | 一种基于Nginx、Redis的高并发负载均衡系统 |
CN108614876A (zh) * | 2018-04-26 | 2018-10-02 | 武汉斗鱼网络科技有限公司 | 一种基于Redis数据库的系统和数据处理方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632092A (zh) * | 2020-12-18 | 2021-04-09 | 北京浪潮数据技术有限公司 | 一种集群管理方法、装置、设备及存储介质 |
CN112650807A (zh) * | 2021-01-04 | 2021-04-13 | 成都知道创宇信息技术有限公司 | 数据存储管理方法、装置、电子设备和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190163591A1 (en) | Remote Data Replication Method and System | |
CN101334797B (zh) | 一种分布式文件系统及其数据块一致性管理的方法 | |
US8527459B2 (en) | System and method for data replication between heterogeneous databases | |
US10949415B2 (en) | Logging system using persistent memory | |
JP4419884B2 (ja) | データ複製装置、方法及びプログラム並びに記憶システム | |
CN108509462B (zh) | 一种同步活动事务表的方法及装置 | |
CN104077380B (zh) | 一种重复数据删除方法、装置及系统 | |
US7698319B2 (en) | Database system management method, database system, database device, and backup program | |
CN104881418B (zh) | 用于MySQL的快速回收回滚空间的方法和装置 | |
CN105930500A (zh) | 数据库系统中事务恢复的方法与数据库管理系统 | |
CN1653427A (zh) | 用于创建虚拟数据拷贝的方法和装置 | |
CN111078667B (zh) | 一种数据迁移的方法以及相关装置 | |
CN102955720A (zh) | 一种提高ext文件系统稳定性的方法 | |
CN105574187A (zh) | 一种异构数据库复制事务一致性保障方法及系统 | |
CN110597663A (zh) | 一种事务处理方法及装置 | |
CN111026783A (zh) | 一种防卡死的数据存储方法、系统及装置 | |
CN105353988A (zh) | 一种元数据读写方法及装置 | |
CN113608701A (zh) | 一种存储系统中数据管理方法和固态硬盘 | |
CN106502830B (zh) | 一种基于Btrfs文件系统的系统备份还原方法 | |
CN107329695B (zh) | 一种分布式存储内存管理方法、系统及计算机存储介质 | |
CN110134551B (zh) | 一种持续数据保护方法及装置 | |
CN116303789A (zh) | 多分片多副本数据库并行同步方法、装置及可读介质 | |
CN111858159A (zh) | 一种基于链式克隆特性实现的备份方法与系统 | |
US9235349B2 (en) | Data duplication system, data duplication method, and program thereof | |
CN105659214B (zh) | 数据单元集合的检查点设置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221026 Address after: Room 1602, 16th Floor, Building 18, Yard 6, Wenhuayuan West Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing 100176 Applicant after: Beijing Lajin Zhongbo Technology Co.,Ltd. Address before: 3rd Floor, Sagittarius Building A (Building), Wuxi Software Park, No. 18 Zhenze Road, Wuxi New District, Wuxi City, Jiangsu Province, 214000 Applicant before: WUXI TVMINING MEDIA SCIENCE & TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right |