CN105630689B - 一种分布式存储系统中加速数据重建的方法 - Google Patents
一种分布式存储系统中加速数据重建的方法 Download PDFInfo
- Publication number
- CN105630689B CN105630689B CN201410603479.8A CN201410603479A CN105630689B CN 105630689 B CN105630689 B CN 105630689B CN 201410603479 A CN201410603479 A CN 201410603479A CN 105630689 B CN105630689 B CN 105630689B
- Authority
- CN
- China
- Prior art keywords
- disk
- file
- data
- reconstruction
- container
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种分布式存储系统中加速数据重建的方法,所述方法包括下述步骤:引入数据聚合策略,将小文件数据存放在大的容器中进行重建;集中分配存有容器文件的磁盘块,并将每个磁盘上的重建任务串行化。该方法在极大程度减少了IO次数的同时,充分提升了磁盘带宽,从而使磁盘的存储压力得到了释放;不仅解决了数据重建速率较慢和单块磁盘损坏后数据重建周期长、风险大的问题,而且减少了资源浪费,大大节约了成本。
Description
技术领域
本发明涉及计算机领域,具体涉及一种分布式存储系统中加速数据重建的方法。
背景技术
在数据大爆炸的今天,需要存储的数据量日益增长。据权威机构统计,在飞速增长的数据中,非结构化数据的增长率远高于结构化数据的增长。因此,为了满足很多行业对非结构化数据的存储需求,一批分布式集群存储系统应运而生,这其中的代表者如开源的lustre、IBM的GPFS、EMC的Isilon、华为的N9000等。所有的分布式集群存储,无一例外,均采用存储虚拟化技术,即将大批的存储节点和磁盘统一管理起来,对外呈现统一的命名空间。
随着磁盘技术的发展,磁盘容量快速增长,截止到2013年,4T硬盘已经上市;但是,磁盘的读写带宽并没有随容量那样线性增长。这就给分布式存储系统带来了这样的问题:当磁盘损坏后,数据重建的速率较慢,因此在磁盘数据重建期间,系统中很有可能有其他磁盘损坏,加剧了整个系统数据丢失的风险。而很多应用,如内容分发系统、数字图书馆、网盘等,存储大量的小文件,这样一来,磁盘IO会降低,导致单块磁盘损坏后数据重建周期更长,风险更大。
分布式存储系统长期工作在大并发、高负载的环境当中,因此即便对于单个文件,其数据块在磁盘上的分布由于受其他文件写入的影响而处于离散状态,因此对于后续读取的性能有一定影响,从而影响数据重建的性能。
对于小文件密集的应用,如网盘、内容分发系统等,由于在单块磁盘上存储了上千万的小文件,由于小文件磁盘读写速率小于10MB每秒,假定系统中同时有多个节点和多个磁盘一起参与,重建速率能够达到100MB每秒。那么对于4T硬盘,存储系统无负载情况下,全部数据重建完成约需要12小时。由于存储系统中,同一批次硬盘的寿命基本相近,因此在此重建期间,其他硬盘损坏的概率比较大,导致系统数据安全性进一步恶化。
为了弥补数据重建的效率低下,降低数据丢失的风险,大部分分布式存储系统引入更高的冗余度来保证系统能够同时容忍多块磁盘失效,如Isilon、N9000等均采用纠删码或三副本的方式来进行数据保护。采用更高的冗余度,能够在一定程度上降低整系统数据丢失的风险,但随之带来的是对于网络带宽浪费和增加成本的问题。
发明内容
针对现有技术的问题,本发明提出一种分布式存储系统中加速数据重建的方法,所述方法包括:引入数据聚合策略,将小文件数据存放在大的容器中进行重建;集中分配存有容器文件的磁盘块,并将每个磁盘上的重建任务串行化。该方案不仅解决了数据重建的速率较慢和单块磁盘损坏后数据重建周期长,风险大的问题,而且减少了资源浪费,节约了成本。
本发明的目的是采用下述技术方案实现的:
一种分布式存储系统中加速数据重建的方法,所述方法包括下述步骤:
优选的,(1)引入数据聚合策略,将小文件数据存放在大的容器中进行重建;
优选的,(2)集中分配存有容器文件的磁盘块,并将每个磁盘上的重建任务串行化。
优选的,所述步骤(1)包括,将多个小文件数据存储在同一个容器中,且每个容器以文件的形式存储在磁盘上。
进一步地,所述容器用于放置小文件数据信息,所述文件信息包括文件标识和文件元数据的位置信息。
进一步地,所述小文件数据添加后,在该文件元数据中记录此文件所在的容器号以及小文件数据在容器文件中所在位置;需要访问时,通过解析该文件元数据,以获取容器号和对应的容器文件,再把文件的数据从容器的相应位置读出即可。
优选的,所述容器在存储系统中属于隐藏文件,大小为10MB以上,其操作和正常文件一致;当磁盘损坏时,以容器文件为单位进行修复,从而减少IO次数。
优选的,所述(2)包括,当多个容器文件同时写入时,由于磁盘块分配不均,将磁盘块分配的操作进行串行化;
所述串行化的具体过程如下:当磁盘分配时,一次分配4M磁盘块,使数据连续地写在磁盘上,保证其磁盘空间中分配的各个容器文件互不影响;当所述容器文件关闭时,将没有用到的预分配的磁盘块释放。
进一步地,当所述容器文件正常写入时,按照文件写入时间的顺序,依次进行数据重建;
优选的,所述数据重建的方法包括下述步骤:
a)按照文件修改时间,将重建任务按照文件所在的磁盘归类和排序,并为每个磁盘生成一个重建任务列表,该任务列表上包括本磁盘的重建任务;
b)对于所述每个磁盘的文件重建任务列表,采用单个线程,对任务队列上的任务逐个处理。
与最接近的现有技术比,本发明的优异效果为:
通过本发明中的方法,有效提高数据重建的效率,大大降低了由于二次故障而导致的系统数据丢失风险;在极大程度减少了I0次数的同时,充分提升了磁盘带宽,从而使磁盘的存储压力得到了释放,有效地提高了硬盘使用寿命;不仅解决了数据重建速率较慢和单块磁盘损坏后数据重建周期长、风险大的问题,而且减少了资源浪费,大大节约了成本。
附图说明
如图1所示为本发明提供的小文件在容器里存储的示意图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
如图1所示,一种分布式存储系统中加速数据重建的方法,所述方法包括下述步骤:
(1)引入数据聚合策略,将小文件数据存放在大的容器中进行重建;
所述步骤(1)包括,将多个小文件数据存储在同一个容器中,且每个容器以文件的形式存储在磁盘上。
所述容器用于放置小文件数据信息,所述信息包括文件标识和文件元数据的位置信息。
所述小文件数据添加后,在该文件元数据中记录此文件所在的容器号以及小文件数据在容器文件中所在位置;需要访问时,通过解析该文件元数据,以获取容器号和对应容器的文件,再把文件的数据从容器的相应位置读出即可。
所述容器在存储系统中属于隐藏文件,大小为几十MB以上,其操作和正常文件一致;当磁盘损坏时,以容器文件为单位进行修复,从而大大减少IO次数。
(2)集中分配存有容器文件的磁盘块,并将每个磁盘上的重建任务串行化。
所述(2)包括,当多个容器文件同时写入时,由于磁盘块分配不均,将磁盘块分配的操作进行串行化;
所述串行化的具体过程如下:当磁盘分配时,一次分配4M磁盘块,使数据连续地写在磁盘上,保证其磁盘空间中分配的各个容器文件互不影响;当所述容器文件关闭时,将没有用到的预分配的磁盘块释放。
当所述容器文件正常写入时,按照文件写入时间的顺序,依次进行数据重建;
所述数据重建的方法包括下述步骤:
a)按照文件修改时间,将重建任务按照文件所在的磁盘归类和排序,并为每个磁盘生成一个重建任务列表,该任务列表上包括本磁盘的重建任务;
b)对于所述每个磁盘的文件重建任务列表,采用单个线程,对任务队列上的任务逐个处理。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员依然可以对本发明的具体实施方式进行修改或者等同替换,而这些未脱离本发明精神和范围的任何修改或者等同替换,其均在申请待批的本发明的权利要求保护范围之内。
Claims (7)
1.一种分布式存储系统中加速数据重建的方法,其特征在于,所述方法包括下述步骤:
(1)引入数据聚合策略,将小文件数据存放在大的容器中进行重建;
(2)集中分配存有容器文件的磁盘块,并将每个磁盘上的重建任务串行化;
所述(2)包括,当多个容器文件同时写入时,由于磁盘块分配不均,将磁盘块分配的操作进行串行化;
所述串行化的具体过程如下:当磁盘分配时,一次分配4M磁盘块,使数据连续地写在磁盘上,保证其磁盘空间中分配的各个容器文件互不影响;当所述容器文件关闭时,将没有用到的预分配的磁盘块释放。
2.如权利要求1所述一种分布式存储系统中加速数据重建的方法,其特征在于,所述步骤(1)包括,将多个小文件数据存储在同一个容器中,且每个容器以文件的形式存储在磁盘上。
3.如权利要求2所述一种分布式存储系统中加速数据重建的方法,其特征在于,所述容器用于放置小文件数据信息,所述信息包括文件标识和文件元数据的位置信息。
4.如权利要求3所述一种分布式存储系统中加速数据重建的方法,其特征在于,所述小文件数据添加后,在该文件元数据中记录此文件所在的容器号以及小文件数据在容器文件中所在位置;需要访问时,通过解析该文件的元数据,以获取容器号和对应的容器文件,再把文件的数据从容器的相应位置读出即可。
5.如权利要求4所述一种分布式存储系统中加速数据重建的方法,其特征在于,所述容器在存储系统中属于隐藏文件,大小为10MB以上;当磁盘损坏时,以容器文件为单位进行修复,从而减少IO次数。
6.如权利要求1所述的方法,其特征在于,当所述容器文件正常写入时,按照文件写入时间的顺序,依次进行数据重建。
7.如权利要求6所述数据重建的方法,其特征在于,所述数据重建的方法包括下述步骤:
a)按照文件修改时间,将重建任务按照文件所在的磁盘归类和排序,并为每个磁盘生成一个重建任务列表,该任务列表上包括本磁盘的重建任务;
b)对于所述每个磁盘的文件重建任务列表,采用单个线程,对任务队列上的任务逐个处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410603479.8A CN105630689B (zh) | 2014-10-30 | 2014-10-30 | 一种分布式存储系统中加速数据重建的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410603479.8A CN105630689B (zh) | 2014-10-30 | 2014-10-30 | 一种分布式存储系统中加速数据重建的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105630689A CN105630689A (zh) | 2016-06-01 |
CN105630689B true CN105630689B (zh) | 2018-11-27 |
Family
ID=56045658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410603479.8A Active CN105630689B (zh) | 2014-10-30 | 2014-10-30 | 一种分布式存储系统中加速数据重建的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105630689B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106648992A (zh) * | 2016-12-29 | 2017-05-10 | 创新科存储技术(深圳)有限公司 | 一种分布式存储系统中重构热点消除方法和装置 |
CN110109628B (zh) * | 2019-05-20 | 2022-08-09 | 深信服科技股份有限公司 | 分布式存储系统的数据重建方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101135955A (zh) * | 2007-10-19 | 2008-03-05 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列重建的方法和磁盘冗余阵列 |
CN101158965A (zh) * | 2007-10-25 | 2008-04-09 | 中国科学院计算技术研究所 | 一种分布式文件系统的文件读系统和方法 |
CN102332029A (zh) * | 2011-10-15 | 2012-01-25 | 西安交通大学 | 一种基于Hadoop的海量可归类小文件关联存储方法 |
CN103067418A (zh) * | 2011-10-19 | 2013-04-24 | 北大方正集团有限公司 | 一种元数据重建方法、设备及系统 |
CN103955530A (zh) * | 2014-05-12 | 2014-07-30 | 暨南大学 | 一种在线重复数据删除系统的数据重建优化方法 |
-
2014
- 2014-10-30 CN CN201410603479.8A patent/CN105630689B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101135955A (zh) * | 2007-10-19 | 2008-03-05 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列重建的方法和磁盘冗余阵列 |
CN101158965A (zh) * | 2007-10-25 | 2008-04-09 | 中国科学院计算技术研究所 | 一种分布式文件系统的文件读系统和方法 |
CN102332029A (zh) * | 2011-10-15 | 2012-01-25 | 西安交通大学 | 一种基于Hadoop的海量可归类小文件关联存储方法 |
CN103067418A (zh) * | 2011-10-19 | 2013-04-24 | 北大方正集团有限公司 | 一种元数据重建方法、设备及系统 |
CN103955530A (zh) * | 2014-05-12 | 2014-07-30 | 暨南大学 | 一种在线重复数据删除系统的数据重建优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105630689A (zh) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10310737B1 (en) | Size-targeted database I/O compression | |
CN105468293B (zh) | 通过预测损坏的m-页提高闪存利用率的方法和系统 | |
CN102857554B (zh) | 基于分布式存储系统进行数据冗余处理方法 | |
US10248676B2 (en) | Efficient B-Tree data serialization | |
US8108446B1 (en) | Methods and systems for managing deduplicated data using unilateral referencing | |
US9195657B2 (en) | Columnar storage of a database index | |
US9996557B2 (en) | Database storage system based on optical disk and method using the system | |
CN109284069A (zh) | 一种存放备份数据的分布式存储系统及方法 | |
US10756757B2 (en) | Maintaining data deduplication reference information | |
CN101916290B (zh) | 内存数据库的管理方法和装置 | |
US20130227237A1 (en) | Data management system and data management method | |
US20110066799A1 (en) | Enhanced virtual storage replication | |
US10509780B2 (en) | Maintaining I/O transaction metadata in log-with-index structure | |
CN109213432B (zh) | 利用日志结构合并树将数据写入的存储设备及其方法 | |
CN104462389A (zh) | 基于分级存储的分布式文件系统实现方法 | |
CN107239569A (zh) | 一种分布式文件系统子树存储方法及装置 | |
US11449402B2 (en) | Handling of offline storage disk | |
CN102999433A (zh) | 一种虚拟磁盘的冗余数据删除方法及系统 | |
WO2024077860A1 (zh) | 元数据的管理方法、装置和计算机设备和存储介质 | |
CN106469123A (zh) | 一种基于nvdimm的写缓存分配、释放方法及其装置 | |
CN109407985B (zh) | 一种数据管理的方法以及相关装置 | |
CN105630689B (zh) | 一种分布式存储系统中加速数据重建的方法 | |
CN110989924B (zh) | 一种元数据存储性能优化方法及存储服务器 | |
CN102722450B (zh) | 一种基于位置敏感哈希的删冗块设备存储方法 | |
CN104461388A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190910 Address after: 610000 Sichuan city of Chengdu province Tianfu Tianfu Avenue South Huayang Street No. 846 Co-patentee after: Sugon Information Industry Co., Ltd. Patentee after: CHINESE CORPORATION DAWNING INFORMATION INDUSTRY CHENGDU CO., LTD. Address before: 300384 Tianjin city Xiqing District Huayuan Industrial Zone (outer ring) Haitai Huake Street No. 15 1-3 Patentee before: Sugon Information Industry Co., Ltd. |