CN104780190A - 数据读写控制方法及装置 - Google Patents
数据读写控制方法及装置 Download PDFInfo
- Publication number
- CN104780190A CN104780190A CN201410014037.XA CN201410014037A CN104780190A CN 104780190 A CN104780190 A CN 104780190A CN 201410014037 A CN201410014037 A CN 201410014037A CN 104780190 A CN104780190 A CN 104780190A
- Authority
- CN
- China
- Prior art keywords
- data
- storage server
- storage
- read
- servers
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据读写控制方法及装置,所述方法应用于包含至少两台存储服务器的数据存储系统,所述方法包括:将数据分散存储于所述至少两台存储服务器;将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步;如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。本发明实施例实现将目标存储服务器的读写任务分配到系统中其他存储服务器,从而减轻目标存储器的负荷增加并发读写请求量,提高存储系统数据读写性能。
Description
技术领域
本发明涉及计算机领域,特别涉及一种数据读写控制方法及装置。
背景技术
数据存储系统是指向客户端提供数据存储、读写服务的系统。数据存储系统通常采用集中的存储服务器存放所有数据,客户端可以通过接口向存储服务器写入数据,以及从数据存储器读取数据。
但是,随着访问量的增加,存储系统数据读写性能随之下降。
发明内容
本发明实施例提供一种数据读写控制方法及装置,能够提高存储系统数据读写性能。
本发明实施例采用如下技术方案:
一种数据读写控制方法,所述方法应用于包含至少两台存储服务器的数据存储系统,所述方法包括:
将数据分散存储于所述至少两台存储服务器;
将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步;
如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。
可选的,所述将所述至少两台存储服务器之间进行数据同步包括:
根据所述至少两台存储服务器的配置信息,将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
可选的,还包括:
如果所述目标存储服务器故障解除或负载未超过阀值,则由所述目标存储服务器处理对于所述目标存储服务器的读写请求。
可选的,还包括:
如果所述目标存储服务器故障解除或负载超过阀值变为未超过阀值,则对所述目标存储服务器进行数据恢复。
可选的,还包括:
根据数据被读取频率,将被读取频率大于阀值的数据存于所述至少两台数据存储服务器的内存中。
一种数据读写控制装置,所述装置应用于包含至少两台存储服务器的数据存储系统,所述装置包括:
第一控制单元,用于将数据分散存储于所述至少两台存储服务器;
第二控制单元,用于将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步;
第三控制单元,用于如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。
可选的,所述第二控制单元具体用于,根据所述至少两台存储服务器的配置信息,将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
可选的,所述第三控制单元还用于,如果所述目标存储服务器故障解除或负载未超过阀值,则由所述目标存储服务器处理对于所述目标存储服务器的读写请求。
可选的,还包括:
第四控制单元,用于如果所述目标存储服务器故障解除或负载超过阀值变为未超过阀值,则对所述目标存储服务器进行数据恢复。
可选的,还包括:
第五控制单元,用于根据数据被读取频率,将被读取频率大于阀值的数据存于所述至少两台数据存储服务器的内存中。
基于上述技术方案,本发明实施例的数据读写控制方法及装置,将数据分散存储于存储至少两台存储服务器,将存储至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步,如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与存储目标存储器进行数据同步的存储服务器进行处理。这样,实现将目标存储服务器的读写任务分配到系统中其他存储服务器,从而减轻目标存储器的负荷增加并发读写请求量,提高存储系统数据读写性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种数据读写控制方法的流程图;
图2为本发明实施例1提供的另一种数据读写控制方法的流程图;
图3为本发明实施例2提供的一种数据读写控制装置的结构示意图;
图4为本发明实施例2提供的另一种数据读写控制装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,本实施例一种数据读写控制方法,所述方法应用于包含至少两台存储服务器的数据存储系统,所述方法包括:
11、将数据分散存储于所述至少两台存储服务器。
12、将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
13、如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。
其中,该阀值可以根据不同的应用场景进行设置变更。
本发明实施例可以通过数据读写控制装置实现,该装置可以为单独的设备,也可以位于存储服务器上,本发明实施例不做限定。
本实施例的方法,将数据分散存储于存储至少两台存储服务器,将存储至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步,如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与存储目标存储器进行数据同步的存储服务器进行处理。这样,实现将目标存储服务器的读写任务分配到系统中其他存储服务器,从而减轻目标存储器的负荷增加并发读写请求量,提高存储系统数据读写性能。
本实施例中可选的,上述12中将所述至少两台存储服务器之间进行数据同步时,可以根据所述至少两台存储服务器的配置信息,将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
具体地,可以根据数据存储系统中存储服务器的数量确定两台或两台以上的数据存储服务器之间相互进行数据同步,实现相互之间的数据备份,这样当其中一台存储服务器出现故障或负荷较高时,可以由数据同步的其他存储服务器实现数据读写。
其中,配置信息可以是数据存储系统的信息,包括分片和块数据信息。主要存储块数据信息,每个配置服务器上都有一份所有块数据信息的拷贝,以保证每台配置服务器上的数据的一致性。
如图2所示,本实施例中可选的,该方法还包括:
14、如果所述目标存储服务器故障解除或负载未超过阀值,则由所述目标存储服务器处理对于所述目标存储服务器的读写请求。
其中,该阀值可以根据不同的应用场景进行设置变更。
如图2所示,本实施例中可选的,该方法还包括:
15、如果所述目标存储服务器故障解除或负载超过阀值变为未超过阀值,则对所述目标存储服务器进行数据恢复。
其中,该阀值可以根据不同的应用场景进行设置变更。
本发明实施例中可选的,该方法还包括:
根据数据被读取频率,将被读取频率大于阀值的数据存于所述至少两台数据存储服务器的内存中。这样可以提高数据存储系统的数据读取效率。
其中,该阀值可以根据不同的应用场景进行设置变更。
本实施例的方法,可分散并发访问、存储、读写压力,自动分配请求到空闲存储服务器,从而增加并发请求数量,提高存储系统数据读写性能。
实施例2
本实施例提供一种数据读写控制装置,如图3所示,该装置包括:
第一控制单元31,用于将数据分散存储于所述至少两台存储服务器;
第二控制单元32,用于将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步;
第三控制单元33,用于如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。
本实施例中可选的,所述第二控制单元具体用于,根据所述至少两台存储服务器的配置信息,将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
本实施例中可选的,所述第三控制单元还用于,如果所述目标存储服务器故障解除或负载未超过阀值,则由所述目标存储服务器处理对于所述目标存储服务器的读写请求。
本实施例中可选的,如图4所示,该装置还包括:
第四控制单元34,用于如果所述目标存储服务器故障解除或负载超过阀值变为未超过阀值,则对所述目标存储服务器进行数据恢复。
本实施例中可选的,如图4所示,,还包括:
第五控制单元35,用于根据数据被读取频率,将被读取频率大于阀值的数据存于所述至少两台数据存储服务器的内存中。
本实施例的数据读写控制装置中各个单元的功能仅为简要描述,想实习实现过程请参阅上述方法实施例。本实施例的数据读写控制装置可以实现上述实施例的数据读写控制方法。
本实施例的方法,将数据分散存储于存储至少两台存储服务器,将存储至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步,如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与存储目标存储器进行数据同步的存储服务器进行处理。这样,实现将目标存储服务器的读写任务分配到系统中其他存储服务器,从而减轻目标存储器的负荷增加并发读写请求量,提高存储系统数据读写性能。
实施例3
本实施例的数据存储系统采用读写分离的方法,增加数据的服务器数量,分散读的压力。且支持数据分片存储,将不同数据根据一定分配规则,分配到不同存储服务器。每台存储服务器之间支持备份,当某一台数据库宕机后,备存储服务器将立即接替它的工作,保证用户服务不受任何影响。并将经常被读取的数据放到内存中提供读服务,从而提升读取速度和效率。
本实施例以采用6台存储服务器组成数据存储系统为例进行说明,应当理解,本发明其他实施例中还可以采用其他数量的存储服务器,本发明实施例不限定存储服务器的具体数量。
本实施例中存储设备之间,横向进行数据的主备存储,主备存储的目的在于进行故障转移,平时横向数据库上的所有数据是一致的,系统会自动进行数据的同步,在高并发请求的环境下,可以提供高可靠的数据存储、读取服务。一旦主备中的某一台服务器发生异常或宕机,业务不会因此暂停。
本实施例中存储设备之间,纵向进行数据的水平切分,水平切分的目的是将数据根据一定规则进行拆分,分散读写、存储压力,使数据库能够根据需求进行数据的读写、存储。
6台数据服务器中有3台服务器还承载了配置服务,负责存储数据库集群的配置信息,主备信息的同步,故障转移,数据恢复就靠配置信息来完成。另外3台服务器承载了路由服务,负责根据当前集群中的负载情况,动态、合理的分配访问请求,使整个集群中的服务器平均承载压力。
当服务压力不断激增时,可以动态在该数据存储系统中增加存储服务器来提供数据的纵向或横向的切分或配置、路由服务的扩展和支持,以便让整个数据存储系统在高并发请求的环境下可以持续提供高效、稳定的服务。
本实施例的数据存储系统,高性能、易部署、易使用,存储数据方便,模式自由,支持安全可靠的故障转移机制,保证系统稳定运行,高效,完备的数据恢复机制,根据操作日志机制恢复数据,扩展性好,自动处理碎片,以支持云计算层次的扩展性,当数据库集群压力不断激增时,可以快速增加服务器到集群中,减轻服务器压力,集群中的某台服务器宕机后,系统会自动进行故障转移,不会影响业务正常运行。
为使本领域技术人员充分了解本发明实施例的有益效果,将本发明实施例与现有技术比较如下:
在同样的大并发量请求数据读写、存储的环境下,现有的数据存储系统的性能会急剧下降,并发读的数量在1W/s次左右时,存储服务器已经不堪重负,CPU接近100%,内存也飙升到3G的占用量,请求回应的效率下降明显,甚至不能及时响应。
应用本发明实施例的数据读写控制方法及装置的数据存储系统,并发读的数量到达5W/s次时,服务器集群仍然可以正常的提供高效的服务,系统中的存储服务器CPU平均在30%上下,内存占用量也仅仅为1G左右,响应请求及时且稳定。
现有的数据存储系统,存储服务器不堪重负宕机后,整个线上业务停滞,无法提供服务。而应用本发明实施例的数据读写控制方法及装置的数据存储系统,系统中的某一台存储服务器宕机后,另外一台服务器会立即接替它的工作,使整个数据库系统持续保持对线上服务的支持。
本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种数据读写控制方法,其特征在于,所述方法应用于包含至少两台存储服务器的数据存储系统,所述方法包括:
将数据分散存储于所述至少两台存储服务器;
将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步;
如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。
2.根据权利要求1所述的方法,其特征在于,所述将所述至少两台存储服务器之间进行数据同步包括:
根据所述至少两台存储服务器的配置信息,将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
如果所述目标存储服务器故障解除或负载未超过阀值,则由所述目标存储服务器处理对于所述目标存储服务器的读写请求。
4.根据权利要求1或2所述的方法,其特征在于,还包括:
如果所述目标存储服务器故障解除或负载超过阀值变为未超过阀值,则对所述目标存储服务器进行数据恢复。
5.根据权利要求1或2所述的方法,其特征在于,还包括:
根据数据被读取频率,将被读取频率大于阀值的数据存于所述至少两台数据存储服务器的内存中。
6.一种数据读写控制装置,其特征在于,所述装置应用于包含至少两台存储服务器的数据存储系统,所述装置包括:
第一控制单元,用于将数据分散存储于所述至少两台存储服务器;
第二控制单元,用于将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步;
第三控制单元,用于如果目标存储服务器故障或负载超过阀值,则将对于目标存储服务器的读写请求,转为与所述目标存储器进行数据同步的存储服务器进行处理,所述目标存储服务器为所述至少两台存储服务器中的任意一台存储服务器。
7.根据权利要求6所述的装置,其特征在于,所述第二控制单元具体用于,根据所述至少两台存储服务器的配置信息,将所述至少两台存储服务器中的每至少两台存储服务器之间相互进行数据同步。
8.根据权利要求6或7所述的装置,其特征在于,所述第三控制单元还用于,如果所述目标存储服务器故障解除或负载未超过阀值,则由所述目标存储服务器处理对于所述目标存储服务器的读写请求。
9.根据权利要求6或7所述的装置,其特征在于,还包括:
第四控制单元,用于如果所述目标存储服务器故障解除或负载超过阀值变为未超过阀值,则对所述目标存储服务器进行数据恢复。
10.根据权利要求6或7所述的装置,其特征在于,还包括:
第五控制单元,用于根据数据被读取频率,将被读取频率大于阀值的数据存于所述至少两台数据存储服务器的内存中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410014037.XA CN104780190A (zh) | 2014-01-13 | 2014-01-13 | 数据读写控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410014037.XA CN104780190A (zh) | 2014-01-13 | 2014-01-13 | 数据读写控制方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104780190A true CN104780190A (zh) | 2015-07-15 |
Family
ID=53621429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410014037.XA Pending CN104780190A (zh) | 2014-01-13 | 2014-01-13 | 数据读写控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104780190A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105554134A (zh) * | 2015-12-23 | 2016-05-04 | 小米科技有限责任公司 | 信息同步方法及装置 |
CN106909312A (zh) * | 2015-12-23 | 2017-06-30 | 伊姆西公司 | 用于控制从存储系统读取数据的方法和装置 |
CN107135240A (zh) * | 2016-02-29 | 2017-09-05 | 华为技术有限公司 | 一种分布式系统中命令分发方法、装置及系统 |
CN108255417A (zh) * | 2017-11-30 | 2018-07-06 | 平安科技(深圳)有限公司 | 数据访问方法、电子装置及可读存储介质 |
CN109246234A (zh) * | 2018-09-30 | 2019-01-18 | 北京金山云网络技术有限公司 | 一种镜像文件下载方法、装置、电子设备及存储介质 |
CN109839890A (zh) * | 2017-11-27 | 2019-06-04 | 欧姆龙株式会社 | 控制装置、控制方法以及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158540A (zh) * | 2011-02-18 | 2011-08-17 | 广州从兴电子开发有限公司 | 分布式数据库实现系统及方法 |
CN102882983A (zh) * | 2012-10-22 | 2013-01-16 | 南京云创存储科技有限公司 | 一种云存储系统中提升并发访问性能的数据快速存储方法 |
-
2014
- 2014-01-13 CN CN201410014037.XA patent/CN104780190A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158540A (zh) * | 2011-02-18 | 2011-08-17 | 广州从兴电子开发有限公司 | 分布式数据库实现系统及方法 |
CN102882983A (zh) * | 2012-10-22 | 2013-01-16 | 南京云创存储科技有限公司 | 一种云存储系统中提升并发访问性能的数据快速存储方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105554134A (zh) * | 2015-12-23 | 2016-05-04 | 小米科技有限责任公司 | 信息同步方法及装置 |
CN106909312A (zh) * | 2015-12-23 | 2017-06-30 | 伊姆西公司 | 用于控制从存储系统读取数据的方法和装置 |
CN105554134B (zh) * | 2015-12-23 | 2018-12-18 | 小米科技有限责任公司 | 信息同步方法及装置 |
CN107135240A (zh) * | 2016-02-29 | 2017-09-05 | 华为技术有限公司 | 一种分布式系统中命令分发方法、装置及系统 |
CN109839890A (zh) * | 2017-11-27 | 2019-06-04 | 欧姆龙株式会社 | 控制装置、控制方法以及计算机可读存储介质 |
CN109839890B (zh) * | 2017-11-27 | 2022-05-24 | 欧姆龙株式会社 | 控制装置、控制方法以及计算机可读存储介质 |
CN108255417A (zh) * | 2017-11-30 | 2018-07-06 | 平安科技(深圳)有限公司 | 数据访问方法、电子装置及可读存储介质 |
WO2019104981A1 (zh) * | 2017-11-30 | 2019-06-06 | 平安科技(深圳)有限公司 | 数据访问方法、电子装置及可读存储介质 |
CN108255417B (zh) * | 2017-11-30 | 2020-11-24 | 平安科技(深圳)有限公司 | 数据访问方法、电子装置及可读存储介质 |
CN109246234A (zh) * | 2018-09-30 | 2019-01-18 | 北京金山云网络技术有限公司 | 一种镜像文件下载方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104320401B (zh) | 一种基于分布式文件系统的大数据存储访问系统及方法 | |
CN104780190A (zh) | 数据读写控制方法及装置 | |
CN111182067B (zh) | 一种基于星际文件系统ipfs的数据写入方法及设备 | |
CN102594849B (zh) | 数据备份、恢复方法、虚拟机快照删除、回滚方法及装置 | |
CN106657314B (zh) | 跨数据中心数据同步系统及方法 | |
US9659078B2 (en) | System and method for supporting failover during synchronization between clusters in a distributed data grid | |
CN102411637A (zh) | 分布式文件系统的元数据管理方法 | |
CN104378423A (zh) | 元数据集群分布式存储系统及读取、写入存储数据的方法 | |
CN105095317A (zh) | 分布式数据库服务管理系统 | |
JP5686034B2 (ja) | クラスタシステム、同期制御方法、サーバ装置および同期制御プログラム | |
CN107734017B (zh) | 数据服务方法及系统 | |
CN113282564B (zh) | 数据存储方法、系统、节点和存储介质 | |
CN107623703B (zh) | 全局事务标识gtid的同步方法、装置及系统 | |
CN103500120A (zh) | 基于多线程异步双写的分布式缓存高可用处理方法及系统 | |
CN109739435B (zh) | 文件存储和更新方法及装置 | |
CN105404679A (zh) | 数据处理方法和装置 | |
CN104735110A (zh) | 元数据管理方法和系统 | |
CN106919473A (zh) | 一种数据灾备系统及业务处理方法 | |
CN103023996A (zh) | 一种云数据存储系统 | |
CN104104739A (zh) | 一种云存储系统元数据服务集群的数据同步方法 | |
Montag | Understanding neo4j scalability | |
CN106095957A (zh) | 分布式文件系统的跨域多副本文件同步方法及装置 | |
CN104750757A (zh) | 一种基于HBase的数据存储方法和设备 | |
CN103384266A (zh) | 一种基于文件级实时同步的Parastor200管理节点高可用方法 | |
CN106951456B (zh) | 一种内存数据库系统及数据处理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150715 |
|
RJ01 | Rejection of invention patent application after publication |