[发明专利]一种基于分布式存储系统的纠删码编码布局方法及系统在审
申请号: | 202111481100.7 | 申请日: | 2021-12-06 |
公开(公告)号: | CN114237971A | 公开(公告)日: | 2022-03-25 |
发明(设计)人: | 宋莹;穆天童;杨明杰 | 申请(专利权)人: | 北京信息科技大学 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G06F16/182 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;陈思远 |
地址: | 100101 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 分布式 存储系统 纠删码 编码 布局 方法 系统 | ||
本发明提出一种分布式存储系统的纠删码编码布局方法和系统,以在分布式系统有数据丢失时通过减少恢复的数据传输量及恢复时长,从而提高整个系统的恢复效率和可靠性。本发明在传统RS纠删码存储的基础上增加了节点内部的奇偶校验计算,使用不同n、k值的RS编码,并将奇偶校验计算结果存储于当前节点中,这样在出现少量数据丢失或节点故障时,可以从节点自身解码奇偶检验块,以达到减少恢复产生的跨机架、跨节点网络带宽的目的。
技术领域
本发明涉及分布式存储计算及数据恢复领域,并特别涉及一种提高恢复效率的基于分布式存储系统的纠删码编码布局方法,属于分布式计算领域。
背景技术
随着互联网技术的飞速发展,数据量呈指数级增长,数据存储的方式也逐渐由单机存储转向分布式存储。目前最流行的大数据开源框架是Hadoop,一个能够离线并行处理海量数据的大数据平台,具有高可靠性、高可扩展性、高效率以及低成本、开源等特性,成为了许多互联网公司首选的海量数据处理方案。Hadoop主要包括Hadoop分布式文件系统(HDFS)和MapReduce分布式计算框架,虽然Hadoop发展至3.x已经比较成熟,但是有些方面依然存在不足,需要改进和优化。
分布式集群(如Hadoop)通常由许多独立的不可靠商用组件组成,组件出现故障是很常见的。为了保证数据在这样的分布式存储系统中的高可靠性和可用性,常见的两种方式是用多副本和纠删码来提供容错。多副本形式易于部署和故障恢复,但存储开销太大,不适用于数据量过大且磁盘空间较小的系统。纠删码作为一种替代方案,提供与多副本接近的容错性,且存储开销更低,部分分布式系统中已经部署了该方案。这将存储冗余由传统的3x减少到了1.4x,节省了更多的空间。但是使用纠删码恢复一个失败的块需要检索多个可用的块,这导致了很高的恢复成本。尽管纠删码提高了存储效率,但它们显著增加了故障恢复的磁盘I/O和网络带宽占用。
为了最大限度地提高使用纠删码部署的分布式存储系统的数据可用性,将纠删码的不同块存储在不同机架的节点中。这种数据布局方式使系统能够容忍一定数量的节点故障和机架故障。然而,这种数据块放置方式不可避免的会使任何故障数据块的修复需要从其他机架检索可用的数据块,因此会占用大量跨机架带宽。通常,每个节点的可用跨机架带宽仅为内部机架带宽的1/20至1/5。因此,在分布式存储系统中,内部机架带宽被认为是足够的,但跨机架带宽并不富裕,通常被认为是一种稀缺资源,过多的跨机架流量不可避免地会延迟恢复过程,降低恢复效率。
发明内容
本发明提供了一种用以提高数据恢复效率的纠删码编码布局方法,以在分布式系统有数据丢失时通过减少恢复的数据传输量及恢复时长,从而提高整个系统的恢复效率和可靠性。本发明在传统RS纠删码存储的基础上增加了节点内部的奇偶校验计算,使用不同n、k值的RS编码,并将奇偶校验计算结果存储于当前节点中,这样在出现少量数据丢失或节点故障时,可以从节点自身解码奇偶检验块,以达到减少恢复产生的跨机架、跨节点网络带宽的目的。具体来说,本发明包括以下步骤:
针对现有技术的不足,本发明提出一种基于分布式存储系统的纠删码编码布局方法,其中包括:
步骤1、获取具有多个存储节点的分布式存储系统,并根据该分布式存储系统的存储节点数量设定横向、纵向编码参数,并将所有存储节点按存储内容划分为用于存储数据块的数据节点和用于存储横向校验块的校验节点;
步骤2、根据该横向、纵向编码参数,分别纵向和横向纠删编码各数据节点上的每个原始数据块,得到各个原始数据块对应的纵向校验块和横向校验块;将横向校验块保存至校验节点,并将纵向校验块保存至与之对应原始数据块所在的该数据节点;
步骤3、当数据丢失时,判断丢失数据是否属于原始数据块,若是,则解码丢失数据所在数据节点的纵向校验块,以恢复丢失数据,并存入该丢失数据所在的数据节点;否则判断该丢失数据是否属于纵向校验块,若是,则对该丢失数据进行纵向纠删编码,以恢复丢失数据,并存入该丢失数据所在的数据节点;否则该丢失数据属于横向校验块,对该丢失数据进行横向纠删编码,以恢复丢失数据,并存入该校验节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京信息科技大学,未经北京信息科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111481100.7/2.html,转载请声明来源钻瓜专利网。