一种数据存储、数据迁移方法及装置制造方法及图纸

技术编号:16063915 阅读:55 留言:0更新日期:2017-08-22 16:33
本申请实施例公开了一种数据存储、数据迁移方法及装置,涉及计算机技术领域,其中,上述方法包括:获得待存储数据块的标识;根据待存储数据块的标识,确定待存储数据块在预设的封闭圆环上的第一映射点,预设的封闭圆环为由预设数量个点构成的封闭圆环,预设的封闭圆环上的一个点与一个数据块的标识或一个资源节点的标识对应;按照各个资源节点的存储范围,获得第一映射点对应的第一资源节点,各个资源节点的存储范围为:各个资源节点对应的存储节点能够存储的数据块在预设的封闭圆环上的映射点的范围;将待存储数据块存储至第一资源节点对应的存储节点。应用本申请实施例提供的方案存储数据,降低了存储节点以外的其他资源对数据存储量的限制。

Data storage and data transfer method and device

The embodiment of the invention discloses a data storage and data transfer method and device, and relates to the technical field of computer, which, the method includes obtaining data to be stored block identification; according to the stored data block identification, determine the first mapping data to be stored in a closed circular block preset ring, preset closed circle is a closed circle constitute the preset number of points, marking a point corresponding to the preset closed circle with a data block identifier or a resource node; stored in accordance with the scope of each resource node, obtains the first resource node corresponding to the first mapping the storage scope of each resource node is stored the node corresponding to each resource node to stored data blocks in the closed circle on the default mapping; storing the data to be stored to the first node resource block Corresponding storage node. The program provided by the application embodiment stores data and reduces the storage limit of other resources other than the storage node.

【技术实现步骤摘要】
一种数据存储、数据迁移方法及装置
本申请涉及计算机
,特别涉及一种数据存储、数据迁移方法及装置。
技术介绍
随着计算机技术的快速发展,实际应用中需要存储的数据越来越多,基于单台存储设备的文件系统已经难以满足用户需求,鉴于此分布式文件系统得到了广泛应用。在分布式文件系统中,存在多个存储节点,这些存储节点可以位于同一台物理机上,也可以位于不同的物理机上,由于存储资源丰富了,所以相对于基于单台存储设备的文件系统而言,分布式文件系统能够较大程度的满足用户需求。以HDFS(HadoopDistributedFileSystem,Hadoop分布式文件系统)为例,在该分布式文件系统中进行文件存储时,各个存储节点所存储数据的元数据信息存储在该系统一个特定节点的内存中,由于该特定节点的内存资源是有限的,所以其能够存储的元数据信息是有限的,进而上述分布式文件系统的各个存储资源中能够存储数据也是有限,也就是说,在上述特定节点没有剩余资源用于存储元数据信息时,即使存储节点仍然存在剩余空间,也不能继续存储数据。可见,现有技术中进行数据存储时,除了受存储节点中存储资源的限制外,还受存储节点以外的其他资源的限制。
技术实现思路
本申请实施例公开了一种数据存储、数据迁移方法及装置,以减少存储节点以外的其他资源对数据存储量的限制。为达到上述目的,本申请实施例公开了一种数据存储方法,所述方法包括:获得待存储数据块的标识;根据所述待存储数据块的标识,确定所述待存储数据块在预设的封闭圆环上的第一映射点,其中,所述预设的封闭圆环为由预设数量个点构成的封闭圆环,所述预设的封闭圆环上的一个点与一个数据块的标识或者一个资源节点的标识对应,所述资源节点为根据预设的针对存储节点的存储资源状态的节点划分规则划分得到的子节点;按照各个资源节点的存储范围,获得所述第一映射点对应的第一资源节点,其中,所述各个资源节点的存储范围为:各个资源节点对应的存储节点能够存储的数据块在所述预设的封闭圆环上的映射点的范围;将所述待存储数据块存储至所述第一资源节点对应的存储节点。在本申请的一种具体实现方式中,通过以下方式确定各个资源节点的存储范围:根据各个资源节点的标识,确定各个资源节点在所述预设的封闭圆环上的映射点;根据所确定的各个资源节点的映射点的位置,按照预设的分段规则将所述预设的封闭圆环划分为多个点段,得到每一资源节点对应的点段,其中,划分得到的点段的数量与资源节点的数量相等且各个点段不重合;将各个资源节点对应的点段中点的范围确定为各个资源节点的存储范围。在本申请的一种具体实现方式中,所述根据所述待存储数据块的标识,确定所述待存储数据块在预设的封闭圆环上的第一映射点,包括:计算所述待存储数据块的标识的哈希值;根据上述计算得到的哈希值,确定所述待存储数据块在预设的封闭圆环上的第一映射点。在本申请的一种具体实现方式中,所述预设的针对存储节点的存储资源状态的节点划分规则,包括:获得各个存储节点中可用存储资源的容量;根据预设的资源节点的总量和所获得的容量,对各个存储节点进行划分,得到各个资源节点对应的资源节点。在本申请的一种具体实现方式中于,所述数据存储方法还包括:接收资源节点增加请求,其中,所述资源节点增加请求中包括:待增加资源节点的标识;根据所述待增加资源节点的标识,确定所述待增加资源节点在所述预设的封闭圆环上的第二映射点;获得映射点分别位于所述第二映射点两侧且映射点与所述第二映射点距离最近的两个邻近资源节点;根据所述封闭圆环上的总点数和资源节点总数,计算所述待增加资源节点存储范围的长度,其中,所述资源节点总数等于当前资源节点数量与所述待增加资源节点数量之和;根据所述邻近资源节点的存储范围以及所述长度,按照预设的多元线性回归算法,获得所述待增加资源节点的存储范围,并调整所述邻近资源节点的存储范围,其中,所述待增加资源节点的存储范围与调整后所述邻近资源节点的存储范围之和等于调整前所述邻近资源节点的存储范围之和;根据所述待增加资源节点的存储范围和调整后所述邻近资源节点的存储范围,从所述邻近资源节点对应的存储节点中迁移数据块至所述待增加资源节点对应的存储节点。在本申请的一种具体实现方式中,所述数据存储方法还包括:接收针对第二资源节点的副本资源节点设置请求;从目标存储节点对应的资源节点中选择资源节点作为所述第二资源节点的副本资源节点,其中,所述目标存储节点为与所述第二资源节点对应的存储节点不同的存储节点。在本申请的一种具体实现方式中,所述目标存储节点为:位于目标物理机以外的其他物理机中的存储节点,其中,所述目标物理机为:所述第二资源节点对应的存储节点所在的物理机。在本申请的一种具体实现方式中,在所述按照各个资源节点的存储范围,获得所述第一映射点对应的第一资源节点之后,还包括:判断所述第一资源节点是否存在副本资源节点;若存在,将所述待存储数据块存储至所述第一资源节点的副本资源节点对应的存储节点。在本申请的一种具体实现方式中,所述数据存储方法还包括:接收针对待删除资源节点的资源节点删除请求;判断是否存在所述待删除资源节点的副本资源节点;若存在,则直接删除所述待删除资源节点,并根据所述待删除资源节点的存储范围,调整映射点位于所述待删除资源节点对应的第三映射点两侧且映射点与所述第三映射点距离最近的两个资源节点的存储范围。为达到上述目的,本申请实施例公开了一种数据迁移方法,所述方法包括:接收资源节点增加请求,其中,所述资源节点增加请求中包括:待增加资源节点的标识;根据所述待增加资源节点的标识,确定所述待增加资源节点在预设的封闭圆环上的第四映射点,其中,所述预设的封闭圆环为由预设数量个点构成的封闭圆环,所述预设的封闭圆环上的一个点与一个数据块的标识或者一个资源节点的标识对应,所述资源节点为根据预设的针对存储节点的存储资源状态的节点划分规则划分得到的子节点;获得映射点分别位于所述第四映射点两侧且映射点与所述第四映射点距离最近的两个邻近资源节点;根据所述封闭圆环上的总点数和资源节点总数,计算所述待增加资源节点存储范围的长度,其中,所述资源节点总数等于当前资源节点数量与所述待增加资源节点数量之和;根据所述邻近资源节点的存储范围以及所述长度,按照预设的多元线性回归算法,获得所述待增加资源节点的存储范围,并调整所述邻近资源节点的存储范围,其中,所述待增加资源节点的存储范围与调整后所述邻近资源节点的存储范围之和等于调整前所述邻近资源节点的存储范围之和;根据所述待增加资源节点的存储范围和调整后所述邻近资源节点的存储范围,从所述邻近资源节点对应的存储节点中迁移数据块至所述待增加资源节点对应的存储节点。在本申请的一种具体实现方式中,所述根据所述待增加资源节点的标识,确定所述待增加资源节点在预设的封闭圆环上的第四映射点,包括:计算所述待增加资源节点的标识的哈希值;根据上述计算得到的哈希值,确定所述待增加资源节点在预设的封闭圆环上的第四映射点。在本申请的一种具体实现方式中,所述预设的针对存储节点的存储资源状态的节点划分规则,包括:获得各个存储节点中可用存储资源的容量;根据预设的资源节点的总量和所获得的容量,对各个存储节点进行划分,得到各个资源节点对应的资源节点。在本申请的一种具体本文档来自技高网...
一种数据存储、数据迁移方法及装置

【技术保护点】
一种数据存储方法,其特征在于,所述方法包括:获得待存储数据块的标识;根据所述待存储数据块的标识,确定所述待存储数据块在预设的封闭圆环上的第一映射点,其中,所述预设的封闭圆环为由预设数量个点构成的封闭圆环,所述预设的封闭圆环上的一个点与一个数据块的标识或者一个资源节点的标识对应,所述资源节点为根据预设的针对存储节点的存储资源状态的节点划分规则划分得到的子节点;按照各个资源节点的存储范围,获得所述第一映射点对应的第一资源节点,其中,所述各个资源节点的存储范围为:各个资源节点对应的存储节点能够存储的数据块在所述预设的封闭圆环上的映射点的范围;将所述待存储数据块存储至所述第一资源节点对应的存储节点。

【技术特征摘要】
1.一种数据存储方法,其特征在于,所述方法包括:获得待存储数据块的标识;根据所述待存储数据块的标识,确定所述待存储数据块在预设的封闭圆环上的第一映射点,其中,所述预设的封闭圆环为由预设数量个点构成的封闭圆环,所述预设的封闭圆环上的一个点与一个数据块的标识或者一个资源节点的标识对应,所述资源节点为根据预设的针对存储节点的存储资源状态的节点划分规则划分得到的子节点;按照各个资源节点的存储范围,获得所述第一映射点对应的第一资源节点,其中,所述各个资源节点的存储范围为:各个资源节点对应的存储节点能够存储的数据块在所述预设的封闭圆环上的映射点的范围;将所述待存储数据块存储至所述第一资源节点对应的存储节点。2.根据权利要求1所述的方法,其特征在于,通过以下方式确定各个资源节点的存储范围:根据各个资源节点的标识,确定各个资源节点在所述预设的封闭圆环上的映射点;根据所确定的各个资源节点的映射点的位置,按照预设的分段规则将所述预设的封闭圆环划分为多个点段,得到每一资源节点对应的点段,其中,划分得到的点段的数量与资源节点的数量相等且各个点段不重合;将各个资源节点对应的点段中点的范围确定为各个资源节点的存储范围。3.根据权利要求1所述的方法,其特征在于,所述根据所述待存储数据块的标识,确定所述待存储数据块在预设的封闭圆环上的第一映射点,包括:计算所述待存储数据块的标识的哈希值;根据上述计算得到的哈希值,确定所述待存储数据块在预设的封闭圆环上的第一映射点。4.根据权利要求1所述的方法,其特征在于,所述预设的针对存储节点的存储资源状态的节点划分规则,包括:获得各个存储节点中可用存储资源的容量;根据预设的资源节点的总量和所获得的容量,对各个存储节点进行划分,得到各个资源节点对应的资源节点。5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:接收资源节点增加请求,其中,所述资源节点增加请求中包括:待增加资源节点的标识;根据所述待增加资源节点的标识,确定所述待增加资源节点在所述预设的封闭圆环上的第二映射点;获得映射点分别位于所述第二映射点两侧且映射点与所述第二映射点距离最近的两个邻近资源节点;根据所述封闭圆环上的总点数和资源节点总数,计算所述待增加资源节点存储范围的长度,其中,所述资源节点总数等于当前资源节点数量与所述待增加资源节点数量之和;根据所述邻近资源节点的存储范围以及所述长度,按照预设的多元线性回归算法,获得所述待增加资源节点的存储范围,并调整所述邻近资源节点的存储范围,其中,所述待增加资源节点的存储范围与调整后所述邻近资源节点的存储范围之和等于调整前所述邻近资源节点的存储范围之和;根据所述待增加资源节点的存储范围和调整后所述邻近资源节点的存储范围,从所述邻近资源节点对应的存储节点中迁移数据块至所述待增加资源节点对应的存储节点。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收针对第二资源节点的副本资源节点设置请求;从目标存储节点对应的资源节点中选择资源节点作为所述第二资源节点的副本资源节点,其中,所述目标存储节点为与所述第二资源节点对应的存储节点不同的存储节点。7.根据权利要求6所述的方法,其特征在于,所述目标存储节点为:位于目标物理机以外的其他物理机中的存储节点,其中,所述目标物理机为:所述第二资源节点对应的存储节点所在的物理机。8.根据权利要求6或7所述的方法,其特征在于,在所述按照各个资源节点的存储范围,获得所述第一映射点对应的第一资源节点之后,还包括:判断所述第一资源节点是否存在副本资源节点;若存在,将所述待存储数据块存储至所述第一资源节点的副本资源节点对应的存储节点。9.根据权利要求6或7所述的方法,其特征在于,所述方法还包括:接收针对待删除资源节点的资源节点删除请求;判断是否存在所述待删除资源节点的副本资源节点;若存在,则直接删除所述待删除资源节点,并根据所述待删除资源节点的存储范围,调整映射点位于所述待删除资源节点对应的第三映射点两侧且映射点与所述第三映射点距离最近的两个资源节点的存储范围。10.一种数据迁移方法,其特征在于,所述方法包括:接收资源节点增加请求,其中,所述资源节点增加请求中包括:待增加资源节点的标识;根据所述待增加资源节点的标识,确定所述待增加资源节点在预设的封闭圆环上的第四映射点,其中,所述预设的封闭圆环为由预设数量个点构成的封闭圆环,所述预设的封闭圆环上的一个点与一个数据块的标识或者一个资源节点的标识对应,所述资源节点为根据预设的针对存储节点的存储资源状态的节点划分规则划分得到的子节点;获得映射点分别位于所述第四映射点两侧且映射点与所述第四映射点距离最近的两个邻近资源节点;根据所述封闭圆环上的总点数和资源节点总数,计算所述待增加资源节点存储范围的长度,其中,所述资源节点总数等于当前资源节点数量与所述待增加资源节点数量之和;根据所述邻近资源节点的存储范围以及所述长度,按照预设的多元线性回归算法,获得所述待增加资源节点的存储范围,并调整所述邻近资源节点的存储范围,其中,所述待增加资源节点的存储范围与调整后所述邻近资源节点的存储范围之和等于调整前所述邻近资源节点的存储范围之和;根据所述待增加资源节点的存储范围和调整后所述邻近资源节点的存储范围,从所述邻近资源节点对应的存储节点中迁移数据块至所述待增加资源节点对应的存储节点。11.根据权利要求10所述的方法,其特征在于,所述根据所述待增加资源节点的标识,确定所述待增加资源节点在预设的封闭圆环上的第四映射点,包括:计算所述待增加资源节点的标识的哈希值;根据上述计算得到的哈希值,确定所述待增加资源节点在预设的封闭圆环上的第四映射点。12.根据权利要求10所述的方法,其特征在于,所述预设的针对存储节点的存储资源状态的节点划分规则,包括:获得各个存储节点中可用存储资源的容量;根据预设的资源节点的总量和所获得的容量,对各个存储节点进行划分,得到各个资源节点对应的资源节点。13.根据权利要求10-12中任一项所述的方法,其特征在于,所述方法还包括:接收针对第三资源节点的副本资源节点设置请求;从目标存储节点对应的资源节点中选择资源节点作为所述第三资源节点的副本资源节点,其中,所述目标存储节点为与所述第三资源节点对应的存储节点不同的存储节点。14.根据权利要求13所述的方法,其特征在于,所述目标存储节点为:位于目标物理机以外的其他物理机中的存储节点,其中,所述目标物理机为:所述第三资源节点对应的存储节点所在的物理机。15.根据权利要求10-12任一项所述的方法,其特征在于,所述方法还包括:接收针对待删除资源节点的资源节点删除请求;判断是否存在所述待删除资源节点的副本资源节点;若存在,则直接删除所述待删除资源节点,并根据所述待删除资源节点的存储范围,调整映射点位于所述待删除资源节点对应的第四映射点两侧且映射点与所述第四映射点距离最近的两个资源节点的存储范围。16.一种数据存储装置,其特征在于,所述装置包括:标识获得模块,用于获得待存储数据块的标识;第一映射点确定模块,用于根据所述待存储数据块的标识,确定所述待存储数据块在预设的封闭圆环上的第一映射点,其中,所述预设的封闭圆环为由预设数量个点构成的封闭圆环,所述预设的封闭圆环上的一个点与一个数据块的标识或者一个资源节点的标识对应,所述资源节点为根据预设的针对存储节点的存储资源状态的节点划分规则划分得到的子节点;资源节点获得模块,用于按照各个资源节点的存储范...

【专利技术属性】
技术研发人员:刘志辉管国辰林武康徐鑫张仪
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1