CN111290710A - 一种基于动态调整复制因子的云副本存储方法及系统 - Google Patents

一种基于动态调整复制因子的云副本存储方法及系统 Download PDF

Info

Publication number
CN111290710A
CN111290710A CN202010063948.7A CN202010063948A CN111290710A CN 111290710 A CN111290710 A CN 111290710A CN 202010063948 A CN202010063948 A CN 202010063948A CN 111290710 A CN111290710 A CN 111290710A
Authority
CN
China
Prior art keywords
replication
data block
subset
priority queue
copy
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.)
Granted
Application number
CN202010063948.7A
Other languages
English (en)
Other versions
CN111290710B (zh
Inventor
宋�莹
闫永峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Information Science and Technology University
Original Assignee
Beijing Information Science and Technology University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Information Science and Technology University filed Critical Beijing Information Science and Technology University
Priority to CN202010063948.7A priority Critical patent/CN111290710B/zh
Publication of CN111290710A publication Critical patent/CN111290710A/zh
Application granted granted Critical
Publication of CN111290710B publication Critical patent/CN111290710B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出一种基于动态调整复制因子的云副本存储方法及系统,包括:根据预设的分散宽度和分布式存储系统中节点数量,生成多个全部节点的排列,根据排列划分复制因子的复制子集;初始数据块的复制因子,将所有数据块加入与复制因子相对应的优先级队列中,根据优先级队列将数据块的副本放入相应的复制子集中;统计各数据块的访问次数,增加访问次数最高的数据块的复制因子,以将访问次数最高的数据块加入高等级的优先级队列中,降低访问次数最低的数据块的复制因子,以将访问次数最低的数据块加入低等级的优先级队列中;将各数据块上一个周期所在的优先级队列的等级与当前周期所在优先级队列的等级相比较,根据比较结果调整各数据块所在复制子集。

Description

一种基于动态调整复制因子的云副本存储方法及系统
技术领域
本发明涉及分布式存储系统的副本放置问题,具体涉及为权衡数据丢失可能性和副本数量设计的副本放置方法,属于分布式计算领域。
背景技术
当今时代是一个信息爆炸的时代,数据飞速增长,传统的存储方式已经不能满足时代的需求,为了满足需求分布式存储开始迅速发展起来,但是分布式存储系统大多由廉价的商用机组成,这就使得系统中某个节点失效变成了常态,为了保障节点失效时数据不会丢失,现有的分布式存储系统采用了放置多个副本的方式来保障数据的可靠性和可用性。
副本放置的方法会影响系统中数据的可靠性和可用性,甚至影响整个系统的性能。这就使研究副本放置技术变得十分有意义。现有的分布式存储系统如HDFS,GFS默认采用随机选择的方式来放置副本,但这种方式已经被证明了在大规模集群中当百分之一的节点同时失效时几乎必定会丢失数据,此外HDFS默认采用静态的复制因子,其默认值为3,也就是说每个数据块都会在系统中保存3份副本,这样虽然保障了数据的可靠性和可用性,但是没有区分数据块热度,存储了高热度的数据块的节点的负载会因此提升,而有的数据块几乎不被访问或访问次数低,不需要那么多数量的副本,可能使整个集群的负载不均衡。现有技术中还提出过复制子集的概念,使用其来放置副本,可以显著的降低数据丢失的概率,但其目的在于提高系统的耐久性,并没有考虑负载均衡问题。
发明内容
本发明提供了一种副本放置的方法,目标是通过减少分布式存储系统中数据丢失的概率及动态的改变数据块复副本的数量,从而提高整个系统的存储效率。该方法按照周期内数据块的访问次数来将数据块划分成不同优先级,将属于不同优先级的数据块添加到不同复制因子的复制子集中,限制其副本放置数量。此外该方法还提供了数据块在不同复制因子的复制子集间转换的方法,以达到动态改变复制因子的目的。
针对现有技术的不足,本发明提出一种基于动态调整复制因子的云副本存储方法,其中包括:
步骤1、根据预设的分散宽度和分布式存储系统中节点数量,生成多个全部节点的排列,根据该排列划分复制因子的复制子集;
步骤2、初始化该分布式存储系统中数据块的复制因子,将所有数据块加入与该复制因子相对应的优先级队列中,根据优先级队列将数据块的副本放入相应的复制子集中;
步骤3、周期性地统计各数据块的访问次数,增加访问次数最高的数据块的复制因子,以将访问次数最高的数据块加入高等级的优先级队列中,降低访问次数最低的数据块的复制因子,以将访问次数最低的数据块加入低等级的优先级队列中;
步骤4、将各数据块上一个周期所在的优先级队列的等级与当前周期所在优先级队列的等级相比较,根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本。
步骤5、循环该步骤3和该步骤4动态调整该分布式存储系统中数据块的复制因子,以动态的改变各数据块复副本的数量。
所述的基于动态调整复制因子的云副本存储方法,其中该步骤1中生成多个全部节点的排列过程中包括约束条件;
判断生成的排列是否满足该约束条件,如否,则重新随机排列全部节点生成新的排列,直到生成P个满足该约束条件的排列为止。
所述的基于动态调整复制因子的云副本存储方法,其中该步骤1的中成多个全部节点的排列个数P的过程包括:
Figure BDA0002375382490000021
其中S为分散宽度;R为动态调整范围内最小的复制因子。
所述的基于动态调整复制因子的云副本存储方法,其中该该约束条件包括限制同一复制子集中的节点出现在该分布式存储系统的同一机架上。
所述的基于动态调整复制因子的云副本存储方法,其中该步骤4中根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本,具体包括:
当比较结果为数据块上一个周期所在的优先级队列的等级R′大于当前周期所在优先级队列的等级R时,检查数据块所在的复制子集是否是某个复制因子等于R的复制子集的子集,若是,则将在复制因子等于R的复制子集中添加放置一个副本;
当R′大于R时,检查所有复制因子等于R的复制子集中是否有数据块所在的复制子集的子集,若有,则直接删除在两集合的差的节点上的副本。
本发明还提供了一种基于动态调整复制因子的云副本存储系统,其中包括:
模块1、根据预设的分散宽度和分布式存储系统中节点数量,生成多个全部节点的排列,根据该排列划分复制因子的复制子集;
模块2、初始化该分布式存储系统中数据块的复制因子,将所有数据块加入与该复制因子相对应的优先级队列中,根据优先级队列将数据块的副本放入相应的复制子集中;
模块3、周期性地统计各数据块的访问次数,增加访问次数最高的数据块的复制因子,以将访问次数最高的数据块加入高等级的优先级队列中,降低访问次数最低的数据块的复制因子,以将访问次数最低的数据块加入低等级的优先级队列中;
模块4、将各数据块上一个周期所在的优先级队列的等级与当前周期所在优先级队列的等级相比较,根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本。
模块5、循环该模块3和该模块4动态调整该分布式存储系统中数据块的复制因子,以动态的改变各数据块复副本的数量。
所述的基于动态调整复制因子的云副本存储系统,其中该模块1中生成多个全部节点的排列过程中包括约束条件;
判断生成的排列是否满足该约束条件,如否,则重新随机排列全部节点生成新的排列,直到生成P个满足该约束条件的排列为止。
所述的基于动态调整复制因子的云副本存储系统,其中该模块1的中成多个全部节点的排列个数P的过程包括:
Figure BDA0002375382490000031
其中S为分散宽度;R为动态调整范围内最小的复制因子。
所述的基于动态调整复制因子的云副本存储系统,其中该该约束条件包括限制同一复制子集中的节点出现在该分布式存储系统的同一机架上。
所述的基于动态调整复制因子的云副本存储系统,其中该模块4中根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本,具体包括:
当比较结果为数据块上一个周期所在的优先级队列的等级R′大于当前周期所在优先级队列的等级R时,检查数据块所在的复制子集是否是某个复制因子等于R的复制子集的子集,若是,则将在复制因子等于R的复制子集中添加放置一个副本;
当R′大于R时,检查所有复制因子等于R的复制子集中是否有数据块所在的复制子集的子集,若有,则直接删除在两集合的差的节点上的副本。
附图说明
图1为本发明系统流程图;
图2为优先级队列和复制子集的对应关系示意图。
具体实施方式
具体来说,本发明包括以下步骤:
A.根据用户提供的分散宽度S和分布式存储系统中的节点个数N划分复制子集。
A1.根据用户输入的S随机生成P个全部N个节点的排列。在生成排列的过程中可以增加相应的约束(如限制同一复制子集中的节点出现在同一机架上)。
A2.根据上述排列划分出不同复制因子R的复制子集。
B.基于划分好的复制子集放置副本。
B1.初始默认所有数据块的复制因子为3,将所有数据块加入到R=3的优先级队列中。
B2.根据优先级队列将数据块副本放入相应的复制子集中。在本实施例中具体为创建四个队列对象,分别用来存储不同优先级的数据块,且每个队列对应用一个复制因子R生成的所有复制子集(也就是说某一优先级队列中的数据块只能在特定的复制因子R生成的复制子集中放置副本)。优先级队列和复制子集的对应关系如下:优先级最高的队列中的数据块使用R=5的复制子集放置副本,其次高的使用R=4的复制子集放置副本,以此类推,如图2所示。在放置数据块副本时会从所有相应的复制子集中随机选择一个来放置。
C.周期性地统计数据块的访问次数,调整数据块的优先级。
C1.周期性(如以10分钟为周期)统计每个数据块被访问的次数,将数据块按周期内的被访问次数排序。
C2.将被访问次数最高的10%的数据块加入到R=5的优先级队列中。
C3.将之后10%的数据块加入到R=4的优先级队列中。
C4.将被访问次数最低的30%的数据块加入到R=2的优先级队列中。
C5.其余数据块加入到R=3的优先级队列中。
D.根据优先级动态调整副本的放置。
D1.将每个数据块上一个周期所在的优先级队列的副本因子记为R′。根据相应的从R′到R(目前所在优先级队列的复制因子)策略,调整数据块所在的复制子集,增加或删除副本。
D2.副本的放置调整完成后,回到C统计下一个周期数据块的访问次数。
本发明的优点在于提供了一种能够动态改变复制因子并降低数据丢失概率的副本放置方法,通过周期性地统计数据块的访问次数,改变数据块所处的优先级队列,根据优先级调整数据块所处的复制子集。最终达到提高存储效率的目的。
为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。
下面结合附图1,进一步描述本发明步骤,如图1本发明的步骤包含:A.划分复制子集;B.基于划分好的复制子集放置副本;C.周期性地统计数据块的访问次数,调整数据块的优先级;D.根据优先级动态调整副本的放置。具体的一种实施方式如下:
A.根据用户提供的分散宽度S和系统中的节点个数N划分复制子集。
A1.根据用户输入的S随机生成P个全部N个节点的排列。在生成排列的过程中可以增加相应的约束(如限制同一复制子集中的节点出现在同一机架上)。
A11.其中分散宽度S的定义为:一个数据节点的数据可以均匀的分散在S个其他节点上。(如S=4,假设有复制子集{N1,N2,N3}和{N1,N4,N5},则节点N1上的数据块,会均匀地分布在节点N2,N3,N4,N5上,这是因为使用复制子集放置副本时,同一数据块的副本只能放置在同一复制子集内)
A12.其中排列个数P由公式:
Figure BDA0002375382490000061
生成,其中S为分散宽度;R为动态调整范围内最小的复制因子,即R=2。如果P不为整数,向上取整。
A13.其中可添加约束限制生成的排列满足需求,如果生成的排列不满足约束限制,重新随机排列全部节点生成新的排列,直到生成P个满足约束的排列为止。
A2.根据上述排列划分出不同复制因子R的复制子集。
A21.由排列生成复制子集的规则如下:按顺序将排列中每R个节点划分为一个复制子集。(例如系统中节点总数N=9,复制因子R=3,现有排列N1,N2,N3,N4,N5,N6,N7,N8,N9,则可划分出复制子集{N1,N2,N3}{N4,N5,N6}{N7,N8,N9}。)
A22.划分出不同复制因子R的复制子集的含义是:对同一排列分别使用不同复制因子R生成复制子集。(例如现有排列N1,N2,N3,N4,N5,N6。使用复制因子R=2和R=3生成复制子集,可得到复制子集{N1,N2}{N3,N4}{N5,N6}{N1,N2,N3}{N4,N5,N6})本方法使用的复制因子有R=2,R=3,R=4,R=5。
B.基于划分好的复制子集放置副本。
B1.初始默认所有数据块的复制因子为3,将所有数据块加入到R=3的优先级队列中。
B11.本方法使用了四个优先级队列,优先级从高到低为:R=5的优先级队列,R=4的优先级队列,R=3的优先级队列,R=2的优先级队列。这四个队列中的数据块分别使用R=5,R=4,R=3,R=2生成的复制子集放置副本。
B12.所有数据块的初始复制因子为3,和默认HDFS相同所有新加入的数据块的复制因子也为3。
B2.根据优先级队列将数据块副本放入相应的复制子集中。
B21.数据块的放置规则如下,第一个副本随机选择一个系统中的节点放置,其余副本放置于包含第一个副本放置节点的同一复制子集内,如有多个复制子集包含第一个副本的放置节点,随机在这些复制子集中选择一个来放置其余节点。(例如,R=3时,有复制子集{N1,N2,N3}和{N1,N4,N5},当第一个副本放置在了节点N1上,其余两个副本将放置在N2和N3上,或者N4和N5上。)
C.周期性地统计数据块的访问次数,调整数据块的优先级。
C1.周期性(如以10分钟为周期)统计每个数据块被访问的次数,将数据块按周期内的被访问次数排序。
C2.将被访问次数最高的10%的数据块加入到R=5的优先级队列中。
C3.将之后10%的数据块加入到R=4的优先级队列中。
C4.将被访问次数最低的30%的数据块加入到R=2的优先级队列中。
C5.其余数据块加入到R=3的优先级队列中。
D.根据优先级动态调整副本的放置。
D1.将每个数据块上一个周期所在的优先级队列的副本因子记为R′。根据相应的从R′到R(目前所在优先级队列的复制因子)策略,调整数据块所在的复制子集,增加或删除副本。
D11.其中从R′到R策略详细如下:当R′小于R时,也就是数据块的优先级变高时,检查数据块所在的复制子集是否是某个复制因子等于R的复制子集的子集,如果是,将在相应的复制因子等于R的复制子集中添加放置一个副本。(例如,现有一个数据块从R=2的优先级队列升到了R=3的优先级队列,需要增加一个副本。原来这个块所在的复制子集为{N1,N2},也就是说这个块存储在节点N1和N2上,共有两个副本,系统中还有一个复制子集{N1,N2,N3},检查发现{N1,N2}是{N1,N2,N3}的子集,故只需在节点N3上添加放置一份副本。)如果不是,找出数据块所在的复制子集和所有复制因子等于R的复制子集的最大公共子集,删除数据块所在的复制子集与最大公共子集的差的节点上的数据副本,在包含最大公共子集的复制因子等于R的复制子集中的非最大公共子集节点上增加放置副本。(例如,现有一个数据块从R=3的优先级队列升到了R=4的优先级队列,原来这个块所在的复制子集为{N4,N5,N6},系统中有R=4的复制子集{N1,N2,N3,N4}{N5,N6,N7,N8}。{N4,N5,N6}不是{N1,N2,N3,N4}和{N5,N6,N7,N8}的子集,找出{N4,N5,N6}和{N1,N2,N3,N4},{N5,N6,N7,N8}的最大公共子集为{N5,N6},删除{N4,N5,N6}与{N5,N6}的差上的数据块副本,也就是N4上该数据块的副本,在包含{N5,N6}的R=4的复制子集中增加放置副本,也就是在复制子集{N5,N6,N7,N8}上的N7,N8上增加放置副本。)
D12.当R′大于R时,也就是数据块的优先级变低时,检查所有复制因子等于R的复制子集中是否有数据块所在的复制子集的子集,如果有直接删除在两集合的差的节点上的副本。两集合是指两个集合,其中一个集合是当前数据块放置副本时使用的复制子集(复制子集是节点的集合),另一个集合要在复制因子等于R的所有复制子集中寻找,使这个集合与第一个集合有最多的公共部分。所以之后会优先考虑两者是否构成子集关系,再考虑两者的最大公共子集。(例如,现有一个数据块从R=3的优先级队列降到了R=2的优先级队列,需要删除一个副本。原来这个数据块所在的复制子集为{N1,N2,N3},系统中还有一个复制子集{N1,N2},检查发现{N1,N2}是{N1,N2,N3}的子集,故只需将N3上的数据副本删除即可。)如果没有,找出数据块所在的复制子集和所有复制因子等于R的复制子集的最大公共子集,删除数据块所在的复制子集与最大公共子集的差的节点上的数据副本,在包含最大公共子集的复制因子等于R的复制子集中的非最大公共子集节点上增加放置副本。(例如,现有一个数据块从R=5的优先级队列降到了R=4的优先级队列,原来这个块所在的复制子集为{N6,N7,N8,N9,N10},系统中有R=4的复制子集{N5,N6,N7,N8},{N9,N10,N11,N12}。{N5,N6,N7,N8},{N9,N10,N11,N12}不是{N6,N7,N8,N9,N10}的子集,找出{N6,N7,N8,N9,N10}和{N5,N6,N7,N8},{N9,N10,N11,N12}的最大公共子集为{N6,N7,N8},删除{N6,N7,N8,N9,N10}与{N6,N7,N8}的差上的数据块副本,也就是N9和N10上该数据块的副本,在包含{N6,N7,N8}的R=4的复制子集中增加放置副本,也就是在复制子集{N5,N6,N7,N8}上的N5上增加放置副本。)
D2.副本的放置调整完成后,回到C统计下一个周期数据块的访问次数。
本发明通过对周期内数据块的访问次数统计进行排序,将数据块加入不同的优先级队列,为不同优先级队列中的数据放置不同的副本数量,达到负载均衡的目的,本发明使用了复制子集来放置副本,大大降低数据块的丢失概率,最终提高了整个系统的存储效率,具有良好的市场前景和应用价值。
以下为与上述方法实施例对应的系统实施例,本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。
本发明还提供了一种基于动态调整复制因子的云副本存储系统,其中包括:
模块1、根据预设的分散宽度和分布式存储系统中节点数量,生成多个全部节点的排列,根据该排列划分复制因子的复制子集;
模块2、初始化该分布式存储系统中数据块的复制因子,将所有数据块加入与该复制因子相对应的优先级队列中,根据优先级队列将数据块的副本放入相应的复制子集中;
模块3、周期性地统计各数据块的访问次数,增加访问次数最高的数据块的复制因子,以将访问次数最高的数据块加入高等级的优先级队列中,降低访问次数最低的数据块的复制因子,以将访问次数最低的数据块加入低等级的优先级队列中;
模块4、将各数据块上一个周期所在的优先级队列的等级与当前周期所在优先级队列的等级相比较,根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本。
模块5、循环该模块3和该模块4动态调整该分布式存储系统中数据块的复制因子,以动态的改变各数据块复副本的数量。
所述的基于动态调整复制因子的云副本存储系统,其中该模块1中生成多个全部节点的排列过程中包括约束条件;
判断生成的排列是否满足该约束条件,如否,则重新随机排列全部节点生成新的排列,直到生成P个满足该约束条件的排列为止。
所述的基于动态调整复制因子的云副本存储系统,其中该模块1的中成多个全部节点的排列个数P的过程包括:
Figure BDA0002375382490000091
其中S为分散宽度;R为动态调整范围内最小的复制因子。
所述的基于动态调整复制因子的云副本存储系统,其中该该约束条件包括限制同一复制子集中的节点出现在该分布式存储系统的同一机架上。
所述的基于动态调整复制因子的云副本存储系统,其中该模块4中根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本,具体包括:
当比较结果为数据块上一个周期所在的优先级队列的等级R′大于当前周期所在优先级队列的等级R时,检查数据块所在的复制子集是否是某个复制因子等于R的复制子集的子集,若是,则将在复制因子等于R的复制子集中添加放置一个副本;
当R′大于R时,检查所有复制因子等于R的复制子集中是否有数据块所在的复制子集的子集,若有,则直接删除在两集合的差的节点上的副本。

Claims (10)

1.一种基于动态调整复制因子的云副本存储方法,其特征在于,包括:
步骤1、根据预设的分散宽度和分布式存储系统中节点数量,生成多个全部节点的排列,根据该排列划分复制因子的复制子集;
步骤2、初始化该分布式存储系统中数据块的复制因子,将所有数据块加入与该复制因子相对应的优先级队列中,根据优先级队列将数据块的副本放入相应的复制子集中;
步骤3、周期性地统计各数据块的访问次数,增加访问次数最高的数据块的复制因子,以将访问次数最高的数据块加入高等级的优先级队列中,降低访问次数最低的数据块的复制因子,以将访问次数最低的数据块加入低等级的优先级队列中;
步骤4、将各数据块上一个周期所在的优先级队列的等级与当前周期所在优先级队列的等级相比较,根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本。
步骤5、循环该步骤3和该步骤4动态调整该分布式存储系统中数据块的复制因子,以动态的改变各数据块复副本的数量。
2.如权利要求1所述的基于动态调整复制因子的云副本存储方法,其特征在于,该步骤1中生成多个全部节点的排列过程中包括约束条件;
判断生成的排列是否满足该约束条件,如否,则重新随机排列全部节点生成新的排列,直到生成P个满足该约束条件的排列为止。
3.如权利要求2所述的基于动态调整复制因子的云副本存储方法,其特征在于,该步骤1的中成多个全部节点的排列个数P的过程包括:
Figure FDA0002375382480000011
其中S为分散宽度;R为动态调整范围内最小的复制因子。
4.如权利要求2所述的基于动态调整复制因子的云副本存储方法,其特征在于,该该约束条件包括限制同一复制子集中的节点出现在该分布式存储系统的同一机架上。
5.如权利要求1所述的基于动态调整复制因子的云副本存储方法,其特征在于,该步骤4中根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本,具体包括:
当比较结果为数据块上一个周期所在的优先级队列的等级R′大于当前周期所在优先级队列的等级R时,检查数据块所在的复制子集是否是某个复制因子等于R的复制子集的子集,若是,则将在复制因子等于R的复制子集中添加放置一个副本;
当R′大于R时,检查所有复制因子等于R的复制子集中是否有数据块所在的复制子集的子集,若有,则直接删除在两集合的差的节点上的副本。
6.一种基于动态调整复制因子的云副本存储系统,其特征在于,包括:
模块1、根据预设的分散宽度和分布式存储系统中节点数量,生成多个全部节点的排列,根据该排列划分复制因子的复制子集;
模块2、初始化该分布式存储系统中数据块的复制因子,将所有数据块加入与该复制因子相对应的优先级队列中,根据优先级队列将数据块的副本放入相应的复制子集中;
模块3、周期性地统计各数据块的访问次数,增加访问次数最高的数据块的复制因子,以将访问次数最高的数据块加入高等级的优先级队列中,降低访问次数最低的数据块的复制因子,以将访问次数最低的数据块加入低等级的优先级队列中;
模块4、将各数据块上一个周期所在的优先级队列的等级与当前周期所在优先级队列的等级相比较,根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本。
模块5、循环该模块3和该模块4动态调整该分布式存储系统中数据块的复制因子,以动态的改变各数据块复副本的数量。
7.如权利要求6所述的基于动态调整复制因子的云副本存储系统,其特征在于,该模块1中生成多个全部节点的排列过程中包括约束条件;
判断生成的排列是否满足该约束条件,如否,则重新随机排列全部节点生成新的排列,直到生成P个满足该约束条件的排列为止。
8.如权利要求7所述的基于动态调整复制因子的云副本存储系统,其特征在于,该模块1的中成多个全部节点的排列个数P的过程包括:
Figure FDA0002375382480000021
其中S为分散宽度;R为动态调整范围内最小的复制因子。
9.如权利要求7所述的基于动态调整复制因子的云副本存储系统,其特征在于,该该约束条件包括限制同一复制子集中的节点出现在该分布式存储系统的同一机架上。
10.如权利要求6所述的基于动态调整复制因子的云副本存储系统,其特征在于,该模块4中根据比较结果调整各数据块所在的复制子集,增加或删除或保持副本,具体包括:
当比较结果为数据块上一个周期所在的优先级队列的等级R′大于当前周期所在优先级队列的等级R时,检查数据块所在的复制子集是否是某个复制因子等于R的复制子集的子集,若是,则将在复制因子等于R的复制子集中添加放置一个副本;
当R′大于R时,检查所有复制因子等于R的复制子集中是否有数据块所在的复制子集的子集,若有,则直接删除在两集合的差的节点上的副本。
CN202010063948.7A 2020-01-20 2020-01-20 一种基于动态调整复制因子的云副本存储方法及系统 Active CN111290710B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010063948.7A CN111290710B (zh) 2020-01-20 2020-01-20 一种基于动态调整复制因子的云副本存储方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010063948.7A CN111290710B (zh) 2020-01-20 2020-01-20 一种基于动态调整复制因子的云副本存储方法及系统

Publications (2)

Publication Number Publication Date
CN111290710A true CN111290710A (zh) 2020-06-16
CN111290710B CN111290710B (zh) 2024-04-05

Family

ID=71023299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010063948.7A Active CN111290710B (zh) 2020-01-20 2020-01-20 一种基于动态调整复制因子的云副本存储方法及系统

Country Status (1)

Country Link
CN (1) CN111290710B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111796973A (zh) * 2020-06-30 2020-10-20 南京航空航天大学 一种面向数据中心存储故障的数据恢复调优方法
CN111860609A (zh) * 2020-06-29 2020-10-30 深圳大学 跨数据中心的数据分析方法、装置、设备及存储介质
CN112527751A (zh) * 2020-12-16 2021-03-19 中国联合网络通信集团有限公司 数据处理方法、装置、电子设备和存储介质
CN115277858A (zh) * 2022-09-23 2022-11-01 太极计算机股份有限公司 一种大数据的数据处理方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160179642A1 (en) * 2014-12-19 2016-06-23 Futurewei Technologies, Inc. Replicated database distribution for workload balancing after cluster reconfiguration
CN105760391A (zh) * 2014-12-18 2016-07-13 华为技术有限公司 数据动态重分布的方法、数据节点、名字节点及系统
CN107003933A (zh) * 2014-05-27 2017-08-01 北京大学深圳研究生院 部分复制码的构建方法、装置及其数据修复的方法
CN107807793A (zh) * 2017-10-27 2018-03-16 清华大学 分布式计算机存储系统中数据副本异构存储与访问方法
CN110457280A (zh) * 2019-08-02 2019-11-15 南京邮电大学 一种hdfs副本再复制改进策略

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107003933A (zh) * 2014-05-27 2017-08-01 北京大学深圳研究生院 部分复制码的构建方法、装置及其数据修复的方法
CN105760391A (zh) * 2014-12-18 2016-07-13 华为技术有限公司 数据动态重分布的方法、数据节点、名字节点及系统
US20160179642A1 (en) * 2014-12-19 2016-06-23 Futurewei Technologies, Inc. Replicated database distribution for workload balancing after cluster reconfiguration
CN107807793A (zh) * 2017-10-27 2018-03-16 清华大学 分布式计算机存储系统中数据副本异构存储与访问方法
CN110457280A (zh) * 2019-08-02 2019-11-15 南京邮电大学 一种hdfs副本再复制改进策略

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
刘艳;蔡燕冬;谢晓东;张庆磊;: "异构Hadoop集群中数据副本放置策略优化", 华中科技大学学报(自然科学版) *
朱兵;李挥;陈俊;侯韩旭;周泰;: "基于可分组设计的部分重复码研究", 通信学报 *
陈志鹏;李小勇;: "分布式存储系统中数据修复的自适应流控机制", 信息技术 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860609A (zh) * 2020-06-29 2020-10-30 深圳大学 跨数据中心的数据分析方法、装置、设备及存储介质
CN111860609B (zh) * 2020-06-29 2023-08-25 深圳大学 跨数据中心的数据分析方法、装置、设备及存储介质
CN111796973A (zh) * 2020-06-30 2020-10-20 南京航空航天大学 一种面向数据中心存储故障的数据恢复调优方法
CN112527751A (zh) * 2020-12-16 2021-03-19 中国联合网络通信集团有限公司 数据处理方法、装置、电子设备和存储介质
CN112527751B (zh) * 2020-12-16 2023-10-31 中国联合网络通信集团有限公司 数据处理方法、装置、电子设备和存储介质
CN115277858A (zh) * 2022-09-23 2022-11-01 太极计算机股份有限公司 一种大数据的数据处理方法和系统
CN115277858B (zh) * 2022-09-23 2022-12-20 太极计算机股份有限公司 一种大数据的数据处理方法和系统

Also Published As

Publication number Publication date
CN111290710B (zh) 2024-04-05

Similar Documents

Publication Publication Date Title
CN111290710A (zh) 一种基于动态调整复制因子的云副本存储方法及系统
CN107005596B (zh) 用于在集群重新配置后的工作负载平衡的复制型数据库分配
US10228857B2 (en) Expanding variable sub-column widths as needed to store data in memory
CN106990915B (zh) 一种基于存储介质类型和加权配额的存储资源管理方法
CN108287840B (zh) 一种基于矩阵哈希的数据存储和查询方法
US10929065B2 (en) Method, device and computer program product for coordinating access operations
WO1996037837A2 (en) Continuously available database server having multiple groups of nodes with minimum intersecting sets of database fragment replicas
EP3163446B1 (en) Data storage method and data storage management server
WO2007137133A2 (en) Database partitioning by virtual partitions
US8352470B2 (en) Adaptive aggregation: improving the performance of grouping and duplicate elimination by avoiding unnecessary disk access
CN108073472B (zh) 一种基于热度感知的内存纠删码分布方法
CN107729535A (zh) 一种键值数据库内布隆过滤器的配置方法
Luitjens et al. Parallel space‐filling curve generation through sorting
CN114827180B (zh) 云端数据分布式存储的分配方法
CN112306692B (zh) 一种分布式存储系统的归置组均衡方法和装置
CN109241057B (zh) 一种用于分布式系统的数字id生成方法
WO2024113956A1 (zh) 节点选取方法、装置、第一节点、存储介质及程序产品
CN112380004A (zh) 内存管理方法、装置、计算机可读存储介质及电子设备
US8046394B1 (en) Dynamic partitioning for an ordered analytic function
CN109992196B (zh) 索引数据的存储方法及装置、存储系统
US9824105B2 (en) Adaptive probabilistic indexing with skip lists
Mense et al. Spread: An adaptive scheme for redundant and fair storage in dynamic heterogeneous storage systems
CN114490524A (zh) 一种基于主从副本数据解耦的高性能分布式键值存储方法
Yu et al. Optimal inter-object correlation when replicating for availability
US8943058B1 (en) Calculating aggregates of multiple combinations of a given set of columns

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
GR01 Patent grant
GR01 Patent grant