面向数据中心的通用化网络编码容错存储平台及工作方法.pdf

上传人:t**** 文档编号:6187730 上传时间:2019-05-18 格式:PDF 页数:11 大小:705.45KB
返回 下载 相关 举报
摘要
申请专利号:

CN201310489884.7

申请日:

2013.10.18

公开号:

CN103544270A

公开日:

2014.01.29

当前法律状态:

授权

有效性:

有权

法律详情:

专利权的转移IPC(主分类):G06F 17/30登记生效日:20171201变更事项:专利权人变更前权利人:南京大学镇江高新技术研究院变更后权利人:南京大学镇江高新技术研究院变更事项:地址变更前权利人:212000 江苏省镇江市高新园区南纬四路36号变更后权利人:212000 江苏省镇江市高新园区南纬四路36号变更事项:共同专利权人变更前权利人:南京南瑞集团公司信息系统集成分公司 国网上海市电力公司变更后权利人:国电南瑞科技股份有限公司 国网上海市电力公司|||授权|||专利申请权的转移IPC(主分类):G06F 17/30变更事项:申请人变更前权利人:南京大学镇江高新技术研究院变更后权利人:南京大学镇江高新技术研究院变更事项:地址变更前权利人:212000 江苏省镇江市高新园区南纬四路36号变更后权利人:212000 江苏省镇江市高新园区南纬四路36号变更事项:申请人变更前权利人:南京南瑞集团公司信息系统集成分公司变更后权利人:南京南瑞集团公司信息系统集成分公司 国网上海市电力公司登记生效日:20150115|||实质审查的生效IPC(主分类):G06F 17/30申请日:20131018|||公开

IPC分类号:

G06F17/30; G06F11/10

主分类号:

G06F17/30

申请人:

南京大学镇江高新技术研究院; 南京南瑞集团公司信息系统集成分公司

发明人:

薛艳; 陈正亮; 叶保留; 吴小志; 李东辉

地址:

212000 江苏省镇江市高新园区南纬四路36号

优先权:

专利代理机构:

江苏圣典律师事务所 32237

代理人:

贺翔

PDF下载: PDF下载
内容摘要

本发明公开了一种面向数据中心的通用化网络编码容错存储平台及其实现方法。该系统主要包括一个名字节点,多个用于存储的数据节点以及一个编码代理节点,由他们组成一个面向数据中心的分布式存储平台。该存储平台是面向数据中心,提出了一种基于网络编码的统一处理框架,通过对存储文件进行编码,达到在系统可靠性相同的情况下,减少系统存储冗余量以及传输带宽。该系统提供不同编码方案的集成,从而达到系统的可扩展性。实现方法主要包括基于网络编码的统一处理框架设计,数据编码与分布式存储流程,不同编码方案的集成,以及恢复处理。

权利要求书

权利要求书
1.  一种面向数据中心的通用化网络编码容错存储平台,其特征在于该平台包括:
一个名字节点:名字节点作为核心服务器,管理文件系统中的数据块到数据节点之间的映射以及整个集群的配置信息,并负责文件系统的名字空间操作;
多个数据节点:数据节点作为从节点,系统中的数据都将存储在数据节点中,数据节点在名字节点的调度下对数据块进行创建、删除和传送操作,并且通过名字节点处理文件的读写请求;
一个编码代理节点:当有文件读写时,编码代理节点将原始文件编码发送到对应的数据节点中或者从对应数据节点中取数据进行解码恢复为原始文件。

2.  权利要求1所述面向数据中心的通用化网络编码容错存储平台的工作方法,其特征在于包括以下几种情况:
1)数据编码与分布式存储流程:编码代理节点对原始文件先进行编码,然后将多个编码数据块并行的发送到对应的数据节点中,在此过程中,系统根据文件大小以及系统对应的网络编码方案自适应的生成不同的编码信息以及对应的数据节点个数,使得系统满足自适应性;
2)不同编码方案的集成:提供多种编码容错方案,并提供统一的、普适的分布式文件系统,使得用户和应用程序能够根据自己具体的存储任务选择合适的方案,提高系统的多样性、对用户的友好性,满足可扩展性;
3)失效编码恢复处理:在系统中某些节点失效的情况下为了保证存储文件的可靠性,恢复失效编码块。

3.  权利要求2所述面向数据中心的通用化网络编码容错存储平台的工作方法,其特征在于步骤1)的具体流程分为文件存储和文件读取两种情况,其中:
文件存储:
11)当系统有文件存储时,名字节点根据文件长度和系统正在运行的编码方案生成对应的编码信息和申请对应的数据节点和数据块,在索引空间中维护并返回给编码代理节点;
12)编码代理节点根据名字节点返回的数据节点地址,与每个数据节点建立连接;
13)编码代理节点根据编码信息,按传输单位遍历原始文件,根据编码矩阵,将各传输单位的数据放入对应的编码缓存域或者进行编码,每遍历一定量次数后,将相应的编码缓存放入网络传输等待队列,队列非空的情况下唤醒等待的文件块传输进程,此时分为以下几种情况;
131)如果当前遍历的数据所对应的编码缓存域是空,则将此数据放入对应的编码缓存域中;
132)如果当前遍历的数据所对应的编码缓存域不是空,则将此数据编码并与对应编码缓存域中的数据进行异或操作;
133)原始文件遍历完毕,将相应的编码缓存放入网络传输等待队列;
14)文件块传输进程在网络传输等待队列为在非空的情况下被唤醒,执行文件传输操作,每发送一个数据包将相对于的数据包放入等待确认队列,等待来自数据节点的确认,之后从该队列删除,文件块确认被写入,结束;
文件读取:
15)当要读取文件,名字节点返回相应的网络编码文件块的位置,以及文件对应的编码信息给编码代理节点;
16)编码代理节点与相应的存储网络编码文件块的数据节点建立连接;
17)编码代理从数据节点中按传输单位获取这些网络编码文件块中对应的数据,解码,以恢复原始文件;在此过程中,如果正在连接的某个数据节点出现异常时,从剩余的数据节点中选取一个最近的数据节点,从指定偏移位置开始读取,并重新生成解码矩阵,解码流程继续;
18)系统根据存储文件的长度以及相应的网络编码方案自主生成对应的编码方案的编码信息,为之后文件编码解码以及失效编码块恢复处理时使用,此时系统根据需要写入的原始文件的文件长度以及对应网络编码方案计算网络编码的参数;再根据计算出来的网络编码的参数,选择相应的数据节点个数用于存储文件。

4.  权利要求2或3所述面向数据中心的通用化网络编码容错存储平台的工作方法,其特征在于步骤2)的具体流程为:
21)在系统中添加一个通用编码类,该通用类根据不同的编码方案引用到与之对应的编码信息类,为之后文件编码解码以及修复时使用;
211)在系统中添加一个编码协议类,用于生成不同编码矩阵以及编码解码时的运算法则;
212)在系统中添加不同网络编码类,它们拥有自己的编码信息,并可以根据编码协议类生成对应的编码矩阵;
22)在系统的配置文件中添加一个有关于编码容错方案的参数,可以在系统运行的时候,决定调用的是哪一种编码容错方案;
23)系统可以根据需要写入的原始文件的文件长度以及对应网络编码方案计算网络编码的参数;
34)通用编码类根据系统实际运行的网络编码方案引用对应的网络编码类,再根据计算出来的网络编码参数计算对应的信息矩阵以及编码矩阵。

5.  权利要求2或3所述面向数据中心的通用化网络编码容错存储平台的工作方法,其特征在于步骤3)的具体流程为:
31)当系统中某个数据节点中有编码块失效,名字节点会将其放入修复队列中去,名字节点为其选择一个新的数据节点作为其存储节点,并把参与恢复处理的其它编码块信息返回给新的数据节点,通知该数据节点修复失效编码块;
32)新的数据节点在收到名字节点的命令后,进行恢复处理,具体为:通知参与恢复的数据节点将对应的编码块传输到新的数据节点中,新的数据节点在接收到参与编码块的数据后恢复失效编码块,最后通知名字节点更新索引信息。

说明书

说明书面向数据中心的通用化网络编码容错存储平台及工作方法
 
技术领域
本发明以开源分布式存储平台为基础,对基于多副本的数据容错技术带来的冗余开销以及额外传输带宽问题进行了研究。在此基础上,通过引入信息论中主流数据容错编码技术,对系统架构进行扩展,设计并实现了一种面向数据中心的通用化网络编码容错存储平台及其工作方法。
背景技术
随着互联网技术的迅速发展以及海量数据的快速膨胀,海量数据的存储与管理成为业界关注的热点,同时也是“大数据处理”的重要支撑技术。分布式存储系统因其支持大容量的存储,提供良好的可扩展性,在容量、性能以及管理等方面都能够快速适应系统的变化而被广泛使用。然而随着对大容量数据、私人数据的存储效率要求越来越高,现有分布式存储系统中所采用的基于多副本的数据容错存储机制将导致系统占用过多额外存储开销以及数据传输带宽消耗,并且增加失效修复的存储空间。为提高数据存储的可靠性,降低数据的冗余率,业界对基于信息论的数据容错编码机制开展了研究,基于网络编码的分布式数据容错存储技术受到业界积极关注。
发明内容
   本发明所要解决的技术问题是提供一种面向数据中心的通用化网络编码容错存储平台及其工作方法,该系统能够为系统提供多种网络编码方案,不仅有效的降低系统存储冗余度,减少传输带宽和提高系统的可靠性与耐久性,还能有效的降低修复时传输带宽消耗。该编码存储技术在系统在存储文件,读取文件以及失效文件块自我修复中都运用了基于网络编码的数据容错技术维护文件的可靠性。
为实现上述目的,本发明所述的一种面向数据中心的通用化网络编码容错存储平台,包括:
一个名字节点:名字节点作为核心服务器,管理文件系统中的数据块到数据节点之间的映射以及整个集群的配置信息,并负责文件系统的名字空间操作;
多个数据节点:数据节点作为从节点,系统中的数据都将存储在数据节点中,数据节点在名字节点的调度下对数据块进行创建、删除和传送操作,并且通过名字节点处理文件的读写请求。
一个编码代理节点:当有文件读写时,编码代理节点将原始文件编码发送到对应的数据节点中或者从对应数据节点中取数据进行解码恢复为原始文件。
此外,本发明还提供了该面向数据中心的通用化网络编码容错存储平台的工作方法,其包括以下几种情况:
1)数据编码与分布式存储流程:编码代理节点对原始文件先进行编码,然后将多个编码数据块并行的发送到对应的数据节点中,在此过程中,系统根据文件大小以及系统对应的网络编码方案自适应的生成不同的编码信息以及对应的数据节点个数,使得系统满足自适应性。
2)不同编码方案的集成:提供多种编码容错方案,并提供统一的、普适的分布式文件系统,使得用户和应用程序能够根据自己具体的存储任务选择合适的方案,提高系统的多样性、对用户的友好性,满足可扩展性。
3)失效编码恢复处理:在系统中某些节点失效的情况下为了保证存储文件的可靠性,恢复失效编码块。
上述步骤1)的具体流程分为文件存储和文件读取两种情况,其中:
文件存储:
11)当系统有文件存储时,名字节点根据文件长度和系统正在运行的编码方案生成对应的编码信息和申请对应的数据节点和数据块,在索引空间中维护并返回给编码代理节点;
12)编码代理节点根据名字节点返回的数据节点地址,与每个数据节点建立连接;
13)编码代理节点根据编码信息,按传输单位遍历原始文件,根据编码矩阵,将各传输单位的数据放入对应的编码缓存域或者进行编码,每遍历一定量次数后,将相应的编码缓存放入网络传输等待队列,队列非空的情况下唤醒等待的文件块传输进程,此时分为以下几种情况;
131)如果当前遍历的数据所对应的编码缓存域是空,则将此数据放入对应的编码缓存域中;
132)如果当前遍历的数据所对应的编码缓存域不是空,则将此数据编码并与对应编码缓存域中的数据进行异或操作;
133)原始文件遍历完毕,将相应的编码缓存放入网络传输等待队列;
14)文件块传输进程在网络传输等待队列为在非空的情况下被唤醒,执行文件传输操作,每发送一个数据包将相对于的数据包放入等待确认队列,等待来自数据节点的确认,之后从该队列删除,文件块确认被写入,结束;
文件读取:
15)当要读取文件,名字节点返回相应的网络编码文件块的位置,以及文件对应的编码信息给编码代理节点;
16)编码代理节点与相应的存储网络编码文件块的数据节点建立连接;
17)编码代理从数据节点中按传输单位获取这些网络编码文件块中对应的数据,解码,以恢复原始文件;在此过程中,如果正在连接的某个数据节点出现异常时,从剩余的数据节点中选取一个最近的数据节点,从指定偏移位置开始读取,并重新生成解码矩阵,解码流程继续。
18)系统根据存储文件的长度以及相应的网络编码方案自主生成对应的编码方案的编码信息,为之后文件编码解码以及失效编码块恢复处理时使用,此时系统根据需要写入的原始文件的文件长度以及对应网络编码方案计算网络编码的参数;再根据计算出来的网络编码的参数,选择相应的数据节点个数用于存储文件。
上述步骤2)的具体流程为:
21)在系统中添加一个通用编码类,该通用类根据不同的编码方案引用到与之对应的编码信息类,为之后文件编码解码以及修复时使用;
211)在系统中添加一个编码协议类,用于生成不同编码矩阵以及编码解码时的运算法则;
212)在系统中添加不同网络编码类,它们拥有自己的编码信息,并可以根据编码协议类生成对应的编码矩阵。
22)在系统的配置文件中添加一个有关于编码容错方案的参数,可以在系统运行的时候,决定调用的是哪一种编码容错方案。
23)系统可以根据需要写入的原始文件的文件长度以及对应网络编码方案计算网络编码的参数;
34)通用编码类根据系统实际运行的网络编码方案引用对应的网络编码类,再根据计算出来的网络编码参数计算对应的信息矩阵以及编码矩阵。
上述步骤3)的具体流程为:
31)当系统中某个数据节点中有编码块失效,名字节点会将其放入修复队列中去,名字节点为其选择一个新的数据节点作为其存储节点,并把参与恢复处理的其它编码块信息返回给新的数据节点,通知该数据节点修复失效编码块;
32)新的数据节点在收到名字节点的命令后,进行恢复处理,具体为:通知参与恢复的数据节点将对应的编码块传输到新的数据节点中,新的数据节点在接收到参与编码块的数据后恢复失效编码块,最后通知名字节点更新索引信息。
本发明采用网络编码技术,实现了一种面向数据中心的通用化网络编码容错存储平台。该存储平台是面向数据中心,提出了一种基于网络编码的统一处理框架,通过对存储文件进行编码,达到在系统可靠性相同的情况下,减少系统存储冗余量以及传输带宽。该存储平台提供不同编码方案的集成,从而达到系统的可扩展性。在系统中某些节点失效的情况下为了保证存储文件的可靠性,系统可以启动恢复处理,失效编码块。在有效降低存储冗余的基础上提高了系统的容错能力,满足了分布式数据存储的可靠性需求。
附图说明
图1系统架构图,
图2通用网络编码框架-通用编码类,
图3 通用网络编码框架-通用编码接口,
图4通用网络编码框架-自适应n,k,
图5读文件(编码)流程,
图6写文件(解码)流程,
图7恢复处理流程图。
具体实施方式
本发明提供了一种面向数据中心的通用化网络编码容错存储平台及其实现方法。下面结合附图进行详细说明。
系统架构图如图1所示。在该存储平台中,名字节点作为核心服务器,在整个系统中只有一个,名字节点作为系统中的主节点,管理文件系统中的数据块到数据节点之间的映射以及整个集群的配置信息等,除此之外,名字节点还负责文件系统的名字空间操作,如文件系统的打开、关闭以及重命名目录或者文件等。数据节点作为从节点,在整个系统中有数个,系统中的数据都将存储在数据节点中。数据节点在名字节点的调度下可以对数据块进行创建、删除和传送等操作,并且可以通过名字节点处理文件的读写请求。编码代理节点主要负责系统中编码解码功能。系统中,当文件读写时,编码代理对原始文件编码发送到对应的数据节点中或者从对应数据节点中取数据解码恢复原始文件。
图2,3,4展示了通用网络编码框架图,图3展示申请存储一个文件的时候,需要根据文件生成编码矩阵,系统会初始化一个CodingMatrix类。CodingMatrix作为一个通用类,她可以根据不同的编码方案引用到与之对应的编码信息类,为之后文件编码解码以及修复时使用。图4展示了系统根据配置文件中的编码容错方案的参数,执行对应的网络编码方案。图5展示了系统根据文件大小以及系统对应的网络编码方案自适应的生成编码信息。通过上述方式,系统就可以扩展更多的网络编码方案。
图5展示了文件写流程,即编码流程。编码代理申请文件存储时,名字节点根生成对应的编码信息,数据节点和数据块,在索引空间中维护并返回编码代理。编码代理与每个数据节点建立连接,按传输单位遍历原始文件,将对应的传输单位的数据放入对应的编码缓存域或者编码。每遍历一定量次数后,将相应的编码缓存放入网络传输等待队列。文件块传输进程执行文件传输操作,发送到对应的数据节点中的数据块中。文件块被写入后,编码代理上报名字节点更新索引。
图6展示了文件读流程,即解码流程。当编码代理通过名字节点申请读文件。编码代理首先打开一个写入本地磁盘的数据流,然后通过RPC远程调用名字节点,获得各个文件块所在的数据节点位置,然后链接各个数据节点,并发送读文件命令,数据节点收到该命令后通过数据流的形式将文件块发送到编码代理,编码代理再通过解码操作获得原始文件。
图7展示了系统的恢复处理流程图,名字节点选取合适的新节点来存储恢复文件块,并选取合适(根据负载均衡)的足够个数的数据节点参与修复工作。新的数据节点向这些数据节点发送恢复命令。参与恢复的数据节点读取自己的命令队列,先根据对应的网络编码方案对自己存储的该文件的文件块作相应的计算,再发送到选取的新节点。新节点接收并恢复之后存储,然后更新索引空间。

面向数据中心的通用化网络编码容错存储平台及工作方法.pdf_第1页
第1页 / 共11页
面向数据中心的通用化网络编码容错存储平台及工作方法.pdf_第2页
第2页 / 共11页
面向数据中心的通用化网络编码容错存储平台及工作方法.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《面向数据中心的通用化网络编码容错存储平台及工作方法.pdf》由会员分享,可在线阅读,更多相关《面向数据中心的通用化网络编码容错存储平台及工作方法.pdf(11页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103544270 A (43)申请公布日 2014.01.29 CN 103544270 A (21)申请号 201310489884.7 (22)申请日 2013.10.18 G06F 17/30(2006.01) G06F 11/10(2006.01) (71)申请人 南京大学镇江高新技术研究院 地址 212000 江苏省镇江市高新园区南纬四 路 36 号 申请人 南京南瑞集团公司信息系统集成分 公司 (72)发明人 薛艳 陈正亮 叶保留 吴小志 李东辉 (74)专利代理机构 江苏圣典律师事务所 32237 代理人 贺翔 (54) 发明名称 面向数据中心的通用化。

2、网络编码容错存储平 台及工作方法 (57) 摘要 本发明公开了一种面向数据中心的通用化网 络编码容错存储平台及其实现方法。该系统主要 包括一个名字节点, 多个用于存储的数据节点以 及一个编码代理节点, 由他们组成一个面向数据 中心的分布式存储平台。该存储平台是面向数据 中心, 提出了一种基于网络编码的统一处理框架, 通过对存储文件进行编码, 达到在系统可靠性相 同的情况下, 减少系统存储冗余量以及传输带宽。 该系统提供不同编码方案的集成, 从而达到系统 的可扩展性。实现方法主要包括基于网络编码的 统一处理框架设计, 数据编码与分布式存储流程, 不同编码方案的集成, 以及恢复处理。 (51)In。

3、t.Cl. 权利要求书 2 页 说明书 4 页 附图 4 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书4页 附图4页 (10)申请公布号 CN 103544270 A CN 103544270 A 1/2 页 2 1. 一种面向数据中心的通用化网络编码容错存储平台, 其特征在于该平台包括 : 一个名字节点 : 名字节点作为核心服务器, 管理文件系统中的数据块到数据节点之间 的映射以及整个集群的配置信息, 并负责文件系统的名字空间操作 ; 多个数据节点 : 数据节点作为从节点, 系统中的数据都将存储在数据节点中, 数据节点 在名字节点的调度下对数据块进行。

4、创建、 删除和传送操作, 并且通过名字节点处理文件的 读写请求 ; 一个编码代理节点 : 当有文件读写时, 编码代理节点将原始文件编码发送到对应的数 据节点中或者从对应数据节点中取数据进行解码恢复为原始文件。 2. 权利要求 1 所述面向数据中心的通用化网络编码容错存储平台的工作方法, 其特征 在于包括以下几种情况 : 1) 数据编码与分布式存储流程 : 编码代理节点对原始文件先进行编码, 然后将多个编 码数据块并行的发送到对应的数据节点中, 在此过程中, 系统根据文件大小以及系统对应 的网络编码方案自适应的生成不同的编码信息以及对应的数据节点个数, 使得系统满足自 适应性 ; 2) 不同编码。

5、方案的集成 : 提供多种编码容错方案, 并提供统一的、 普适的分布式文件系 统, 使得用户和应用程序能够根据自己具体的存储任务选择合适的方案, 提高系统的多样 性、 对用户的友好性, 满足可扩展性 ; 3) 失效编码恢复处理 : 在系统中某些节点失效的情况下为了保证存储文件的可靠性, 恢复失效编码块。 3. 权利要求 2 所述面向数据中心的通用化网络编码容错存储平台的工作方法, 其特征 在于步骤 1) 的具体流程分为文件存储和文件读取两种情况, 其中 : 文件存储 : 11) 当系统有文件存储时, 名字节点根据文件长度和系统正在运行的编码方案生成对 应的编码信息和申请对应的数据节点和数据块, 。

6、在索引空间中维护并返回给编码代理节 点 ; 12) 编码代理节点根据名字节点返回的数据节点地址, 与每个数据节点建立连接 ; 13) 编码代理节点根据编码信息, 按传输单位遍历原始文件, 根据编码矩阵, 将各传输 单位的数据放入对应的编码缓存域或者进行编码, 每遍历一定量次数后, 将相应的编码缓 存放入网络传输等待队列, 队列非空的情况下唤醒等待的文件块传输进程, 此时分为以下 几种情况 ; 131) 如果当前遍历的数据所对应的编码缓存域是空, 则将此数据放入对应的编码缓存 域中 ; 132) 如果当前遍历的数据所对应的编码缓存域不是空, 则将此数据编码并与对应编码 缓存域中的数据进行异或操作。

7、 ; 133) 原始文件遍历完毕, 将相应的编码缓存放入网络传输等待队列 ; 14) 文件块传输进程在网络传输等待队列为在非空的情况下被唤醒, 执行文件传输操 作, 每发送一个数据包将相对于的数据包放入等待确认队列, 等待来自数据节点的确认, 之 后从该队列删除, 文件块确认被写入, 结束 ; 文件读取 : 权 利 要 求 书 CN 103544270 A 2 2/2 页 3 15) 当要读取文件, 名字节点返回相应的网络编码文件块的位置, 以及文件对应的编码 信息给编码代理节点 ; 16) 编码代理节点与相应的存储网络编码文件块的数据节点建立连接 ; 17) 编码代理从数据节点中按传输单位获。

8、取这些网络编码文件块中对应的数据, 解码, 以恢复原始文件 ; 在此过程中, 如果正在连接的某个数据节点出现异常时, 从剩余的数据节 点中选取一个最近的数据节点, 从指定偏移位置开始读取, 并重新生成解码矩阵, 解码流程 继续 ; 18) 系统根据存储文件的长度以及相应的网络编码方案自主生成对应的编码方案的编 码信息, 为之后文件编码解码以及失效编码块恢复处理时使用, 此时系统根据需要写入的 原始文件的文件长度以及对应网络编码方案计算网络编码的参数 ; 再根据计算出来的网络 编码的参数, 选择相应的数据节点个数用于存储文件。 4. 权利要求 2 或 3 所述面向数据中心的通用化网络编码容错存储。

9、平台的工作方法, 其 特征在于步骤 2) 的具体流程为 : 21) 在系统中添加一个通用编码类, 该通用类根据不同的编码方案引用到与之对应的 编码信息类, 为之后文件编码解码以及修复时使用 ; 211) 在系统中添加一个编码协议类, 用于生成不同编码矩阵以及编码解码时的运算法 则 ; 212) 在系统中添加不同网络编码类, 它们拥有自己的编码信息, 并可以根据编码协议 类生成对应的编码矩阵 ; 22) 在系统的配置文件中添加一个有关于编码容错方案的参数, 可以在系统运行的时 候, 决定调用的是哪一种编码容错方案 ; 23) 系统可以根据需要写入的原始文件的文件长度以及对应网络编码方案计算网络编。

10、 码的参数 ; 34) 通用编码类根据系统实际运行的网络编码方案引用对应的网络编码类, 再根据计 算出来的网络编码参数计算对应的信息矩阵以及编码矩阵。 5. 权利要求 2 或 3 所述面向数据中心的通用化网络编码容错存储平台的工作方法, 其 特征在于步骤 3) 的具体流程为 : 31) 当系统中某个数据节点中有编码块失效, 名字节点会将其放入修复队列中去, 名字 节点为其选择一个新的数据节点作为其存储节点, 并把参与恢复处理的其它编码块信息返 回给新的数据节点, 通知该数据节点修复失效编码块 ; 32) 新的数据节点在收到名字节点的命令后, 进行恢复处理, 具体为 : 通知参与恢复的 数据节点。

11、将对应的编码块传输到新的数据节点中, 新的数据节点在接收到参与编码块的数 据后恢复失效编码块, 最后通知名字节点更新索引信息。 权 利 要 求 书 CN 103544270 A 3 1/4 页 4 面向数据中心的通用化网络编码容错存储平台及工作方法 0001 技术领域 0002 本发明以开源分布式存储平台为基础, 对基于多副本的数据容错技术带来的冗余 开销以及额外传输带宽问题进行了研究。在此基础上, 通过引入信息论中主流数据容错编 码技术, 对系统架构进行扩展, 设计并实现了一种面向数据中心的通用化网络编码容错存 储平台及其工作方法。 背景技术 0003 随着互联网技术的迅速发展以及海量数据的。

12、快速膨胀, 海量数据的存储与管理成 为业界关注的热点, 同时也是 “大数据处理” 的重要支撑技术。分布式存储系统因其支持大 容量的存储, 提供良好的可扩展性, 在容量、 性能以及管理等方面都能够快速适应系统的变 化而被广泛使用。 然而随着对大容量数据、 私人数据的存储效率要求越来越高, 现有分布式 存储系统中所采用的基于多副本的数据容错存储机制将导致系统占用过多额外存储开销 以及数据传输带宽消耗, 并且增加失效修复的存储空间。 为提高数据存储的可靠性, 降低数 据的冗余率, 业界对基于信息论的数据容错编码机制开展了研究, 基于网络编码的分布式 数据容错存储技术受到业界积极关注。 发明内容 00。

13、04 本发明所要解决的技术问题是提供一种面向数据中心的通用化网络编码容错存储 平台及其工作方法, 该系统能够为系统提供多种网络编码方案, 不仅有效的降低系统存储 冗余度, 减少传输带宽和提高系统的可靠性与耐久性, 还能有效的降低修复时传输带宽消 耗。该编码存储技术在系统在存储文件, 读取文件以及失效文件块自我修复中都运用了基 于网络编码的数据容错技术维护文件的可靠性。 0005 为实现上述目的, 本发明所述的一种面向数据中心的通用化网络编码容错存储平 台, 包括 : 一个名字节点 : 名字节点作为核心服务器, 管理文件系统中的数据块到数据节点之间 的映射以及整个集群的配置信息, 并负责文件系统。

14、的名字空间操作 ; 多个数据节点 : 数据节点作为从节点, 系统中的数据都将存储在数据节点中, 数据节点 在名字节点的调度下对数据块进行创建、 删除和传送操作, 并且通过名字节点处理文件的 读写请求。 0006 一个编码代理节点 : 当有文件读写时, 编码代理节点将原始文件编码发送到对应 的数据节点中或者从对应数据节点中取数据进行解码恢复为原始文件。 0007 此外, 本发明还提供了该面向数据中心的通用化网络编码容错存储平台的工作方 法, 其包括以下几种情况 : 1) 数据编码与分布式存储流程 : 编码代理节点对原始文件先进行编码, 然后将多个编 说 明 书 CN 103544270 A 4 。

15、2/4 页 5 码数据块并行的发送到对应的数据节点中, 在此过程中, 系统根据文件大小以及系统对应 的网络编码方案自适应的生成不同的编码信息以及对应的数据节点个数, 使得系统满足自 适应性。 0008 2) 不同编码方案的集成 : 提供多种编码容错方案, 并提供统一的、 普适的分布式文 件系统, 使得用户和应用程序能够根据自己具体的存储任务选择合适的方案, 提高系统的 多样性、 对用户的友好性, 满足可扩展性。 0009 3) 失效编码恢复处理 : 在系统中某些节点失效的情况下为了保证存储文件的可靠 性, 恢复失效编码块。 0010 上述步骤 1) 的具体流程分为文件存储和文件读取两种情况, 。

16、其中 : 文件存储 : 11) 当系统有文件存储时, 名字节点根据文件长度和系统正在运行的编码方案生成对 应的编码信息和申请对应的数据节点和数据块, 在索引空间中维护并返回给编码代理节 点 ; 12) 编码代理节点根据名字节点返回的数据节点地址, 与每个数据节点建立连接 ; 13) 编码代理节点根据编码信息, 按传输单位遍历原始文件, 根据编码矩阵, 将各传输 单位的数据放入对应的编码缓存域或者进行编码, 每遍历一定量次数后, 将相应的编码缓 存放入网络传输等待队列, 队列非空的情况下唤醒等待的文件块传输进程, 此时分为以下 几种情况 ; 131) 如果当前遍历的数据所对应的编码缓存域是空, 。

17、则将此数据放入对应的编码缓存 域中 ; 132) 如果当前遍历的数据所对应的编码缓存域不是空, 则将此数据编码并与对应编码 缓存域中的数据进行异或操作 ; 133) 原始文件遍历完毕, 将相应的编码缓存放入网络传输等待队列 ; 14) 文件块传输进程在网络传输等待队列为在非空的情况下被唤醒, 执行文件传输操 作, 每发送一个数据包将相对于的数据包放入等待确认队列, 等待来自数据节点的确认, 之 后从该队列删除, 文件块确认被写入, 结束 ; 文件读取 : 15) 当要读取文件, 名字节点返回相应的网络编码文件块的位置, 以及文件对应的编码 信息给编码代理节点 ; 16) 编码代理节点与相应的存。

18、储网络编码文件块的数据节点建立连接 ; 17) 编码代理从数据节点中按传输单位获取这些网络编码文件块中对应的数据, 解码, 以恢复原始文件 ; 在此过程中, 如果正在连接的某个数据节点出现异常时, 从剩余的数据节 点中选取一个最近的数据节点, 从指定偏移位置开始读取, 并重新生成解码矩阵, 解码流程 继续。 0011 18) 系统根据存储文件的长度以及相应的网络编码方案自主生成对应的编码方案 的编码信息, 为之后文件编码解码以及失效编码块恢复处理时使用, 此时系统根据需要写 入的原始文件的文件长度以及对应网络编码方案计算网络编码的参数 ; 再根据计算出来的 网络编码的参数, 选择相应的数据节点。

19、个数用于存储文件。 0012 上述步骤 2) 的具体流程为 : 说 明 书 CN 103544270 A 5 3/4 页 6 21) 在系统中添加一个通用编码类, 该通用类根据不同的编码方案引用到与之对应的 编码信息类, 为之后文件编码解码以及修复时使用 ; 211) 在系统中添加一个编码协议类, 用于生成不同编码矩阵以及编码解码时的运算法 则 ; 212) 在系统中添加不同网络编码类, 它们拥有自己的编码信息, 并可以根据编码协议 类生成对应的编码矩阵。 0013 22) 在系统的配置文件中添加一个有关于编码容错方案的参数, 可以在系统运行 的时候, 决定调用的是哪一种编码容错方案。 001。

20、4 23) 系统可以根据需要写入的原始文件的文件长度以及对应网络编码方案计算网 络编码的参数 ; 34) 通用编码类根据系统实际运行的网络编码方案引用对应的网络编码类, 再根据计 算出来的网络编码参数计算对应的信息矩阵以及编码矩阵。 0015 上述步骤 3) 的具体流程为 : 31) 当系统中某个数据节点中有编码块失效, 名字节点会将其放入修复队列中去, 名字 节点为其选择一个新的数据节点作为其存储节点, 并把参与恢复处理的其它编码块信息返 回给新的数据节点, 通知该数据节点修复失效编码块 ; 32) 新的数据节点在收到名字节点的命令后, 进行恢复处理, 具体为 : 通知参与恢复的 数据节点将。

21、对应的编码块传输到新的数据节点中, 新的数据节点在接收到参与编码块的数 据后恢复失效编码块, 最后通知名字节点更新索引信息。 0016 本发明采用网络编码技术, 实现了一种面向数据中心的通用化网络编码容错存储 平台。 该存储平台是面向数据中心, 提出了一种基于网络编码的统一处理框架, 通过对存储 文件进行编码, 达到在系统可靠性相同的情况下, 减少系统存储冗余量以及传输带宽。 该存 储平台提供不同编码方案的集成, 从而达到系统的可扩展性。在系统中某些节点失效的情 况下为了保证存储文件的可靠性, 系统可以启动恢复处理, 失效编码块。 在有效降低存储冗 余的基础上提高了系统的容错能力, 满足了分布。

22、式数据存储的可靠性需求。 附图说明 0017 图 1 系统架构图, 图 2 通用网络编码框架 - 通用编码类, 图 3 通用网络编码框架 - 通用编码接口, 图 4 通用网络编码框架 - 自适应 n, k, 图 5 读文件 (编码) 流程, 图 6 写文件 (解码) 流程, 图 7 恢复处理流程图。 具体实施方式 0018 本发明提供了一种面向数据中心的通用化网络编码容错存储平台及其实现方法。 下面结合附图进行详细说明。 0019 系统架构图如图 1 所示。在该存储平台中, 名字节点作为核心服务器, 在整个系统 说 明 书 CN 103544270 A 6 4/4 页 7 中只有一个, 名字节。

23、点作为系统中的主节点, 管理文件系统中的数据块到数据节点之间的 映射以及整个集群的配置信息等, 除此之外, 名字节点还负责文件系统的名字空间操作, 如 文件系统的打开、 关闭以及重命名目录或者文件等。 数据节点作为从节点, 在整个系统中有 数个, 系统中的数据都将存储在数据节点中。数据节点在名字节点的调度下可以对数据块 进行创建、 删除和传送等操作, 并且可以通过名字节点处理文件的读写请求。 编码代理节点 主要负责系统中编码解码功能。 系统中, 当文件读写时, 编码代理对原始文件编码发送到对 应的数据节点中或者从对应数据节点中取数据解码恢复原始文件。 0020 图2, 3, 4展示了通用网络编。

24、码框架图, 图3展示申请存储一个文件的时候, 需要根 据文件生成编码矩阵, 系统会初始化一个 CodingMatrix 类。CodingMatrix 作为一个通用 类, 她可以根据不同的编码方案引用到与之对应的编码信息类, 为之后文件编码解码以及 修复时使用。图 4 展示了系统根据配置文件中的编码容错方案的参数, 执行对应的网络编 码方案。图 5 展示了系统根据文件大小以及系统对应的网络编码方案自适应的生成编码信 息。通过上述方式, 系统就可以扩展更多的网络编码方案。 0021 图 5 展示了文件写流程, 即编码流程。编码代理申请文件存储时, 名字节点根生成 对应的编码信息, 数据节点和数据块。

25、, 在索引空间中维护并返回编码代理。 编码代理与每个 数据节点建立连接, 按传输单位遍历原始文件, 将对应的传输单位的数据放入对应的编码 缓存域或者编码。每遍历一定量次数后, 将相应的编码缓存放入网络传输等待队列。文件 块传输进程执行文件传输操作, 发送到对应的数据节点中的数据块中。 文件块被写入后, 编 码代理上报名字节点更新索引。 0022 图 6 展示了文件读流程, 即解码流程。当编码代理通过名字节点申请读文件。编 码代理首先打开一个写入本地磁盘的数据流, 然后通过 RPC 远程调用名字节点, 获得各个 文件块所在的数据节点位置, 然后链接各个数据节点, 并发送读文件命令, 数据节点收到。

26、该 命令后通过数据流的形式将文件块发送到编码代理, 编码代理再通过解码操作获得原始文 件。 0023 图 7 展示了系统的恢复处理流程图, 名字节点选取合适的新节点来存储恢复文件 块, 并选取合适 (根据负载均衡) 的足够个数的数据节点参与修复工作。新的数据节点向这 些数据节点发送恢复命令。参与恢复的数据节点读取自己的命令队列, 先根据对应的网络 编码方案对自己存储的该文件的文件块作相应的计算, 再发送到选取的新节点。新节点接 收并恢复之后存储, 然后更新索引空间。 说 明 书 CN 103544270 A 7 1/4 页 8 图 1 图 2 说 明 书 附 图 CN 103544270 A 8 2/4 页 9 图 3 图 4 说 明 书 附 图 CN 103544270 A 9 3/4 页 10 图 5 图 6 说 明 书 附 图 CN 103544270 A 10 4/4 页 11 图 7 说 明 书 附 图 CN 103544270 A 11 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1