CN105530294A - 一种海量数据分布式存储的方法 - Google Patents
一种海量数据分布式存储的方法 Download PDFInfo
- Publication number
- CN105530294A CN105530294A CN201510885149.7A CN201510885149A CN105530294A CN 105530294 A CN105530294 A CN 105530294A CN 201510885149 A CN201510885149 A CN 201510885149A CN 105530294 A CN105530294 A CN 105530294A
- Authority
- CN
- China
- Prior art keywords
- data
- district
- copy
- hard disk
- area
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种海量数据分布式存储的方法,将数据存储区分为data区、copy区和coding区,其中:data区用于存储源数据;copy区用于存储副本数据,copy区与data区构成一个多副本完全备份容灾系统;coding区用于和data区构成一个完整的信息关联容灾系统。与现有技术相比,本发明的积极效果是:本发明从大数据存储成本、效率和负载均衡的角度,提出并设计实现一种基于数据信息关联策略和动态副本策略相结合的新方法,该方法可以在保证集群数据安全性的同时,显著提高系统数据恢复的速度,优化系统的负载均衡能力,降低系统整体的存储成本。
Description
技术领域
本发明涉及一种海量数据分布式存储的方法。
背景技术
互联网技术的迅速发展、信息设备的普及、以及企业及个人对信息技术的广泛应用促进了数据的大规模增长。如果说以前的数据主要是业务部门产生和利用的话,如今则是全民制造和分享数据。数据正变得无处不在,并通过各种可能的方式影响着企业业务和每个人的生活,社会进入了大数据(bigdata)时代。
数据的疯狂增长,也使得传统的数据存储模型遭遇了新的挑战:磁盘容量快速增加的同时,其访问速度并没有显著的提高,带来的直接后果是传统的数据存储方式无法胜任互联网时代的海量数据处理任务,Google率先设计并实现了一个新的分布式文件系统GFS(GoogleFileSystem)来解决了上述问题,继而Apache发布了GFS的开源版本HDFS(HadoopDistributedFileSystem)。
HDFS是大数据分布式解决方案中非常优秀并且实用存储平台,可以从多方面解决大数据存储的问题,但其具有一个先天性的缺陷,即数据安全性只能通过增加副本的策略来保证。比如,假设每个结点出问题的概率为50%,则1份源数据加2份副本数据的策略,整个平台出问题的概率为12.5%;再增加6个副本,则该平台出问题的概率可以降为0.2%,但此时数据冗余度极大,将浪费8倍于源数据的存储空间。
发明内容
为了克服现有技术的上述缺点,本发明提供了一种海量数据分布式存储的方法,既可以解决大数据访问的速度问题,又可以在一定程度上解决大数据低冗余度与高安全性之间的矛盾。
本发明解决其技术问题所采用的技术方案是:一种海量数据分布式存储的方法,将数据存储区分为data区、copy区和coding区,其中:data区用于存储源数据;copy区用于存储副本数据,copy区与data区构成一个多副本完全备份容灾系统;coding区用于和data区构成一个完整的信息关联容灾系统。
进一步地,所述多副本完全备份容灾系统是指:每次写数据时,首先将原始数据写入data区,然后利用动态副本策略,系统自动进行数据复制,在copy区写入数据副本。
更进一步地,data区和copy区的存储节点通过心跳机制定期向管理节点报告自身状态,管理节点据此判断该存储节点是否正常工作,一旦管理节点接收不到某一存储节点发送来的状态信息,就会判定该存储节点不能正常工作,从而将该存储节点上的数据重新恢复到其他正常工作的存储节点上,确保整个文件系统中数据维持特定的副本数。
更进一步地,所述多副本完全备份容灾系统在数据存储和复制过程中,管理节点通过存储节点的状态信息,均衡地分配待存储的数据,使得原始数据的多个副本存放在不同的物理节点上。
进一步地,所述信息关联容灾系统对coding区数据进行编码的方法是:对一个存储节点的n个扇区,将每个扇区划分为n等份,每一份称为一个块;要使系统能够容忍小于等于t/2个错误,则将每个扇区的前n-t块设置为信息块,存储有效信息,后t块设置为校验块,存储校验信息;当有部分硬盘出现故障时,系统使用余下的完好硬盘上对应扇区的数据译码恢复出故障硬盘扇区上的有效数据,并且在整个编译码过程中仅需要异或操作。
进一步地,所述信息关联容灾系统能够在恢复错误的同时提供不间断的读取服务:当系统中出现故障时,管理员用全新的硬盘替换错误的硬盘,并启动数据恢复过程;之后当系统接收到数据读取请求时,则仅读取未出错的旧硬盘上相应数据;在进行译码恢复数据并提供服务之后,重新编码得到丢失的部分校验信息,并将存储于错误硬盘上的数据存储到新硬盘上。
进一步地,所述信息关联容灾系统能够在系统空闲一段时间后,单独进行错误的恢复。
与现有技术相比,本发明的积极效果是:
本发明从大数据存储成本、效率和负载均衡的角度,提出并设计实现一种基于数据信息关联策略和动态副本策略相结合的新方法,该方法可以在保证集群数据安全性的同时,显著提高系统数据恢复的速度,优化系统的负载均衡能力,降低系统整体的存储成本。
具体实施方式
本发明方法将数据存储区分为:data区、copy区和coding区。data区用于存储源数据,即当数据第一次进入该存储平台时,数据存储的区域;copy区用于存储副本数据,即当data区存储了某一数据后,立刻在copy区通过复制的方法存储该数据的一个副本;copy区与data区构成了一个实施动态副本策略的HDFS系统(多副本完全备份容灾系统);coding区用于和data区构成一个完整的信息关联容灾系统。
该方法中,copy区与data区构成了一个实施动态副本策略的多副本完全备份容灾系统。每次写数据时,首先将原始数据写入data区,然后利用data-copy之间的动态副本策略,系统自动进行数据复制,在copy区写入数据副本,从而使得data区和copy区构成一个完整的基于复制策略的动态副本系统。
其特点之一是具有高容错性,data区和copy区的存储节点会通过心跳机制定期向管理节点报告自身状态,管理节点据此判断该存储节点是否正常工作,一旦管理节点接收不到该存储节点发送来的状态信息,就会判定该存储节点不能正常工作,从而将该存储节点上的数据重新恢复到其他存储节点上,以保证整个文件系统中数据维持特定的副本数。因此,理想状态下data-copy区的数据会处于一种动态的平衡,从而达到数据高容错的目的。
其特点之二是负载均衡。一方面,数据存储和复制过程中,管理节点可以通过存储节点的状态信息,均衡的分配待存储的数据,达到存储均衡的目的;另一方面,由于原始数据的多个副本存放在不同的物理节点上,用户在访问该数据时,可以根据自身所在的地理位置,访问距离自己最近节点上的数据,或根据当前网络状况,访问最优的网络链路,从而减少数据的传输时间,提高数据的访问效率。当多个用户同时访问相同数据时,也可以根据网络状况分别从不同的节点读取不同的数据副本,从而降低用户访问资源的延迟,减少单个节点的负担和网络拥堵,起到一定的负载均衡的作用。
基于复制策略的完全备份方法简单高效,但存储空间利用率比较低,特别是在高可靠性要求的情况下,利用率只有12.5%,甚至更低。为了解决该问题,在该方法中,coding区和data区构成一个完整的信息关联容灾系统。
在数据容错方面,系统对coding区数据进行编码。对一个存储节点的n个扇区,将每个扇区划分为n等份,每一份称为一个块;如果我们希望系统能够容忍小于等于t/2个错误,则将每个扇区的前n-t块设置为信息块,存储有效信息,后t块设置为校验块,存储校验信息。校验信息由一种类似于阵列码的容错编码方法生成。当有部分硬盘出现故障时,系统可以使用余下的完好硬盘上对应扇区的数据译码恢复出故障硬盘扇区上的有效数据,并且在整个编译码过程中仅仅需要异或操作,使得系统复杂度较低。
在数据恢复和服务提供方面,系统能够在恢复错误的同时提供不间断的读取服务。当系统中出现故障时,管理员用全新的硬盘替换错误的硬盘,并启动数据恢复过程。之后当系统接收到数据读取请求时,则仅读取未出错的旧硬盘上相应数据,进行译码恢复数据并提供服务之后,重新编码得到丢失的部分校验信息,并将存储于错误硬盘上的数据存储到新硬盘上,这样就可以在提供服务的同时进行出错数据的恢复。而当系统空闲一段时间之后,也可单独进行错误的恢复。
简单来说,原始数据首先写入data-copy区,构成一个多副本备份系统;当数据写入完成后达到一定的时间(可以自行设置)或者数据未被使用达到一定的时间,数据由data-copy区向data-coding区进行自主迁移,构成一个基于线性编码的信息关联容灾系统,从而实现高可靠与低冗余的有效结合。
Claims (7)
1.一种海量数据分布式存储的方法,其特征在于:将数据存储区分为data区、copy区和coding区,其中:data区用于存储源数据;copy区用于存储副本数据,copy区与data区构成一个多副本完全备份容灾系统;coding区用于和data区构成一个完整的信息关联容灾系统。
2.根据权利要求1所述的一种海量数据分布式存储的方法,其特征在于:所述多副本完全备份容灾系统是指:每次写数据时,首先将原始数据写入data区,然后利用动态副本策略,系统自动进行数据复制,在copy区写入数据副本。
3.根据权利要求2所述的一种海量数据分布式存储的方法,其特征在于:所述动态副本策略是指:data区和copy区的存储节点通过心跳机制定期向管理节点报告自身状态,管理节点据此判断该存储节点是否正常工作,一旦管理节点接收不到某一存储节点发送来的状态信息,就会判定该存储节点不能正常工作,从而将该存储节点上的数据重新恢复到其他正常工作的存储节点上,确保整个文件系统中数据维持特定的副本数。
4.根据权利要求2所述的一种海量数据分布式存储的方法,其特征在于:所述多副本完全备份容灾系统在数据存储和复制过程中,管理节点通过存储节点的状态信息,均衡地分配待存储的数据,使得原始数据的多个副本存放在不同的物理节点上。
5.根据权利要求1所述的一种海量数据分布式存储的方法,其特征在于:所述信息关联容灾系统对coding区数据进行编码的方法是:对一个存储节点的n个扇区,将每个扇区划分为n等份,每一份称为一个块;要使系统能够容忍小于等于t/2个错误,则将每个扇区的前n-t块设置为信息块,存储有效信息,后t块设置为校验块,存储校验信息;当有部分硬盘出现故障时,系统使用余下的完好硬盘上对应扇区的数据译码恢复出故障硬盘扇区上的有效数据,并且在整个编译码过程中仅需要异或操作。
6.根据权利要求1所述的一种海量数据分布式存储的方法,其特征在于:所述信息关联容灾系统能够在恢复错误的同时提供不间断的读取服务:当系统中出现故障时,管理员用全新的硬盘替换错误的硬盘,并启动数据恢复过程;之后当系统接收到数据读取请求时,则仅读取未出错的旧硬盘上相应数据;在进行译码恢复数据并提供服务之后,重新编码得到丢失的部分校验信息,并将存储于错误硬盘上的数据存储到新硬盘上。
7.根据权利要求1所述的一种海量数据分布式存储的方法,其特征在于:所述信息关联容灾系统能够在系统空闲一段时间后,单独进行错误的恢复。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510885149.7A CN105530294A (zh) | 2015-12-04 | 2015-12-04 | 一种海量数据分布式存储的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510885149.7A CN105530294A (zh) | 2015-12-04 | 2015-12-04 | 一种海量数据分布式存储的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105530294A true CN105530294A (zh) | 2016-04-27 |
Family
ID=55772270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510885149.7A Pending CN105530294A (zh) | 2015-12-04 | 2015-12-04 | 一种海量数据分布式存储的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105530294A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294011A (zh) * | 2016-08-08 | 2017-01-04 | 马岩 | 分类式大数据存储方法及系统 |
CN106293528A (zh) * | 2016-08-08 | 2017-01-04 | 马岩 | 网盘存储大数据的方法及系统 |
CN106294010A (zh) * | 2016-08-08 | 2017-01-04 | 马岩 | 分布式系统中大数据的存储方法及系统 |
CN106326033A (zh) * | 2016-08-08 | 2017-01-11 | 马岩 | 基于大数据的实时备份方法及系统 |
CN107066206A (zh) * | 2017-03-22 | 2017-08-18 | 佛山科学技术学院 | 一种分布式物理磁盘的存储控制方法、及系统 |
CN107153513A (zh) * | 2017-03-22 | 2017-09-12 | 佛山科学技术学院 | 一种分布式系统服务器的存储控制方法、及服务器 |
CN107168645A (zh) * | 2017-03-22 | 2017-09-15 | 佛山科学技术学院 | 一种分布式系统的存储控制方法、及系统 |
WO2018027465A1 (zh) * | 2016-08-08 | 2018-02-15 | 马岩 | 基于大数据的实时备份方法及系统 |
WO2018027466A1 (zh) * | 2016-08-08 | 2018-02-15 | 马岩 | 分布式系统中大数据的存储方法及系统 |
CN110457161A (zh) * | 2019-07-26 | 2019-11-15 | 成都信息工程大学 | 一种高效高可靠的大数据存储系统、方法、计算机程序 |
WO2020001287A1 (zh) * | 2018-06-28 | 2020-01-02 | 阿里巴巴集团控股有限公司 | 数据校验方法及装置,存储介质 |
CN111381767A (zh) * | 2018-12-28 | 2020-07-07 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050102548A1 (en) * | 2003-10-30 | 2005-05-12 | Volker Lindenstruth | Method and apparatus for enabling high-reliability storage of distributed data on a plurality of independent storage devices |
CN101834898A (zh) * | 2010-04-29 | 2010-09-15 | 中科院成都信息技术有限公司 | 一种网络分布式编码存储方法 |
CN104052576A (zh) * | 2014-06-07 | 2014-09-17 | 华中科技大学 | 一种云存储下基于纠错码的数据恢复方法 |
CN104935481A (zh) * | 2015-06-24 | 2015-09-23 | 华中科技大学 | 一种分布式存储下基于冗余机制的数据恢复方法 |
-
2015
- 2015-12-04 CN CN201510885149.7A patent/CN105530294A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050102548A1 (en) * | 2003-10-30 | 2005-05-12 | Volker Lindenstruth | Method and apparatus for enabling high-reliability storage of distributed data on a plurality of independent storage devices |
CN101834898A (zh) * | 2010-04-29 | 2010-09-15 | 中科院成都信息技术有限公司 | 一种网络分布式编码存储方法 |
CN104052576A (zh) * | 2014-06-07 | 2014-09-17 | 华中科技大学 | 一种云存储下基于纠错码的数据恢复方法 |
CN104935481A (zh) * | 2015-06-24 | 2015-09-23 | 华中科技大学 | 一种分布式存储下基于冗余机制的数据恢复方法 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018027465A1 (zh) * | 2016-08-08 | 2018-02-15 | 马岩 | 基于大数据的实时备份方法及系统 |
CN106293528A (zh) * | 2016-08-08 | 2017-01-04 | 马岩 | 网盘存储大数据的方法及系统 |
CN106294010A (zh) * | 2016-08-08 | 2017-01-04 | 马岩 | 分布式系统中大数据的存储方法及系统 |
CN106326033A (zh) * | 2016-08-08 | 2017-01-11 | 马岩 | 基于大数据的实时备份方法及系统 |
CN106294011A (zh) * | 2016-08-08 | 2017-01-04 | 马岩 | 分类式大数据存储方法及系统 |
WO2018027466A1 (zh) * | 2016-08-08 | 2018-02-15 | 马岩 | 分布式系统中大数据的存储方法及系统 |
CN107066206A (zh) * | 2017-03-22 | 2017-08-18 | 佛山科学技术学院 | 一种分布式物理磁盘的存储控制方法、及系统 |
CN107168645A (zh) * | 2017-03-22 | 2017-09-15 | 佛山科学技术学院 | 一种分布式系统的存储控制方法、及系统 |
CN107153513A (zh) * | 2017-03-22 | 2017-09-12 | 佛山科学技术学院 | 一种分布式系统服务器的存储控制方法、及服务器 |
CN107066206B (zh) * | 2017-03-22 | 2020-07-24 | 佛山科学技术学院 | 一种分布式物理磁盘的存储控制方法及系统 |
CN107153513B (zh) * | 2017-03-22 | 2020-07-24 | 佛山科学技术学院 | 一种分布式系统服务器的存储控制方法及服务器 |
CN107168645B (zh) * | 2017-03-22 | 2020-07-28 | 佛山科学技术学院 | 一种分布式系统的存储控制方法及系统 |
WO2020001287A1 (zh) * | 2018-06-28 | 2020-01-02 | 阿里巴巴集团控股有限公司 | 数据校验方法及装置,存储介质 |
US11537304B2 (en) | 2018-06-28 | 2022-12-27 | Alibaba Group Holding Limited | Data verification method and apparatus, and storage medium |
CN111381767A (zh) * | 2018-12-28 | 2020-07-07 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
CN111381767B (zh) * | 2018-12-28 | 2024-03-26 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
CN110457161A (zh) * | 2019-07-26 | 2019-11-15 | 成都信息工程大学 | 一种高效高可靠的大数据存储系统、方法、计算机程序 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105530294A (zh) | 一种海量数据分布式存储的方法 | |
WO2020010503A1 (zh) | 基于多层一致性哈希的分布式数据存储方法与系统 | |
EP3537687B1 (en) | Access method for distributed storage system, related device and related system | |
KR101352959B1 (ko) | 메인메모리 데이터베이스 관리 시스템의 액티브 노드 및 스탠바이 노드의 데이터베이스 관리 장치 및 방법 | |
US20160006461A1 (en) | Method and device for implementation data redundancy | |
CN109690494B (zh) | 系统存储装置中的分层容错 | |
CA2913036A1 (en) | Index update pipeline | |
CN109814807B (zh) | 一种数据存储方法及装置 | |
CN101986276B (zh) | 文件存储方法、文件恢复方法、系统及服务器 | |
CN108964986B (zh) | 协同办公系统应用级双活灾备系统 | |
US8527454B2 (en) | Data replication using a shared resource | |
CN115826876B (zh) | 数据写入方法、系统、存储硬盘、电子设备及存储介质 | |
US8639968B2 (en) | Computing system reliability | |
CN110121694B (zh) | 一种日志管理方法、服务器和数据库系统 | |
CN106027638A (zh) | 一种基于混合编码的hadoop数据分发方法 | |
Lee et al. | Erasure coded storage systems for cloud storage—challenges and opportunities | |
CN104951475A (zh) | 分布式文件系统和实现方法 | |
WO2019109257A1 (zh) | 一种日志管理方法、服务器和数据库系统 | |
CN111752892B (zh) | 分布式文件系统及其实现方法、管理系统、设备及介质 | |
CN115955488A (zh) | 基于副本冗余的分布式存储副本跨机房放置方法与装置 | |
CN115470041A (zh) | 一种数据灾备管理方法及装置 | |
US9582384B2 (en) | Method and system for data replication | |
AT&T | ||
JP2008276281A (ja) | データ同期システム、方法、及び、プログラム | |
CN114089923A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160427 |
|
RJ01 | Rejection of invention patent application after publication |