CN103970879B - 一种调整数据块存储位置的方法及系统 - Google Patents
一种调整数据块存储位置的方法及系统 Download PDFInfo
- Publication number
- CN103970879B CN103970879B CN201410208154.XA CN201410208154A CN103970879B CN 103970879 B CN103970879 B CN 103970879B CN 201410208154 A CN201410208154 A CN 201410208154A CN 103970879 B CN103970879 B CN 103970879B
- Authority
- CN
- China
- Prior art keywords
- data
- data block
- data blocks
- blocks
- storage node
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000001105 regulatory effect Effects 0.000 title abstract 3
- 238000013500 data storage Methods 0.000 claims abstract description 92
- 238000013508 migration Methods 0.000 claims abstract description 69
- 230000005012 migration Effects 0.000 claims abstract description 69
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 9
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 11
- 238000004891 communication Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 2
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 description 1
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed 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
本发明公开一种调整数据块存储位置的方法及系统。所述方法包括:获取分布式网络中的n个数据块;利用超图确定n个数据块中任意m个数据块之间的相关度,m<n;将m个数据块划分至多个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;对于任意一个数据块集合,分别计算将数据块集合中的数据块迁移至分布式网络中的各个数据存储节点中所对应的迁移代价值;确定最小的迁移代价值对应的目标数据存储节点;将数据块集合中的数据块存储至目标数据存储节点。采用本发明的方法或系统,可以将相关度较高的数据块存储到尽可能少的数据存储节点上,进而降低对数据进行处理时的网络通信开销,提高对数据进行处理的效率。
Description
技术领域
本发明涉及大数据存储领域,特别是涉及一种调整数据块存储位置的方法及系统。
背景技术
随着互联网技术的不断发展,互联网中的数据存储节点中存储的数据量也越来越大。在大数据环境下,当某个操作涉及到的数据量较大时,该操作涉及到的数据在网络中的存储位置将直接影响该操作的效率。
例如,当某一个操作需要访问的数据(或数据块)如果被分散存储在多个数据存储节点上,则执行该操作的计算节点需要分别从多个不同的数据存储节点获取数据以便完成该操作。此时,将会有大量的数据通过网络进行传输(即从数据存储节点传输至计算节点),带来大量的网络通信开销。
由上述可知,现有技术中的数据存储方法,由于将数据杂乱无章的分散存储在多个数据存储节点上,导致计算节点在执行涉及多个数据存储节点存储的数据的操作时,需要从多个不同的数据存储节点获取数据。这导致了大量的网络通信开销,同时也降低了对数据进行处理的效率。
发明内容
本发明的目的是提供一种调整数据块存储位置的方法及系统,可以将相关度较高的数据块存储到尽可能少的数据存储节点上,进而降低对数据进行处理时的网络通信开销,提高对数据进行处理的效率。
为实现上述目的,本发明提供了如下方案:
一种调整数据块存储位置的方法,包括:
获取分布式网络中的n个数据块;
利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
确定最小的所述迁移代价值对应的目标数据存储节点;
将所述数据块集合中的数据块存储至所述目标数据存储节点。
可选的,所述利用超图确定所述n个数据块中任意m个数据块之间的相关度,具体包括:
确定历史操作访问过的数据块;
将所述历史操作访问过的数据块设定为超图的顶点;
根据公式计算每个顶点的权重,其中frqj表示的历史操作j的频率,wvi表示顶点i的权重;fumji=1表示在历史操作中第j个操作访问了第i个数据块;k代表的是历史操作的总数;
将每个历史操作作为一条超边;
将与该超边对应的历史操作访问过的数据块,作为该超边的顶点;
根据公式wej=frqj计算每个超边的权重,其中wej表示超边j的权重;
根据上述步骤构造的超图模型中,所述超边的权重用于表示数据块之间的相关度。
可选的,所述计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值之前,还包括:
判断所述数据块集合中的数据块个数是否位于预设个数范围内;
当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合;
当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中。
可选的,所述计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值,具体包括:
根据公式
计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
其中,表示数据块集合Ci中第m个数据块的权重,表示数据块集合Ci中第m个数据块现在所属的站点ID,Costi→j表示的是将数据块集合i迁移到数据存储节点j上的代价。
可选的,所述将所述m个数据块划分至多个数据块集合,具体包括:
采用hMetis超图划分算法,将所述超图模型划分为多个数据块集合,以便确保所述多个数据块集合为具有最小割的划分结果。
一种调整数据块存储位置的系统,包括:
数据块获取单元,用于获取分布式网络中的n个数据块;
相关度确定单元,用于利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
集合划分单元,用于将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
迁移代价值计算单元,用于对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
目标数据存储节点确定单元,用于确定最小的所述迁移代价值对应的目标数据存储节点;
存储单元,用于将所述数据块集合中的数据块存储至所述目标数据存储节点。
可选的,所述相关度确定单元,具体包括:
数据块确定子单元,用于确定历史操作访问过的数据块;
超图顶点设定子单元,用于将所述历史操作访问过的数据块设定为超图的顶点;
顶点权重计算子单元,用于根据公式计算每个顶点的权重,其中frqj表示的历史操作j的频率,wvi表示顶点i的权重;
超边确定子单元,用于将每个历史操作作为一条超边;
超边顶点确定子单元,用于将与该超边对应的历史操作访问过的数据块,作为该超边的顶点;
超边权重计算子单元,用于根据公式wej=frqj计算每个超边的权重,其中wej表示超边j的权重;
根据上述步骤构造的超图模型中,所述超边的权重用于表示数据块之间的相关度。
可选的,还包括:
数据块个数判断单元,用于在计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值之前,判断所述数据块集合中的数据块个数是否位于预设个数范围内;
第一转移单元,用于当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合;
第二转移单元,用于当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中。
可选的,所述迁移代价值计算单元,具体包括:
迁移代价值计算子单元,用于根据公式
计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
其中,表示数据块集合Ci中第m个数据块的权重,表示数据块集合Ci中第m个数据块现在所属的站点ID,Costi→j表示的是将数据块集合i迁移到数据存储节点j上的代价。
可选的,所述集合划分单元,具体包括:
集合划分子单元,用于采用hMetis超图划分算法,将所述超图模型划分为多个数据块集合,以便确保所述多个数据块集合为具有最小割的划分结果。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明的调整数据块存储位置的方法或系统,通过利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;将所述m个数据块划分至多个数据块集合;对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;确定最小的所述迁移代价值对应的目标数据存储节点;将所述数据块集合中的数据块存储至所述目标数据存储节点;可以将相关度较高的数据块存储到尽可能少的数据存储节点上,进而降低对数据进行处理时的网络通信开销,提高对数据进行处理的效率;同时,由于计算了迁移代价,还可以以较小的代价实现数据块存储位置的调整。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的调整数据块存储位置的方法实施例1的流程图;
图2为本发明的调整数据块存储位置的方法实施例2的流程图;
图3为本发明的调整数据块存储位置的系统实施例的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明的调整数据块存储位置的方法实施例1的流程图。如图1所示,该方法可以包括:
步骤101:获取分布式网络中的n个数据块;
所述分布式网络中包括多个数据存储节点,所述n个数据块可以分布在所述多个数据存储节点中。
数据块是由多个数据组成的数据集合,例如数据库中多个数据项组成的数据项集合就可以称为数据块。
所述n个数据块中的任意两个数据块,可以存储在同一个数据存储节点,也可以存储在两个不同的数据存储节点中。当某种操作需要同时访问这两个数据时,如果这两个数据存储在不同的数据存储节点中,则执行该操作的服务器需要分别从两个不同的数据存储节点获取数据。这会带来较大的数据传输开销。
步骤102:利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
超图是一种广义上的图,它的一条边可以连接任意数量的顶点。形式上,超图H是一个集合组H=(X,E),其中X是一个有限集合,该集合的元素被称为节点或顶点,E是X的非空子集的集合,被称为超边或连接。因此,E是X的一个子集。
具体的,可以采用以下方式确定所述n个数据块中任意m个数据块之间的相关度:
步骤a:确定历史操作访问过的数据块;
分布式网络中的计算节点在执行某个历史操作时,访问过的数据块,均可以采用本发明的方法计算相关度。
假设某一个历史操作,需要访问x个数据块,则这x个数据块之间就具有相关关系。需要说明的是,相关关系有强弱之分,下面的步骤可以计算多个数据块之间的相关度。
步骤b:将所述历史操作访问过的数据块设定为超图的顶点;
步骤c:根据公式计算每个顶点的权重,其中frqj表示的历史操作j的频率,wvi表示顶点i的权重;fumji=1表示在历史操作中第j个操作访问了第i个数据块;k代表的是历史操作的总数;
步骤d:将每个历史操作作为一条超边;
步骤e:将与该超边对应的历史操作访问过的数据块,作为该超边的顶点;
步骤f:根据公式wej=frqj计算每个超边的权重,其中wej表示超边j的权重;
步骤g:根据上述步骤构造的超图模型中,所述超边的权重用于表示数据块之间的相关度。
采用上面的步骤,可以计算多个数据块之间的相关度。而现有技术中,通常只能计算两个数据块之间的相关度。
步骤103:将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
根据前面的步骤计算出数据块之间的相关度之后,可以将相关度较高(即大于预设相关阈值)的数据块划分至相同的数据块集合。每个数据块集合中包含的任意一个数据块,均不属于另外的数据块集合。
对于构造好的超图模型,可以采用hMetis超图划分算法,将所述超图模型划分为多个数据块集合,以便确保所述多个数据块集合为具有最小割的划分结果。
划分后得到的各个数据块集合中的各个数据块之间,均具有较高的相关程度。也就是说,对于任意一种数据操作,该操作需要访问的多个数据块中的一部分或者全部,具有较高的概率是位于同一个数据块集合中的。
步骤104:对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
在采用本发明的方法之前,相关程度较高的多个数据块往往是分散存储在多个数据存储节点中的。本发明的实施例中,需要将同一个数据块集合中的数据块尽量存储在同一个数据存储节点。因此,本发明的方法需要对数据块进行迁移。
在迁移之前,由于分布式网络中具有多个数据存储节点,还需要确定迁移代价最小的目标数据存储节点。假设有三个数据块分别存储在三个数据存储节点中,那么,通常可以将与这三个数据存储节点的距离之和最小的数据存储节点,作为所述目标数据存储节点。需要说明的是,三个数据块所在的三个数据存储节点也可以作为所述目标数据存储节点。即,数据块集合中的数据块所在的数据存储节点,可以作为所述目标数据存储节点。
具体的,还可以根据公式
计算将所述数据集合中的数据迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
其中,表示数据块集合Ci中第m个数据块的权重,表示数据块集合Ci中第m个数据块现在所属的站点ID,Costi→j表示的是将数据块集合i迁移到数据存储节点j上的代价。
上面的公式主要是计算将数据块集合Ci迁移到节点j上的迁移代价。迁移代价主要是根据需要迁移的数据块数量以及数据块权重决定的。每个数据块的大小可以是一样的,数据块的迁移代价跟该数据块的权重是有关的。权重越大的数据块被迁移了则其代价越高,所以迁移的代价也可以表示为被迁移的数据块权重之和。
步骤105:确定最小的所述迁移代价值对应的目标数据存储节点;
步骤106:将所述数据块集合中的数据块存储至所述目标数据存储节点。
将所述数据块集合中的数据块存储至所述目标数据存储节点之后,可以将原本存储所述数据块集合中的数据块的数据存储节点的存储空间进行释放,用于存储另外的数据。
综上所述,本实施例中,通过利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;将所述m个数据块划分至多个数据块集合;对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;确定最小的所述迁移代价值对应的目标数据存储节点;将所述数据块集合中的数据块存储至所述目标数据存储节点;可以将相关度较高的数据块存储到尽可能少的数据存储节点上,进而降低对数据进行处理时的网络通信开销,提高对数据进行处理的效率;同时,由于计算了迁移代价,还可以以较小的代价实现数据块存储位置的调整。
实际应用中,为了防止某个数据块集合中的数据块个数过多,导致数据存储节点无法完整的存储下该数据块集合,本发明还提供了另一个实施例。
图2为本发明的调整数据块存储位置的方法实施例2的流程图。如图2所示,该方法可以包括:
步骤201:获取分布式网络中的n个数据块;
步骤202:利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
步骤203:将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
步骤204:判断所述数据块集合中的数据块个数是否位于预设个数范围内;
所述预设个数范围具有上限和下限数值。可以根据实际需求设定上限数值和下限数值。
步骤205:当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合;
当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,可以表示该数据块中的数据个数过少,进一步可以表示当前划分的数据块集合的个数过多。此时,可以将其它的数据块集合中的数据块转移至所述数据块集合。
可以确定与数据块个数较少的数据块集合中的数据块的相关度较高的数据块,优先将这些数据块转移至所述数据块集合。
步骤206:当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中;
当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,可以表示该数据块中的数据个数过多,可能导致数据存储节点无法完整的存储下该数据块集合。此时,可以将所述数据块集合中的数据块转移至其它的数据块集合中。
可以确定与所述数据块集合中的数据块的相关度较高的数据块所在的数据块集合,优先将数据块转移至相关度较高的数据块所在的数据块集合中。
步骤207:对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
步骤208:确定最小的所述迁移代价值对应的目标数据存储节点;
步骤209:将所述数据块集合中的数据块存储至所述目标数据存储节点。
本实施例中,通过当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中,可以防止某个数据块集合中的数据块个数过多,导致数据存储节点无法完整的存储下该数据块集合;通过当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合,可以尽量避免划分的数据块集合的数目过多。
本发明还公开了一种调整数据块存储位置的系统。
图3为本发明的调整数据块存储位置的系统实施例的结构图。如图3所示,该系统可以包括:
数据块获取单元301,用于获取分布式网络中的n个数据块;
相关度确定单元302,用于利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
集合划分单元303,用于将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
迁移代价值计算单元304,用于对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
目标数据存储节点确定单元305,用于确定最小的所述迁移代价值对应的目标数据存储节点;
存储单元306,用于将所述数据块集合中的数据块存储至所述目标数据存储节点。
本实施例中,通过利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;将所述m个数据块划分至多个数据块集合;对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;确定最小的所述迁移代价值对应的目标数据存储节点;将所述数据块集合中的数据块存储至所述目标数据存储节点;可以将相关度较高的数据块存储到尽可能少的数据存储节点上,进而降低对数据进行处理时的网络通信开销,提高对数据进行处理的效率;同时,由于计算了迁移代价,还可以以较小的代价实现数据块存储位置的调整。
实际应用中,所述相关度确定单元302,具体可以包括:
数据块确定子单元,用于确定历史操作访问过的数据块;
超图顶点设定子单元,用于将所述历史操作访问过的数据块设定为超图的顶点;
顶点权重计算子单元,用于根据公式计算每个顶点的权重,其中frqj表示的历史操作j的频率,wvi表示顶点i的权重;fumji=1表示在历史操作中第j个操作访问了第i个数据块;k代表的是历史操作的总数;
超边确定子单元,用于将每个历史操作作为一条超边;
超边顶点确定子单元,用于将与该超边对应的历史操作访问过的数据块,作为该超边的顶点;
超边权重计算子单元,用于根据公式wej=frqj计算每个超边的权重,其中wej表示超边j的权重;
根据上述步骤构造的超图模型中,所述超边的权重用于表示数据块之间的相关度。
实际应用中,还可以包括:
数据块个数判断单元,用于在计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值之前,判断所述数据块集合中的数据块个数是否位于预设个数范围内;
第一转移单元,用于当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合;
第二转移单元,用于当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中。
实际应用中,所述迁移代价值计算单元304,具体可以包括:
迁移代价值计算子单元,用于根据公式
计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
其中,表示数据块集合Ci中第m个数据块的权重,表示数据块集合Ci中第m个数据块现在所属的站点ID,Costi→j表示的是将数据块集合i迁移到数据存储节点j上的代价。
实际应用中,所述集合划分单元303,具体可以包括:
集合划分子单元,用于采用hMetis超图划分算法,将所述超图模型划分为多个数据块集合,以便确保所述多个数据块集合为具有最小割的划分结果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种调整数据块存储位置的方法,其特征在于,包括:
获取分布式网络中的n个数据块;
利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
确定最小的所述迁移代价值对应的目标数据存储节点;
将所述数据块集合中的数据块存储至所述目标数据存储节点;
所述利用超图确定所述n个数据块中任意m个数据块之间的相关度,具体包括:
确定历史操作访问过的数据块;
将所述历史操作访问过的数据块设定为超图的顶点;
根据公式计算每个顶点的权重,其中frqj表示的历史操作j的频率,wvi表示顶点i的权重;fumji=1表示在历史操作中第j个操作访问了第i个数据块;k代表的是历史操作的总数;
将每个历史操作作为一条超边;
将与该超边对应的历史操作访问过的数据块,作为该超边的顶点;
根据公式wej=frqj计算每个超边的权重,其中wej表示超边j的权重;
根据上述步骤构造的超图模型中,所述超边的权重用于表示数据块之间的相关度。
2.根据权利要求1所述的方法,其特征在于,所述计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值之前,还包括:
判断所述数据块集合中的数据块个数是否位于预设个数范围内;
当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合;
当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中。
3.根据权利要求1所述的方法,其特征在于,所述计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值,具体包括:
根据公式
计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
其中,表示数据块集合Ci中第m个数据块的权重,表示数据块集合Ci中第m个数据块现在所属的站点ID,Costi→j表示的是将数据块集合i迁移到数据存储节点j上的代价。
4.根据权利要求1所述的方法,其特征在于,所述将所述m个数据块划分至多个数据块集合,具体包括:
采用hMetis超图划分算法,将所述超图模型划分为多个数据块集合,以便确保所述多个数据块集合为具有最小割的划分结果。
5.一种调整数据块存储位置的系统,其特征在于,包括:
数据块获取单元,用于获取分布式网络中的n个数据块;
相关度确定单元,用于利用超图确定所述n个数据块中任意m个数据块之间的相关度,m<n;
集合划分单元,用于将所述m个数据块划分至多个数据块集合,所述m个数据块中的任意一个数据块只属于所述多个数据块集合中的一个数据块集合,属于同一个数据块集合的数据块之间的相关度大于预设相关阈值;
迁移代价值计算单元,用于对于任意一个所述数据块集合,分别计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
目标数据存储节点确定单元,用于确定最小的所述迁移代价值对应的目标数据存储节点;
存储单元,用于将所述数据块集合中的数据块存储至所述目标数据存储节点;
所述相关度确定单元,具体包括:
数据块确定子单元,用于确定历史操作访问过的数据块;
超图顶点设定子单元,用于将所述历史操作访问过的数据块设定为超图的顶点;
顶点权重计算子单元,用于根据公式计算每个顶点的权重,其中frqj表示的历史操作j的频率,wvi表示顶点i的权重;
超边确定子单元,用于将每个历史操作作为一条超边;
超边顶点确定子单元,用于将与该超边对应的历史操作访问过的数据块,作为该超边的顶点;
超边权重计算子单元,用于根据公式wej=frqj计算每个超边的权重,其中wej表示超边j的权重;
根据上述步骤构造的超图模型中,所述超边的权重用于表示数据块之间的相关度。
6.根据权利要求5所述的系统,其特征在于,还包括:
数据块个数判断单元,用于在计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值之前,判断所述数据块集合中的数据块个数是否位于预设个数范围内;
第一转移单元,用于当所述数据块集合中的数据块个数小于所述预设个数范围的下限时,将其它的数据块集合中的数据块转移至所述数据块集合;
第二转移单元,用于当所述数据块集合中的数据块个数大于所述预设个数范围的上限时,将所述数据块集合中的数据块转移至其它的数据块集合中。
7.根据权利要求5所述的系统,其特征在于,所述迁移代价值计算单元,具体包括:
迁移代价值计算子单元,用于根据公式
计算将所述数据块集合中的数据块迁移至所述分布式网络中的各个数据存储节点中所对应的迁移代价值;
其中,表示数据块集合Ci中第m个数据块的权重,表示数据块集合Ci中第m个数据块现在所属的站点ID,Costi→j表示的是将数据块集合i迁移到数据存储节点j上的代价。
8.根据权利要求5所述的系统,其特征在于,所述集合划分单元,具体包括:
集合划分子单元,用于采用hMetis超图划分算法,将所述超图模型划分为多个数据块集合,以便确保所述多个数据块集合为具有最小割的划分结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410208154.XA CN103970879B (zh) | 2014-05-16 | 2014-05-16 | 一种调整数据块存储位置的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410208154.XA CN103970879B (zh) | 2014-05-16 | 2014-05-16 | 一种调整数据块存储位置的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103970879A CN103970879A (zh) | 2014-08-06 |
CN103970879B true CN103970879B (zh) | 2017-05-24 |
Family
ID=51240376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410208154.XA Active CN103970879B (zh) | 2014-05-16 | 2014-05-16 | 一种调整数据块存储位置的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103970879B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488180B (zh) * | 2015-11-30 | 2019-04-26 | 中国建设银行股份有限公司 | 一种数据存储方法及系统 |
CN105677755B (zh) * | 2015-12-30 | 2019-05-24 | 杭州华为数字技术有限公司 | 一种处理图数据的方法及装置 |
CN106294757B (zh) * | 2016-08-11 | 2019-09-10 | 上海交通大学 | 一种基于超图划分的分布式数据库及其集群分区方法 |
CN108664496B (zh) * | 2017-03-29 | 2022-03-25 | 腾讯科技(深圳)有限公司 | 数据迁移方法及装置 |
CN108984308A (zh) * | 2018-07-25 | 2018-12-11 | 国网山东省电力公司信息通信公司 | 一种基于工作负载的云数据处理方法及系统 |
CN110109614B (zh) * | 2019-03-22 | 2022-02-18 | 浙江工商大学 | 面向pram/dram混合内存的基于概率的数据迁移方法 |
CN111400521B (zh) * | 2020-02-28 | 2022-06-07 | 苏州浪潮智能科技有限公司 | 一种图数据处理方法、装置、设备、介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741884A (zh) * | 2008-11-25 | 2010-06-16 | 华为技术有限公司 | 一种分布式存储方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9218359B2 (en) * | 2010-07-02 | 2015-12-22 | Code Systems Corporation | Method and system for profiling virtual application resource utilization patterns by executing virtualized application |
-
2014
- 2014-05-16 CN CN201410208154.XA patent/CN103970879B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741884A (zh) * | 2008-11-25 | 2010-06-16 | 华为技术有限公司 | 一种分布式存储方法和装置 |
Non-Patent Citations (6)
Title |
---|
c Computations.《IEEE》.2007,第1-11页. * |
c Computing: Partitioning, Ordering and Coloring.《Scientific Programming》.2012,第1-27页. * |
Erik G. Boman等.The Zoltan and Isorropia Parallel Toolkits for Combinatorial Scientifi * |
Umit V. Catalyurek等.Hypergraph-based Dynamic Load Balancing for Adaptive Scientifi * |
一种基于块级的存储性能优化方法;赵晓南等;《计算机科学》;20090630;第36卷(第6期);第129-137页 * |
超图的最短路径算法研究;陈新泉;《中国科技论文在线》;20120518;第1-13页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103970879A (zh) | 2014-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103970879B (zh) | 一种调整数据块存储位置的方法及系统 | |
CN108009016B (zh) | 一种资源负载均衡控制方法及集群调度器 | |
CN110595482B (zh) | 一种带避障权重的路径规划方法、装置及电子设备 | |
CN109034381B (zh) | 训练任务优化系统、方法及其非暂态电脑可读媒体 | |
CN108833458B (zh) | 一种应用推荐方法、装置、介质及设备 | |
US8904149B2 (en) | Parallelization of online learning algorithms | |
WO2018176385A1 (en) | System and method for network slicing for service-oriented networks | |
CN104639639A (zh) | 一种虚拟机部署位置的调整方法、装置及系统 | |
US20170359402A1 (en) | Optimized browser rendering service | |
CN107450855B (zh) | 一种用于分布式存储的模型可变的数据分布方法及系统 | |
CN104063501B (zh) | 基于hdfs的副本平衡方法 | |
CN103345508A (zh) | 一种适用于社会网络图的数据存储方法及系统 | |
CN108089918B (zh) | 一种面向异构服务器结构的图计算负载均衡方法 | |
CN105677755B (zh) | 一种处理图数据的方法及装置 | |
CN111966495B (zh) | 数据处理方法和装置 | |
CN103440182A (zh) | 自适应分配方法及装置、自适应副本一致性方法 | |
CN111512283A (zh) | 数据库中的基数估算 | |
CN101800768A (zh) | 一种基于存储联盟子集划分的网格数据副本生成方法 | |
CN105471893A (zh) | 一种分布式等值数据流连接方法 | |
Nakamura et al. | Discreet method to match safe site-pairs in short computation time for risk-aware data replication | |
CN103984737A (zh) | 一种基于计算相关度的多数据中心数据布局优化方法 | |
CN107273527A (zh) | 一种Hadoop集群和分布式系统 | |
CN107656980B (zh) | 应用于分布式数据库系统中的方法及分布式数据库系统 | |
TWI758223B (zh) | 具有動態最小批次尺寸之運算方法,以及用於執行該方法之運算系統及電腦可讀儲存媒體 | |
Touheed et al. | A comparison of some dynamic load-balancing algorithms for a parallel adaptive flow solver |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |