CN104484131B - 多磁盘服务器的数据处理装置及对应的处理方法 - Google Patents

多磁盘服务器的数据处理装置及对应的处理方法 Download PDF

Info

Publication number
CN104484131B
CN104484131B CN201410737690.9A CN201410737690A CN104484131B CN 104484131 B CN104484131 B CN 104484131B CN 201410737690 A CN201410737690 A CN 201410737690A CN 104484131 B CN104484131 B CN 104484131B
Authority
CN
China
Prior art keywords
write
disk
reading
read
queue
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.)
Active
Application number
CN201410737690.9A
Other languages
English (en)
Other versions
CN104484131A (zh
Inventor
彭达
邹涛
陈飞舟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Xishanju Network Technology Co ltd
Zhuhai Kingsoft Digital Network Technology Co Ltd
Original Assignee
Western Hills Residence Guangzhou Shi You Network Technology Co Ltd
Zhuhai Kingsoft Online Game Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Western Hills Residence Guangzhou Shi You Network Technology Co Ltd, Zhuhai Kingsoft Online Game Technology Co Ltd filed Critical Western Hills Residence Guangzhou Shi You Network Technology Co Ltd
Priority to CN201410737690.9A priority Critical patent/CN104484131B/zh
Publication of CN104484131A publication Critical patent/CN104484131A/zh
Application granted granted Critical
Publication of CN104484131B publication Critical patent/CN104484131B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种多磁盘服务器的数据处理装置及对应的处理方法,所述方法在用户发出写请求时,查询多磁盘服务器是否存在对应写数据,若不存在,则输出一个可以存储对应索引信息的空位置,并将该写请求写入公共队列,每一写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,将对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整;所述方法在用户发出读请求时,定位对应读取的数据所在磁盘,并将该读请求写入该磁盘的读队列,该磁盘的读线程检测到其对应的读队列不为空时,则从该读队列中获取对应读请求,从对应磁盘中读取数据。所述装置与所述方法对应。本发明使各磁盘上的数据分布更均匀,并提高维护效率。

Description

多磁盘服务器的数据处理装置及对应的处理方法
技术领域
本发明涉及数据存储领域,特别是一种多磁盘服务器的数据处理装置及对应的处理方法。
背景技术
多磁盘的服务器,在承载IO型业务时,如果数据规模较大,不论是何种磁盘类型,如SATA/SAS/SSD等,数据的频繁读写均容易产生较高的坏盘率。同时,相当多的业务在设计和部署时往往采用按单磁盘单业务进程的模式进行,因此坏盘时该磁盘上的业务进程故障或退出,势必对业务产生不良影响。
发明内容
为解决上述问题,本发明的目的在于提供一种多磁盘服务器的数据处理装置及对应的处理方法,使各磁盘上的数据分布更均匀,并提高维护效率。
本发明解决其问题所采用的技术方案是:
一种多磁盘服务器的数据处理装置,包括:
与多磁盘服务器对应的公共写队列;
用于接收用户的读或写请求的接收模块;
用于对多磁盘服务器进行索引查询的查询模块;
分别为每个磁盘设置有唯一写线程的写模块;
所述接收模块在接收到写请求时,将该写请求发送至查询模块,查询模块根据该写请求所对应的索引信息查找多磁盘服务器是否存在对应的写数据,若不存在,则输出一个可以存储该索引信息的空位置,并将该写请求写入公共写队列,与此同时,写模块中的各个写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,获得写请求的写线程将该写请求所对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整。
进一步,还包括:
用于从多磁盘服务器中读取数据的读模块,所述读模块包含有为每一磁盘设置的读线程;以及
分别为每一个磁盘对应设置的读队列;
所述接收模块在接收到读请求时,将该读请求发送至查询模块,查询模块根据该读请求的内存索引定位对应所要读取的数据所在的磁盘,并将该读请求写入该磁盘所对应的读队列,与此同时,读模块中的读线程检测到对应磁盘的读队列不为空时,则从该读队列中获取对应的读请求,并根据该读请求从对应磁盘中读取数据。
进一步,所述读模块为每一磁盘设置的读线程至少具有一个。
一种多磁盘服务器数据处理的方法,所述每一磁盘分别设置有对应的唯一写线程,且多磁盘服务器设置有对应的公共写队列,所述方法包括:
当用户发出写请求时,根据该写请求所对应的索引信息查询多磁盘服务器是否存在对应的写数据,若不存在,则输出一个可以存储该索引信息的空位置,并将该写请求写入公共队列,与此同时,每一写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,获得写请求的写线程将该写请求所对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整。
进一步,所述每一磁盘分别还对应设置有至少一个读线程和唯一的读队列,所述方法还包括:
当用户发出读请求时,根据该读请求的内存索引定位对应所要读取的数据所在的磁盘,并将该读请求写入该磁盘所对应的读队列,与此同时,该磁盘所对应的读线程检测到其对应的读队列不为空时,则从该读队列中获取对应的读请求,并根据该读请求从对应磁盘中读取数据。
本发明的有益效果是:
本发明采用一种多磁盘服务器的数据处理装置及对应的处理方法,所设置的读模块使磁盘服务器各磁盘的数据分布更均匀,充分达到各磁盘的负载均衡;当服务器某块磁盘故障时,不影响其它磁盘的工作,无需停机维护,可正常使用;某磁盘故障后,仅需热插拔式更换掉,无需准备运行环境、检查运行配置、启动业务进程等一系列故障恢复工作,在坏盘率高的业务中,该方法带来的效益尤其明显;业务进程中的写线程能自动检测并屏蔽故障硬盘,并能在换盘后自动恢复,人工运维成本非常低。
附图说明
下面结合附图和实例对本发明作进一步说明。
图1是本发明所对应的流程处理示意图。
具体实施方式
参照图1所示,本发明提供了一种多磁盘服务器的数据处理装置,包括:
与多磁盘服务器对应的公共写队列;
用于接收用户的读或写请求的接收模块;
用于对多磁盘服务器进行索引查询的查询模块;
分别为每个磁盘设置有唯一写线程的写模块;
所述接收模块在接收到写请求时,将该写请求发送至查询模块,查询模块根据该写请求所对应的索引信息查找多磁盘服务器是否存在对应的写数据,若不存在,则输出一个可以存储该索引信息的空位置,并将该写请求写入公共写队列,与此同时,写模块中的各个写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,获得写请求的写线程将该写请求所对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整。
以上是本发明在写数据时所对应的流程,与此同时,本发明还设置了相应的读流程,对应的,本发明所述数据处理装置还包括:
用于从多磁盘服务器中读取数据的读模块,所述读模块包含有为每一磁盘设置的读线程;以及
分别为每一个磁盘对应设置的读队列;
所述接收模块在接收到读请求时,将该读请求发送至查询模块,查询模块根据该读请求的内存索引定位对应所要读取的数据所在的磁盘,并将该读请求写入该磁盘所对应的读队列,与此同时,读模块中的读线程检测到对应磁盘的读队列不为空时,则从该读队列中获取对应的读请求,并根据该读请求从对应磁盘中读取数据。
为满足不同业务的读取性能的侧重指标,所述读模块为每一磁盘设置的读线程至少具有一个。
本发明所设置的读模块使磁盘服务器各磁盘的数据分布更均匀,充分达到各磁盘的负载均衡;当服务器某块磁盘故障时,不影响其它磁盘的工作,无需停机维护,可正常使用;某磁盘故障后,仅需热插拔式更换掉,无需准备运行环境、检查运行配置、启动业务进程等一系列故障恢复工作,在坏盘率高的业务中,该方法带来的效益尤其明显;业务进程中的写线程能自动检测并屏蔽故障硬盘,并能在换盘后自动恢复,人工运维成本非常低。
参照图1所示,本发明还提供了一种多磁盘服务器数据处理的方法,所述每一磁盘分别设置有对应的唯一写线程,且多磁盘服务器设置有对应的公共写队列,所述方法包括:
当用户发出写请求时,根据该写请求所对应的索引信息查询多磁盘服务器是否存在对应的写数据,若不存在,则输出一个可以存储该索引信息的空位置,并将该写请求写入公共队列,与此同时,每一写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,获得写请求的写线程将该写请求所对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整。
以上方法叙述了本发明对应的写流程。为了与该写流程对应,本发明还提供了对应的读流程。为实现该读流程,所述每一磁盘分别还对应设置有至少一个读线程和唯一的读队列,所述读流程对应的方法包括:
当用户发出读请求时,根据该读请求的内存索引定位对应所要读取的数据所在的磁盘,并将该读请求写入该磁盘所对应的读队列,与此同时,该磁盘所对应的读线程检测到其对应的读队列不为空时,则从该读队列中获取对应的读请求,并根据该读请求从对应磁盘中读取数据。
以上方法适用于网页存储系统、二进制数据存储和查询系统等各种系统,例如:
对于网页存储系统,具体数据路由到单台服务器后,查询线程首先在内存索引表内进行查找;然后根据请求类型将请求分发到特定队列,如果是写请求,则分发到唯一的一条写队列,如果是读请求,则分发到对应磁盘的读队列;写线程将竞争获取写请求,顺序写入数据文件,再回写索引信息到索引表;读线程则从自己负责的读队列获取读请求,读取数据后返回用户。
对于二进制数据存储和查询系统,给每条二进制数据指定或生成唯一的key值,进行路由分布后到达单台服务器,查询线程根据key值进行查找定位,再交付给写线程或读线程进行处理,写线程采用竞争获取请求的方式,读线程则只处理分发给自己的读请求,实现二进制数据的均匀存储、故障自动检测与恢复。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。

Claims (5)

1.一种多磁盘服务器的数据处理装置,其特征在于,包括:
与多磁盘服务器对应的公共写队列;
用于接收用户的读或写请求的接收模块;
用于对多磁盘服务器进行索引查询的查询模块;
分别为每个磁盘设置有唯一写线程的写模块;
所述接收模块在接收到写请求时,将该写请求发送至查询模块,查询模块根据该写请求所对应的索引信息查找多磁盘服务器是否存在对应的写数据,若不存在,则输出一个可以存储该索引信息的空位置,并将该写请求写入公共写队列,与此同时,写模块中的各个写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,获得写请求的写线程将该写请求所对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整。
2.根据权利要求1所述的多磁盘服务器的数据处理装置,其特征在于,还包括:
用于从多磁盘服务器中读取数据的读模块,所述读模块包含有为每一磁盘设置的读线程;以及
分别为每一个磁盘对应设置的读队列;
所述接收模块在接收到读请求时,将该读请求发送至查询模块,查询模块根据该读请求的内存索引定位对应所要读取的数据所在的磁盘,并将该读请求写入该磁盘所对应的读队列,与此同时,读模块中的读线程检测到对应磁盘的读队列不为空时,则从该读队列中获取对应的读请求,并根据该读请求从对应磁盘中读取数据。
3.根据权利要求2所述的多磁盘服务器的数据处理装置,其特征在于,所述读模块为每一磁盘设置的读线程至少具有一个。
4.一种多磁盘服务器数据处理的方法,其特征在于,对每一磁盘分别设置有对应的唯一写线程,且多磁盘服务器设置有对应的公共写队列,所述方法包括:
当用户发出写请求时,根据该写请求所对应的索引信息查询多磁盘服务器是否存在对应的写数据,若不存在,则输出一个可以存储该索引信息的空位置,并将该写请求写入公共写队列,与此同时,每一写线程在判断自身所对应的磁盘正常时,则从公共写队列中竞争获取写请求,获得写请求的写线程将该写请求所对应的写数据写入对应的磁盘中,并将对应空位置存储的索引信息补充完整。
5.根据权利要求4所述的多磁盘服务器数据处理的方法,其特征在于,所述每一磁盘分别还对应设置至少一个读线程和唯一的读队列,所述方法还包括:
当用户发出读请求时,根据该读请求的内存索引定位对应所要读取的数据所在的磁盘,并将该读请求写入该磁盘所对应的读队列,与此同时,该磁盘所对应的读线程检测到其对应的读队列不为空时,则从该读队列中获取对应的读请求,并根据该读请求从对应磁盘中读取数据。
CN201410737690.9A 2014-12-04 2014-12-04 多磁盘服务器的数据处理装置及对应的处理方法 Active CN104484131B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410737690.9A CN104484131B (zh) 2014-12-04 2014-12-04 多磁盘服务器的数据处理装置及对应的处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410737690.9A CN104484131B (zh) 2014-12-04 2014-12-04 多磁盘服务器的数据处理装置及对应的处理方法

Publications (2)

Publication Number Publication Date
CN104484131A CN104484131A (zh) 2015-04-01
CN104484131B true CN104484131B (zh) 2017-11-14

Family

ID=52758679

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410737690.9A Active CN104484131B (zh) 2014-12-04 2014-12-04 多磁盘服务器的数据处理装置及对应的处理方法

Country Status (1)

Country Link
CN (1) CN104484131B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025064B (zh) * 2016-01-30 2019-12-03 北京忆恒创源科技有限公司 一种低延迟高iops的数据访问方法
CN106250492B (zh) * 2016-07-28 2019-11-19 五八同城信息技术有限公司 索引的处理方法及装置
CN107526551B (zh) * 2017-09-14 2020-03-31 郑州云海信息技术有限公司 一种cpu多核的io请求处理方法、装置及设备
CN109815174A (zh) * 2018-12-13 2019-05-28 创新科软件技术(深圳)有限公司 一种多磁盘并发访问方法和装置
CN112671666B (zh) * 2020-11-16 2022-05-27 新华三大数据技术有限公司 Io处理方法及装置
CN114442925A (zh) * 2021-12-07 2022-05-06 苏州浪潮智能科技有限公司 非易失性存储硬盘多队列提交调度方法、装置及存储介质
CN114527936B (zh) * 2022-01-14 2023-08-08 苏州浪潮智能科技有限公司 一种服务器高性能磁盘分布式存储方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650681B (zh) * 2008-08-14 2013-01-09 鸿富锦精密工业(深圳)有限公司 多硬盘led灯测试系统及方法
CN102053800A (zh) * 2010-11-26 2011-05-11 华为技术有限公司 数据存取的方法、消息接收解析器及系统
CN103985393B (zh) * 2014-04-28 2017-03-01 武汉光忆科技有限公司 一种多光盘数据并行管理方法及装置

Also Published As

Publication number Publication date
CN104484131A (zh) 2015-04-01

Similar Documents

Publication Publication Date Title
CN104484131B (zh) 多磁盘服务器的数据处理装置及对应的处理方法
CN104461935B (zh) 一种进行数据存储的方法、装置及系统
CN105653524B (zh) 一种数据存储方法、装置和系统
CN105045917B (zh) 一种基于实例的分布式数据恢复方法和装置
CN104036029B (zh) 大数据一致性对比方法和系统
CN104239438B (zh) 基于分离存储的文件信息存储方法和文件信息读写方法
CN103902702A (zh) 一种数据存储系统和存储方法
CN103714086A (zh) 用于生成非关系数据库的模式的方法和设备
WO2014058711A1 (en) Creation of inverted index system, and data processing method and apparatus
CN101777017A (zh) 一种连续数据保护系统的快速恢复方法
CN102810116B (zh) 一种基于数据库连接的自动路由和负载均衡的方法及系统
CN103631967B (zh) 一种带自增量标识字段的数据表的处理方法及装置
CN106055654A (zh) 异构数据的整合方法以及装置
CN105740462A (zh) 一种支持不同环境之间的数据迁移方法
CN107944041A (zh) 一种hdfs的存储结构优化方法
CN103136244A (zh) 基于云计算平台的并行数据挖掘方法及系统
CN106672022A (zh) 一种轨道交通联锁表生成方法及系统
CN107818106B (zh) 一种大数据离线计算数据质量校验方法和装置
CN104932830B (zh) 信息处理方法及电子设备
CN206021244U (zh) 一种分布式计算机集群下的数据采集系统
CN105589733A (zh) 一种数据处理方法和装置
CN110019017B (zh) 一种基于访问特征的高能物理文件存储方法
CN102346693A (zh) 一种数据存储和数据恢复方法
CN105892954A (zh) 基于多副本的数据存储方法和装置
CN103543959A (zh) 海量数据高速缓存的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 519000 Room 102, 202, 302 and 402, No. 325, Qiandao Ring Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province, Room 102 and 202, No. 327 and Room 302, No. 329

Patentee after: Zhuhai Jinshan Digital Network Technology Co.,Ltd.

Patentee after: Guangzhou Xishanju Network Technology Co.,Ltd.

Address before: 519000 Jinshan software building, 8 Lanshan lane, Jida Jingshan Hill Road, Zhuhai, Guangdong

Patentee before: ZHUHAI KINGSOFT ONLINE GAME TECHNOLOGY Co.,Ltd.

Patentee before: GUANGZHOU SEASUN ENTERTAINMENT NETWORK TECHNOLOGY Co.,Ltd.