一种分布式文件系统中的条带化卷扩展数据迁移方法,包括计算扩展卷RI和计算RI内的新卷位置;通过该计算方法可以迭代计算出原有子卷条带数据在卷扩展后的新存储位置,一次性将数据直接迁移到目标子卷,极大地降低了数据迁移开销,并且迁移后的条带数据在所有子卷上均匀分布,从而保证了文件系统的实时处理能力和并发操作性能,增大了IOPS和传输吞带宽。
【技术实现步骤摘要】
本专利技术涉及扩展数据迁移方法
,尤其是一种分布式文件系统中的条带化卷扩展数据迁移方法。
技术介绍
在分布式文件系统中,为提高并行存储的IOPS和传输带宽,可以采用条带化卷保存文件和读写数据。一个条带化卷包含若干条带化子卷。文件按照预设的条带大小被等分为各个数据块,这些条带数据按一定序列规则依次存放在条带化子卷中。因此,单个子卷里存储的不是完整的文件,而是文件的部分条带数据。当存储文件规模增大超出了现有卷容量时,需要对条带化卷进行扩展,增加子卷数量,扩大卷存储空间。为了提高扩展后的条带化卷的并发读写性能,需要从原有子卷向新子卷进行数据迁移操作。条带化子卷间的数据迁移目标是:1)使数据条带均匀分布在各子卷上,各卷条带数基本相等;2)尽量减少数据迁移次数,降低迁移开销。本专利提出一种新的分布式文件系统条带化卷扩展数据迁移技术,不论进行多大规模的子卷扩展,都能以最小的条带移动次数实现扩展操作,极大地降低了数据迁移开销,并时条带数据能在所有子卷上均匀分布,从而提高了文件系统的实时处理能力和并发操作性能,有效地增大了IOPS和传输吞吐量。
技术实现思路
针对上述问题,本专利技术旨在提供一种分布式文件系统中的条带化卷扩展数据迁移方法。为实现该技术目的,本专利技术采用以下技术方案:一种分布式文件系统中的条带化卷扩展数据迁移方法,包括计算扩展卷RI和计算RI内的新卷位置;其中在扩展卷RI计算中:计算N个扩展子卷的RI;步骤一,从第1子卷扩展为2个子卷时,RI 2=2;步骤二,若扩展为N-1子卷时,第N-1卷的RIN-1=k,则扩展至第N子卷的重复间隔为:RIN=lcm(N.k)=|N·k|gcd(N.k)]]>RIN=|N|gcd(N.RIN−1)·|N−1|gcd(N−1,RIN−2)···|4|gcd(4,6)·|3|gcd(3,2)·|2·1|gcd(2,1);]]>RIN=小于等于N的全部质数的幂的乘积,其中每个质数的幂方小于等于N;例如:RI5=22×3×5=60,RI6=22×3×5=60;在计算RI内的新卷位置中:计算RI内的新卷位置RI10=23×32×5×7=2520;步骤一,在内存中预先建立大小为RIN的映射表,可针对不同N建立多张表; 步骤二,迭代计算:一,对1至RIN个条带数据进行N次扩展迭代,在表中生成各个新子卷位置;二,迭代公式:假设条带化卷扩展为n个子卷,可将n个子卷看成n列,卷内每个数据块按行排列,每个子卷每行为一个数据块;对于任意数据块a, 若其在条带化卷内的位置坐标为(xn,a,yn,a),xn,a为a所在子卷数,yn,a为a所在子卷内行数,则可以通过下列公式迭代求解(xn,a,yn,a),或者其中,q为yn-1,a除以n的整数部分;(3)扩展子卷N<=4的直接计算公式:2xN=26x−1,6xN=312x−3,12x−2,12xN=4.]]>与现有技术相比,本专利技术的有益效果是:通过上述计算方法可以迭代计算出原有子卷条带数据在卷扩展后的新存储位置,一次性将数据直接迁移到目标子卷,极大地降低了数据迁移开销,并且迁移后的条带数据在所有子卷上均匀分布,从而保证了了文件系统的实时处理能力和并发操作性能,增大了IOPS和传输吞带宽。具体实施方式下面将对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。本专利技术实施例中,一种分布式文件系统中的条带化卷扩展数据迁 移方法,包括计算扩展卷RI和计算RI内的新卷位置;由于逐卷迭代的方式遵循一定规律,因此,当前子卷条带一次性重分布到N个扩展卷也是有规律行为。通过分析发现,依次计算各个条带在N个子卷的新位置时,经过一定的条带数量间隔,计算出的新位置会出现周期性重复,这个重复数称为N个条带化子卷的重复间隔,记为RI。如果能知道出RI内的条带分布位置,就知道了全部条带的扩展后新卷位置。其中在扩展卷RI计算中:计算N个扩展子卷的RI;步骤一,从第1子卷扩展为2个子卷时,RI 2=2;步骤二,若扩展为N-1子卷时,第N-1卷的RIN-1=k,则扩展至第N子卷的重复间隔为:RIN=lcm(N.k)=|N·k|gcd(N.k)]]>RIN=|N|gcd(N.RIN−1)·|N−1|gcd(N−1,RIN−2)···|4|gcd(4,6)·|3|gcd(3,2)·|2·1|gcd(2,1);]]>RIN=小于等于N的全部质数的幂的乘积,其中每个质数的幂方小于等于N;例如::RI5=22×3×5=60,RI6=22×3×5=60;在计算RI内的新卷位置中:计算RI内的新卷位置RI10=23×32×5×7=2520;步骤一,在内存中预先建立大小为RIN的映射表,可针对不同N建立多张表; 步骤二,迭代计算:一,对1至RIN个条带数据进行N次扩展迭代,在表中生成 各个新子卷位置;二,迭代公式:假设条带化卷扩展为n个子卷,可将n个子卷看成n列,卷内每个数据块按行排列,每个子卷每行为一个数据块;对于任意数据块a,若其在条带化卷内的位置坐标为(xn,a,yn,a),xn,a为a所在子卷数,yn,a为a所在子卷内行数,则可以通过下列公式迭代求解(xn,a,yn,a),或者其中q为yn-1,a除以n的整数部分;(3)扩展子卷N<=4的直接计算公式:2xN=26x−1,6xN=312x−3,12x−2,12xN=4;]]>数据迁移次数最小的证明(略);数据均匀重分布的证明(略)。对于本领域技术人员而言,显然本专利技术不限于上述示范性实施例的细节,而且在不背离本专利技术的精神或基本特征的情况下,能够以其它的具体形式实现本专利技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本专利技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在本文档来自技高网...
【技术保护点】
一种分布式文件系统中的条带化卷扩展数据迁移方法,包括计算扩展卷RI和计算RI内的新卷位置;其特征在于:其中在扩展卷RI计算中:计算N个扩展子卷的RI;步骤一,从第1子卷扩展为2个子卷时,RI2=2;步骤二,若扩展为N‑1子卷时,第N‑1卷的RIN‑1=k,则扩展至第N子卷的重复间隔为:RIN=小于等于N的全部质数的幂的乘积,其中每个质数的幂方小于等于N;例如:RI5=22×3×5=60,RI6=22×3×5=60;在计算RI内的新卷位置中:计算RI内的新卷位置:RI10=23×32×5×7‑2520;步骤一,在内存中预先建立大小为RIN的映射表,可针对不同N建立多张表;步骤二,迭代计算:一,对1至RIN个条特数据进行N次扩展迭代,在表中生成各个新子卷位置;二,迭代公式:假设条带化卷扩展为n个子卷,可将n个子卷看成n列,卷内每个数据块按行排列,每个子卷每行为一个数据块;对于任意数据块a, 若其在条带化卷内的位置坐标为(xn,a,yn,a),xn,a为a所在子卷数,yn,a为a所在子卷内行数,则可以通过下列公式迭代求解(xn,a,yn,a),yn‑1,a整除n或者yn‑1,a不能整除n;其中,q为yn‑1,a除以n的整数部分;(3)扩展子卷N<=4的直接计算公式:...
【技术特征摘要】
1.一种分布式文件系统中的条带化卷扩展数据迁移方法,包括计算扩展卷RI和计算RI内的新卷位置;其特征在于:
其中在扩展卷RI计算中:计算N个扩展子卷的RI;
步骤一,从第1子卷扩展为2个子卷时,RI2=2;
步骤二,若扩展为N-1子卷时,第N-1卷的RIN-1=k,则扩展至第N子卷的重复间隔为:
RIN=小于等于N的全部质数的幂的乘积,其中每个质数的幂方小于等于N;例如:RI5=22×3×5=60,RI6=22×3×5=60;
在计算RI内的新卷位置中:计算RI内的新卷位置:
RI10=23×32×5×7-2520;
步骤一,在内存中预先建立大小为RIN的映射...
【专利技术属性】
技术研发人员:周航军,周航飞,杨海峰,张伟,刘锋,
申请(专利权)人:长沙数析信息科技有限公司,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。