CN107196991A - 一种面向网络编码集群系统的数据更新方法 - Google Patents
一种面向网络编码集群系统的数据更新方法 Download PDFInfo
- Publication number
- CN107196991A CN107196991A CN201710226810.2A CN201710226810A CN107196991A CN 107196991 A CN107196991 A CN 107196991A CN 201710226810 A CN201710226810 A CN 201710226810A CN 107196991 A CN107196991 A CN 107196991A
- Authority
- CN
- China
- Prior art keywords
- data
- block
- check
- information
- update
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种面向网络编码集群系统的数据更新方法。根据当前数据的爆炸性增长为集群系统带来了巨大的挑战,而网络编码的作为一种具有高可靠性和低冗余等优点的数据方案而被引入到集群系统中,但是其数据更新过程的开销却很大,特别是在计算节点与存储节点之间的数据传输带宽开销比较大。本发明利用更新节点的缓存区域,将更新数据块和校验块缓存起来有效利用更新数据局部性,并利用网络编码的线性特性,减少计算校验块时数据的传输量,减少带宽消耗;更新数据进行及时写,从而缩短磁盘失效时的修复时间,减少数据丢失风险。本发明提供的方案能够较好的适应网络编码集群系统数据更新,减少更新过程的带宽消耗,提高数据更新速度。
Description
技术领域
本发明涉及集群系统技术领域,具体涉及一种面向网络编码集群系统的数据更新方法。
背景技术
随着互联网技术的迅猛发展,互联网用户每天都在产生大量的数据。数据的大规模增长给集群系统带来的不仅仅是存储上的压力还有对数据可靠性的保障。在集群系统中,节点失效是很常见的,如果不对数据实施保护措施,则很容易造成数据丢失。作为一种替代的计算方案,网络编码被应用到集群系统中,通过网络连接不同的节点为存储数据提供一个可靠平台。但是网络编码的更新机制却给集群系统带来了消耗的计算和带宽开销。现有的优化方法包括增加日志设备和增加缓存两种方法。增加日志设备能减少校验块写的次数但是需要额外的日志设备而且会影响系统的读性能;而传统的增加缓存方法所进行的延迟写在网络编码集群系统中容易影响失效节点修复增加数据丢失风险。因此,亟待需要一种既能保障网络编码集群系统节点修复效率,又能减少更新时带宽消耗,提高更新速度的方法。
发明内容
本发明的目的是为了解决现有技术中的上述缺陷,提供一种面向网络编码集群系统的数据更新方法,其能够有效减少集群系统更新数据时的带宽消耗,并提高集群系统更新速度,同时减少集群系统数据丢失风险,从而提高集群系统性能。
本发明的目的可以通过采取如下技术方案达到:
一种面向网络编码集群系统的数据更新方法,所述数据更新方法包括下列步骤:
S1、初始化缓存区域,在计算节点中,为更新数据块和更新校验块分别设置数据区域和校验区域作为缓存区域,其中,所述数据区域用于缓存更新数据块,所述校验区域用于缓存更新校验块;
S2、读取数据块和校验块信息;
S3、计算更新数据块前后差异,计算节点读取将被更新数据块的内容与新的内容进行异或运算,得到数据块更新前后的差异结果;
S4、计算更新校验块,在校验区域中查找与所述更新数据块同一个条带的所有校验块,若有则从校验区域中读取校验块的信息,若无,则通过网络从对应节点上读取校验块的信息,将数据块更新前后差异乘上编码系数,并将该结果与读取到的校验块进行异或运算,得到所有更新校验块;
S5、更新数据块和更新校验块的存储,将更新数据块的信息存储到数据区域中,将所有更新校验块的信息存储到校验区域中;
S6、缓存替换,判断缓存区域是否到达一定阀值时,若到达阀值,对于数据区域进行更新;对于校验区域进行更新,同时找出与更新校验块同一个条带的其他校验块一并删除;
S7、将更新数据块和所有更新校验块通过网络写到对应存储节点上。
进一步地,所述步骤S5、更新数据块和更新校验块的存储具体如下:
在计算节点的缓存区域中查找有没有该数据块和校验块的信息,若有,则先将缓存区域中的已有信息删除,并将更新信息插入缓存队列首,若无,则将更新信息直接插入缓存队列首。
进一步地,所述步骤S2、读取数据块和校验块信息具体如下:
进行更新操作时,先在计算节点缓存区域中查找是否有该数据块的信息与相关校验块信息,若有,则从缓存区域中读取信息,若无,则通过网络从对应节点上读取信息。
进一步地,所述步骤S6、缓存替换中,判断缓存区域是否到达一定阀值时,若到达阀值,对于数据区域使用近期最少使用缓存替换策略更新数据区域;对于校验区域,使用近期最少使用缓存替换策略更新校验区域。
本发明相对于现有技术具有如下的优点及效果:
(1)、本发明提出了一种面向网络编码集群系统的数据更新方法,有效减少了由数据更新所带来的数据块传输量,减少了由数据更新带来的带宽消耗。
(2)、本发明通过利用网络编码的线性特性,减少在计算更新校验块时到存储节点上的读操作,减少更新时间,进一步提高了集群系统的更新性能。
(3)、本发明每更新一个数据块就将数据块和校验块写到对应存储节点,从而使节点失效时能更快的从存活节点读取数据,减少失效节点修复时间,减少数据丢失风险。
附图说明
图1是本发明公开的一种面向网络编码集群系统的数据更新方法的步骤流程图;
图2是本发明公开的一种面向网络编码集群系统的数据更新方法的工作示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
根据附图1所示,本实施例公开了一种面向网络编码集群系统的数据更新方法,包括以下步骤:
S1、初始化缓存区域,在计算节点中,为更新数据块和更新校验块分别设置数据区域和校验区域作为缓存区域,其中,数据区域用于缓存更新数据块,校验区域用于缓存更新校验块。
具体的初始化缓存区域步骤中,在计算节点时,为更新数据块和校验块分别设置缓存区域。数据区域用于缓存更新数据块,校验区域用于缓存更新校验块。设置校验区域是因为一个条带中每个数据块的更新都要读取所有校验块的信息,所以设置校验块可以从很大程度上减少计算更新校验块时数据传输量。
S2、读取数据块和校验块信息,进行更新操作时,先在计算节点缓存区域中查找是否有该数据块的信息与相关校验块信息。若有,则从缓存区域中读取信息。若无,则通过网络从对应节点上读取信息。
具体的读取数据块和校验块信息步骤中,进行更新操作时,为了读取相关数据块与校验块的信息,先在计算节点缓存区域中查找是否有该数据块的信息与相关校验块信息。若有,则从缓存区域中读取信息。若无,则通过网络从对应节点上读取信息。
S3、计算更新数据块前后差异,计算节点读取将被更新数据块的内容与新的内容进行异或运算,得到数据块更新前后的差异结果。
S4、计算更新校验块,在校验区域中查找与所述更新数据块同一个条带的所有校验块,若有则从校验区域中读取该校验块的信息。若无,则通过网络从对应节点上读取校验块的信息。将数据块更新前后差异乘上编码系数,并将该结果与读取到的校验块进行异或运算,得到所有更新校验块。
S5、更新数据块和更新校验块的存储,将更新数据块的信息存储到数据块缓存区域中,将所有更新校验块的信息存储到校验块缓存区域中。
在计算节点的缓存区域中查找有没有该数据块和校验块的信息。若有,则先将缓存区域中的已有信息删除,并将更新信息插入缓存队列首。若无,则将更新信息直接插入缓存队列首。
S6、缓存替换,判断缓存区域是否到达一定阀值时,若到达阀值,对于数据区域使用近期最少使用缓存替换策略更新数据区域;对于校验区域,使用近期最少使用缓存替换策略更新校验区域,同时找出与更新校验块同一个条带的其他校验块一并删除。
具体的缓存替换步骤中,当计算节点的数据区域不足以容纳新的更新数据块时,使用近期最少使用算法淘汰数据区域队列尾的数据块,以容纳新的数据块;当校验区域不足以容纳新的校验数据块时,使用近期最少使用算法淘汰校验区域队列尾的校验块,并将与该校验块同一个条带上的校验块一并删除,以容纳新的校验块。
S7、将更新数据块和所有更新校验块通过网络写到对应存储节点上,及时更新相应位置的块。
集群系统每执行一个更新操作,立刻将该更新数据块和计算出来的校验块写到对应的存储节点。从而缩短节点失效的修复时间,减少数据丢失的风险。
实施例二
如图1所示,本发明的算法流程如下步骤:
在计算节点中,为更新数据块和校验块分别设置缓存区域。数据区域用于缓存更新数据块,校验区域用于缓存更新校验块。
如图2所示,当数据块更新为数据块时,计算更新数据块前后差异,在数据块缓存区域中查找是否有数据块的信息。若有,则从数据块缓存区域中读取该数据块信息。若无,则通过网络从对应节点上读取数据块的信息,计算更新数据块前后的差异。
计算更新校验块,在校验块缓存区域中查找,是否有该条带校验块的信息。若有则从校验块缓存区域中读取校验块的信息。若无,则通过网络从对应节点上读取校验块的信息。将数据块更新前后差异乘上编码系数,并将该结果与读取到的校验块进行异或运算,得到所有更新校验块。
将更新数据块的信息存储到数据块缓存区域中,将所有更新校验块的信息存储到校验块缓存区域中。在计算节点的缓存区域中查找有没有该数据块和校验块的信息。若有,则先将缓存区域中的已有信息删除,并将更新信息插入缓存队列首。若无,则将更新信息直接插入缓存队列首。
判断缓存区域是否到达一定阀值时,若到达阀值,对于数据区域使用近期最少使用缓存替换策略更新缓存区域;对于校验区域,在使用近期最少使用缓存替换策略更新缓存区域的基础上同时找出与该校验块同一个条带的其他校验块一并删除。
将更新数据块和所有更新校验块通过网络写到对应存储节点上,及时更新相应位置的块。
综上所述,本发明利用更新节点的缓存区域,将更新数据块和校验块缓存起来有效利用更新数据局部性,并利用网络编码的线性特性,减少计算校验块时数据的传输量,减少带宽消耗;更新数据进行及时写,从而缩短磁盘失效时的修复时间,减少数据丢失风险。本发明提供的方案能够较好的适应网络编码集群系统数据更新,减少更新过程的带宽消耗,提高数据更新速度。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (4)
1.一种面向网络编码集群系统的数据更新方法,其特征在于,所述数据更新方法包括下列步骤:
S1、初始化缓存区域,在计算节点中,为更新数据块和更新校验块分别设置数据区域和校验区域作为缓存区域,其中,所述数据区域用于缓存更新数据块,所述校验区域用于缓存更新校验块;
S2、读取数据块和校验块信息;
S3、计算更新数据块前后差异,计算节点读取将被更新数据块的内容与新的内容进行异或运算,得到数据块更新前后的差异结果;
S4、计算更新校验块,在校验区域中查找与所述更新数据块同一个条带的所有校验块,若有则从校验区域中读取校验块的信息,若无,则通过网络从对应节点上读取校验块的信息,将数据块更新前后差异乘上编码系数,并将该结果与读取到的校验块进行异或运算,得到所有更新校验块;
S5、更新数据块和更新校验块的存储,将更新数据块的信息存储到数据区域中,将所有更新校验块的信息存储到校验区域中;
S6、缓存替换,判断缓存区域是否到达一定阀值时,若到达阀值,对于数据区域进行更新;对于校验区域进行更新,同时找出与更新校验块同一个条带的其他校验块一并删除;
S7、将更新数据块和所有更新校验块通过网络写到对应存储节点上。
2.根据权利要求1所述的一种面向网络编码集群系统的数据更新方法,其特征在于,所述步骤S5、更新数据块和更新校验块的存储具体如下:
在计算节点的缓存区域中查找有没有该数据块和校验块的信息,若有,则先将缓存区域中的已有信息删除,并将更新信息插入缓存队列首,若无,则将更新信息直接插入缓存队列首。
3.根据权利要求1所述的一种面向网络编码集群系统的数据更新方法,其特征在于,所述步骤S2、读取数据块和校验块信息具体如下:
进行更新操作时,先在计算节点缓存区域中查找是否有该数据块的信息与相关校验块信息,若有,则从缓存区域中读取信息,若无,则通过网络从对应节点上读取信息。
4.根据权利要求1所述的一种面向网络编码集群系统的数据更新方法,其特征在于,所述步骤S6、缓存替换中,判断缓存区域是否到达一定阀值时,若到达阀值,对于数据区域使用近期最少使用缓存替换策略更新数据区域;对于校验区域,使用近期最少使用缓存替换策略更新校验区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710226810.2A CN107196991A (zh) | 2017-04-06 | 2017-04-06 | 一种面向网络编码集群系统的数据更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710226810.2A CN107196991A (zh) | 2017-04-06 | 2017-04-06 | 一种面向网络编码集群系统的数据更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107196991A true CN107196991A (zh) | 2017-09-22 |
Family
ID=59871413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710226810.2A Pending CN107196991A (zh) | 2017-04-06 | 2017-04-06 | 一种面向网络编码集群系统的数据更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107196991A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107748650A (zh) * | 2017-10-09 | 2018-03-02 | 暨南大学 | 一种网络编码集群存储系统中基于锁机制的数据重建策略 |
CN108959570A (zh) * | 2018-07-04 | 2018-12-07 | 广东优世联合控股集团股份有限公司 | 针对大规模分布式系统的基于数据温度的数据更新方法 |
CN113687788A (zh) * | 2021-08-30 | 2021-11-23 | 西安超越申泰信息科技有限公司 | 国产平台的数据读写优化方法、装置、计算机及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025473A (zh) * | 2010-12-30 | 2011-04-20 | 浙江大学 | 分组网中基于代间网络编码的重传方法 |
CN102184260A (zh) * | 2011-06-09 | 2011-09-14 | 中国人民解放军国防科学技术大学 | 一种云计算环境下的海量数据存取方法 |
CN102209079A (zh) * | 2011-06-22 | 2011-10-05 | 北京大学深圳研究生院 | 一种基于tcp协议的自适应网络控制传输方法和系统 |
CN103810027A (zh) * | 2014-01-24 | 2014-05-21 | 暨南大学 | 一种网络编码文件系统中基于数据温度的重建方法 |
US20160373543A1 (en) * | 2015-06-16 | 2016-12-22 | Comcast Cable Communications, Llc | Caching of Metadata Objects |
-
2017
- 2017-04-06 CN CN201710226810.2A patent/CN107196991A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025473A (zh) * | 2010-12-30 | 2011-04-20 | 浙江大学 | 分组网中基于代间网络编码的重传方法 |
CN102184260A (zh) * | 2011-06-09 | 2011-09-14 | 中国人民解放军国防科学技术大学 | 一种云计算环境下的海量数据存取方法 |
CN102209079A (zh) * | 2011-06-22 | 2011-10-05 | 北京大学深圳研究生院 | 一种基于tcp协议的自适应网络控制传输方法和系统 |
CN103810027A (zh) * | 2014-01-24 | 2014-05-21 | 暨南大学 | 一种网络编码文件系统中基于数据温度的重建方法 |
US20160373543A1 (en) * | 2015-06-16 | 2016-12-22 | Comcast Cable Communications, Llc | Caching of Metadata Objects |
Non-Patent Citations (1)
Title |
---|
刘冰星,邓玉辉: "一种网络编码分布式存储系统中的数据更新策略", 《小型微型计算机系统》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107748650A (zh) * | 2017-10-09 | 2018-03-02 | 暨南大学 | 一种网络编码集群存储系统中基于锁机制的数据重建策略 |
CN107748650B (zh) * | 2017-10-09 | 2020-07-03 | 暨南大学 | 一种网络编码集群存储系统中基于锁机制的数据重建策略 |
CN108959570A (zh) * | 2018-07-04 | 2018-12-07 | 广东优世联合控股集团股份有限公司 | 针对大规模分布式系统的基于数据温度的数据更新方法 |
CN113687788A (zh) * | 2021-08-30 | 2021-11-23 | 西安超越申泰信息科技有限公司 | 国产平台的数据读写优化方法、装置、计算机及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103473150B (zh) | 一种用于数据去重系统中的碎片重写方法 | |
CN109391645B (zh) | 区块链轻量化处理方法、区块链节点及存储介质 | |
CN103136243B (zh) | 基于云存储的文件系统去重方法及装置 | |
CN103729225B (zh) | 一种基于内容分块的远程文件实时更新方法 | |
CN105630423B (zh) | 一种基于数据缓存的纠删码集群存储扩容方法 | |
CN107885612A (zh) | 数据处理方法和系统及装置 | |
CN101651709B (zh) | 一种p2p下载文件完整性校验方法 | |
CN104598162A (zh) | 用于跨存储设备写入数据的方法和系统 | |
CN107196991A (zh) | 一种面向网络编码集群系统的数据更新方法 | |
CN103914402B (zh) | 一种基于纠删码缓存的重构优化方法 | |
CN105791288B (zh) | 基于并行多路径的关键虚拟链路防护方法 | |
CN103716375A (zh) | 基于分布式缓存的多级财政数据交互方法及系统 | |
CN113867627B (zh) | 一种存储系统性能优化方法及系统 | |
CN109194444A (zh) | 一种基于网络拓扑的平衡二叉树修复方法 | |
CN107656701A (zh) | 小文件读加速方法、系统、装置及计算机可读存储介质 | |
CN105991763A (zh) | 未决兴趣表行为 | |
CN106788468A (zh) | 一种纠删码更新方法及装置,电子设备 | |
CN109684337A (zh) | 一种基于多级缓存的区块链状态数据存储和读取方法 | |
CN107766355A (zh) | 层级数据管理方法、层级数据管理系统及即时通信系统 | |
JP7355616B2 (ja) | 分散ストレージシステムおよび分散ストレージシステムのパリティ更新方法 | |
CN107766170B (zh) | 单一存储池的差量日志式纠删码更新方法 | |
US11023454B2 (en) | Checking data integrity in incremental journaling | |
US20200326878A1 (en) | Early io control techniques for a remote data facility | |
CN110083487A (zh) | 一种基于数据局部性的引用数据块碎片消除方法及系统 | |
Zulfa et al. | Performance comparison of cache replacement algorithms onvarious internet traffic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170922 |