CN114879907B - 一种数据分布确定方法、装置、设备及存储介质 - Google Patents
一种数据分布确定方法、装置、设备及存储介质Info
- Publication number
- CN114879907B CN114879907B CN202210461346.6A CN202210461346A CN114879907B CN 114879907 B CN114879907 B CN 114879907B CN 202210461346 A CN202210461346 A CN 202210461346A CN 114879907 B CN114879907 B CN 114879907B
- Authority
- CN
- China
- Prior art keywords
- node
- target
- disk
- hash
- layer
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0662—Virtualisation aspects
- G06F3/0664—Virtualisation aspects at device level, e.g. emulation of a storage device or system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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]
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据分布确定方法、装置、设备及存储介质,涉及超融合技术领域,包括:获取针对目标数据块的数据访问请求,并基于目标数据块对应的数据块标识号确定相应的目标哈希值;基于目标哈希值确定目标数据块在上层节点哈希环中的目标虚拟节点,并基于目标哈希值确定目标数据块在目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;上层节点哈希环和下层磁盘哈希环分别为预先构建的与超融合集群中的上层节点对应的哈希环以及与上层节点的下层磁盘对应的哈希环;根据目标虚拟节点和目标磁盘虚拟节点确定数据块的分布位置。本申请基于两层哈希环的架构,实现数据分布管理,有效解决超融合集群存储设备变化导致的数据分布不均衡问题。
Description
技术领域
本发明涉及超融合技术领域,特别涉及一种数据分布确定方法、装置、设备及存储介质。
背景技术
当前,随着越来越多的大型互联网公司的出现,越来越多的用户选择超融合基础设施。其中,超融合技术不单包含了服务器虚拟化功能,最主要是它的软件定义存储功能,即为虚拟机提供持久化共享存储服务,能给用户带来巨大的价值,然而软件定义存储功能作为超融合技术的核心和基础部分,尽管其相较于传统存储架构运维简单,成本更低,但是在使用软件定位存储功能的过程中,还是会导致存储承受较大的压力,所以软件定义存储功能对存储的读写性能要求也比较高,伴随着高性能存储的是高额成本,且随着用户业务数据量的逐渐增多,硬件磁盘的损坏更换等问题出现时,导致超融合存储数据分布处理成为一个难题。
发明内容
有鉴于此,本发明的目的在于提供一种数据分布确定方法、装置、设备及存储介质,能够均衡分布数据,降低存储的压力,减少超融合存储的部署及运维成本,提供高性能数据读写,并能够有效解决超融合集群存储设备变化带来的数据分布不均衡问题。其具体方案如下:
第一方面,本申请公开了一种数据分布确定方法,包括:
获取针对目标数据块的数据访问请求,并基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;
基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,并基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;
根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。
可选的,所述基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点之前,还包括:
获取与超融合集群中的上层节点对应的节点信息以及与各所述上层节点的下层磁盘对应的磁盘信息;
基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环,并基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。
可选的,所述基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环,包括:
基于所述超融合集群的所述上层节点对应的IP地址和所述超融合集群对应的集群磁盘容量生成与所述超融合集群中的所述上层节点对应的上层节点哈希环。
可选的,所述基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环,包括:
基于所述上层节点中的磁盘标识号和所述上层节点对应的节点磁盘容量生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。
可选的,所述基于目标数据块对应的数据块标识号确定相应的目标哈希值,包括:
利用一致性哈希算法计算目标数据块对应的数据块标识号的目标哈希值。
可选的,所述基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,包括:
沿着上层节点哈希环的顺时针方向,将所述目标哈希值与所述上层节点哈希环中的虚拟节点对应的节点哈希值进行比较,并将所述上层节点哈希环中的第一个大于所述目标哈希值的节点哈希值对应的虚拟节点确定为所述目标数据块对应的目标虚拟节点。
可选的,所述基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点,包括:
沿着所述目标虚拟节点对应的下层磁盘哈希环的顺时针方向,将所述目标哈希值与所述下层磁盘哈希环中的磁盘虚拟节点对应的磁盘哈希值进行比较,并将所述下层磁盘哈希环中的第一个大于所述目标哈希值的磁盘哈希值对应的磁盘虚拟节点确定为所述目标数据块对应的目标磁盘虚拟节点。
第二方面,本申请公开了一种数据分布确定装置,包括:
数据请求获取模块,用于获取针对目标数据块的数据访问请求;
哈希值确定模块,用于基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;
上层节点确定模块,用于基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点;
下层磁盘确定模块,用于基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;
分布位置确定模块,用于根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的数据分布确定方法的步骤。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的数据分布确定方法的步骤。
可见,本申请提供了一种数据分布确定方法,包括:获取针对目标数据块的数据访问请求,并基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,并基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。由此可见,本申请基于两层哈希环的架构,根据上层节点哈希环确定出目标数据块分布于超融合集群中的哪个节点,进而根据下层磁盘哈希环确定出数据分布于节点中哪块磁盘,实现数据分布管理,有效解决超融合集群存储设备变化带来的数据分布不均衡问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种数据分布确定方法流程图;
图2为本申请公开的一种数据划分示意图;
图3为本申请公开的一种基于两层DHT的超融合存储的数据分布示意图;
图4为本申请公开的一种数据分布确定装置结构示意图;
图5为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,现有技术中,软件定义存储功能作为超融合技术的核心和基础部分,尽管其相较于传统存储架构运维简单,成本更低,但是在使用软件定位存储功能的过程中,还是会导致存储承受较大的压力,所以软件定义存储功能对存储的读写性能要求也比较高,伴随着高性能存储的是高额成本,且随着用户业务数据量的逐渐增多,硬件磁盘的损坏更换等问题出现时,导致超融合存储数据分布处理成为一个难题。为此,本申请提供了一种数据分布确定方案,能够均衡分布数据,有效解决超融合集群存储设备变化带来的数据分布不均衡问题,降低存储的压力,减少超融合存储的部署及运维成本,提供高性能数据读写。
本发明实施例公开了一种数据分布确定方法,参见图1所示,该方法包括:
步骤S11:获取针对目标数据块的数据访问请求,并基于所述目标数据块对应的数据块标识号确定相应的目标哈希值。
需要指出的是,将Lun(即上层存储数据)切分成相同大小的数据块,例如,每个数据块为4M大小,即Lun大小最低为4M,且容量为4M的倍数,每个数据块作为一个存储对象Object均有一个ID(即数据块标识号)对应且该ID是唯一的。如图2所示,上层存储数据Lun被划分成大小相等的数据块,得到数据块0、数据块1、数据块2、数据块3,其中上述数据块0、上述数据块1、上述数据块3对应的ID是唯一的。
本实施例中,获取针对目标数据块的数据访问请求,即接收到针对目标数据块的数据读写请求时,基于上述目标数据块对应的数据块标识号确定相应的目标哈希值,具体的,利用一致性哈希算法计算目标数据块对应的数据块标识号的目标哈希值。可以理解的是,根据作为目标存储对象的目标数据块对应的ID计算Hash值(即哈希值),由于上述ID是唯一的,所以计算出的Hash也是唯一的。
步骤S12:基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,并基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环。
需要指出的是,上述预先构建的与超融合集群中的上层节点对应的上层节点哈希环和上述预先构建的与所述上层节点的下层磁盘对应的下层磁盘哈希环,可以包括:获取与超融合集群中的上层节点对应的节点信息以及与各所述上层节点的下层磁盘对应的磁盘信息;基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环,并基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环,其中,构建上述上层节点哈希环和上述下层磁盘哈希环的具体实施方式可以包括:基于所述超融合集群的所述上层节点对应的IP(Internet Protocol,网际互连协议)地址和所述超融合集群对应的集群磁盘容量生成与所述超融合集群中的所述上层节点对应的上层节点哈希环,基于所述上层节点中的磁盘标识号和所述上层节点对应的节点磁盘容量生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。可以理解的是,利用集群管理服务,查询并获取超融合集群对应的上层节点的节点信息及各上层节点的下层磁盘的磁盘信息,其中,上述节点信息可以包括节点的IP地址等,上述磁盘信息可以包括各上层节点对应的磁盘容量、各上层节点对应的磁盘出厂唯一标识,即磁盘标识号等,然后将超融合集群中的上层节点对应的IP地址结合超融合集群对应的集群磁盘容量作为生成上层节点哈希环对应的哈希算法的输入参数,从而生成与所述IP地址对应的多个哈希值,其中,上述集群磁盘容量为所有的上层节点磁盘容量之和,根据上述集群磁盘容量大小确定哈希值个数,即根据上述集群磁盘容量大小确定上层节点哈希环的虚拟节点的个数,从而根据所有的上层节点对应的多个上层节点哈希值得到包含多个虚拟节点的上层节点哈希环。将上层节点中的磁盘对应的SCSI(Small Computer System Interface,小型计算机系统接口)ID结合上述上层节点对应的节点磁盘容量作为生成上层磁盘哈希环对应的哈希算法的输入参数,从而生成与所述SCSI ID对应的多个哈希值,其中,SCSI ID为磁盘出厂唯一标识,并且上述节点磁盘容量为上层节点的中所有磁盘的容量之和,根据节点磁盘容量大小确定哈希值个数,即节点磁盘容量大小确定下层磁盘哈希环中的虚拟节点个数,从而根据各所述上层节点对应的多个下层磁盘哈希值得到各所述上层节点对应的包含多个虚拟节点的下层磁盘哈希环。其中,生成上层节点哈希环和下层磁盘哈希环的哈希算法可以包括但不限于DHT(Distributed Hash Table,分布式哈希表),即一致性哈希算法等,并且根据目标数据块对应的数据块标识号计算相应的目标哈希值时,也采用与生成哈希环相同的一致性哈希算法。本实施例基于一致性哈希算法,使得元数据不需要保存数据对象和副本的位置,提供高性能的数据读写,同时可以有效解决在运维过程中,如果出现需要添加、移除节点或磁盘等集群存储设备变化导致数据分布不均衡的问题。
本实施例中,获取到针对目标数据块的数据访问请求,并计算出所述目标数据块的数据块标识号对应的目标哈希值之后,首先,确定该目标数据块的在上层节点哈希环中的目标虚拟节点,然后确定该目标数据块的在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点,也就是说,确定该目标数据块分布于上层节点哈希环中的哪个虚拟节点上,进而再确定该目标数据块分布于该目标虚拟节点对应的下层磁盘哈希环中的哪个虚拟节点上。具体的,沿着上层节点哈希环的顺时针方向,将所述目标哈希值与所述上层节点哈希环中的虚拟节点对应的节点哈希值进行比较,并将所述上层节点哈希环中的第一个大于所述目标哈希值的节点哈希值对应的虚拟节点确定为所述目标数据块对应的目标虚拟节点,在确定目标数据块分布的目标磁盘虚拟节点时,也采用同样的方式,即沿着所述目标虚拟节点对应的下层磁盘哈希环的顺时针方向,将所述目标哈希值与所述下层磁盘哈希环中的磁盘虚拟节点对应的磁盘哈希值进行比较,并将所述下层磁盘哈希环中的第一个大于所述目标哈希值的磁盘哈希值对应的磁盘虚拟节点确定为所述目标数据块对应的目标磁盘虚拟节点。
如图3所示,当收到针对数据块的数据读IO请求时,根据数据块Object的id计算Hash值,将该Hash与含有三个真实节点的上层节点DHT(即上层节点哈希环)上的虚拟节点对应的哈希值进行比较,其中上述真实点分别为节点A、节点B以及节点C,然后取上层节点DHT顺时针方向中的第一个大于该Hash值对应的虚拟节点确定为目标虚拟节点,进而再将该Hash值与目标虚拟节点对应的下层磁盘DHT(即下层磁盘哈希环)上的虚拟节点对应哈希值进行比较,取与目标虚拟节点对应的下层磁盘DHT顺时针方向中的第一个大于该Hash值对应的虚拟节点确定为目标磁盘虚拟节点。
步骤S13:根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。
本实施例中,确定目标数据块分布在上层节点哈希环中的目标虚拟节点和分布在与目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点之后,上述目标虚拟节点对应的节点即为目标数据块分布于集群的节点,上述目标磁盘虚拟机节点对应的磁盘即为目标数据块分布于节点的数据盘。
可见,本申请实施例通过获取针对目标数据块的数据访问请求,并基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,并基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。由此可见,本申请基于两层哈希环的架构,根据上层节点哈希环确定出目标数据块分布于超融合集群中的哪个节点,进而根据下层磁盘哈希环确定出数据分布于节点中哪块磁盘,实现数据分布管理,有效解决超融合集群存储设备变化带来的数据分布不均衡问题,即当存储设备或集群节点变化时,更新哈希环,自动均衡数据分布。
相应的,本申请实施例还公开了一种数据分布确定装置,参见图4所示,该装置包括:
数据请求获取模块11,用于获取针对目标数据块的数据访问请求;
哈希值确定模块12,用于基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;
上层节点确定模块13,用于基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点;
下层磁盘确定模块14,用于基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;
分布位置确定模块15,用于根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。
由上可见,本实施例中通过获取针对目标数据块的数据访问请求,并基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,并基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置。由此可见,本申请基于两层哈希环的架构,根据上层节点哈希环确定出目标数据块分布于超融合集群中的哪个节点,进而根据下层磁盘哈希环确定出数据分布于节点中哪块磁盘,实现数据分布管理,有效解决超融合集群存储设备变化带来的数据分布不均衡问题,即当存储设备或集群节点变化时,更新哈希环,自动均衡数据分布。
在一些具体的实施例中,所述基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点之前,具体可以包括:
信息获取模块,用于获取与超融合集群中的上层节点对应的节点信息以及与各所述上层节点的下层磁盘对应的磁盘信息;
上层哈希环生成模块,用于基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环;
下层哈希环生成模块,用于基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。
在一些具体的实施例中,所述上层哈希环生成模块,具体可以包括:
上层哈希环生成单元,用于基于所述超融合集群的所述上层节点对应的IP地址和所述超融合集群对应的集群磁盘容量生成与所述超融合集群中的所述上层节点对应的上层节点哈希环。
在一些具体的实施例中,所述下层哈希环生成模块,具体可以包括:
下层哈希环生成单元,用于基于所述上层节点中的磁盘标识号和所述上层节点对应的节点磁盘容量生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。
在一些具体的实施例中,所述哈希值确定模块12,具体可以包括:
哈希值确定单元,用于利用一致性哈希算法计算目标数据块对应的数据块标识号的目标哈希值。
在一些具体的实施例中,所述上层节点确定模块13,具体可以包括:
沿着上层节点哈希环的顺时针方向,将所述目标哈希值与所述上层节点哈希环中的虚拟节点对应的节点哈希值进行比较,并将所述上层节点哈希环中的第一个大于所述目标哈希值的节点哈希值对应的虚拟节点确定为所述目标数据块对应的目标虚拟节点。
在一些具体的实施例中,所述下层磁盘确定模块14,具体可以包括:
沿着所述目标虚拟节点对应的下层磁盘哈希环的顺时针方向,将所述目标哈希值与所述下层磁盘哈希环中的磁盘虚拟节点对应的磁盘哈希值进行比较,并将所述下层磁盘哈希环中的第一个大于所述目标哈希值的磁盘哈希值对应的磁盘虚拟节点确定为所述目标数据块对应的目标磁盘虚拟节点。
进一步的,本申请实施例还提供了一种电子设备。图5是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的数据分布确定方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的数据分布确定方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的数据分布确定方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种数据分布确定方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种数据分布确定方法,其特征在于,包括:
获取针对目标数据块的数据访问请求,并基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;
基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,并基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;
根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置;
所述基于目标数据块对应的数据块标识号确定相应的目标哈希值,包括:
利用一致性哈希算法计算目标数据块对应的数据块标识号的目标哈希值;
所述基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点之前,还包括:
获取与超融合集群中的上层节点对应的节点信息以及与各所述上层节点的下层磁盘对应的磁盘信息;
基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环,并基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环;
所述基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环,包括:
基于所述超融合集群的所述上层节点对应的IP地址和所述超融合集群对应的集群磁盘容量生成与所述超融合集群中的所述上层节点对应的上层节点哈希环;
所述基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环,包括:
基于所述上层节点中的磁盘标识号和所述上层节点对应的节点磁盘容量生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。
2.根据权利要求1所述的数据分布确定方法,其特征在于,所述基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点,包括:
沿着上层节点哈希环的顺时针方向,将所述目标哈希值与所述上层节点哈希环中的虚拟节点对应的节点哈希值进行比较,并将所述上层节点哈希环中的第一个大于所述目标哈希值的节点哈希值对应的虚拟节点确定为所述目标数据块对应的目标虚拟节点。
3.根据权利要求1所述的数据分布确定方法,其特征在于,所述基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点,包括:
沿着所述目标虚拟节点对应的下层磁盘哈希环的顺时针方向,将所述目标哈希值与所述下层磁盘哈希环中的磁盘虚拟节点对应的磁盘哈希值进行比较,并将所述下层磁盘哈希环中的第一个大于所述目标哈希值的磁盘哈希值对应的磁盘虚拟节点确定为所述目标数据块对应的目标磁盘虚拟节点。
4.一种数据分布确定装置,其特征在于,包括:
数据请求获取模块,用于获取针对目标数据块的数据访问请求;
哈希值确定模块,用于基于所述目标数据块对应的数据块标识号确定相应的目标哈希值;
上层节点确定模块,用于基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点;
下层磁盘确定模块,用于基于所述目标哈希值确定所述目标数据块在所述目标虚拟节点对应的下层磁盘哈希环中的目标磁盘虚拟节点;所述上层节点哈希环为预先构建的与超融合集群中的上层节点对应的哈希环,所述下层磁盘哈希环为预先构建的与所述上层节点的下层磁盘对应的哈希环;
分布位置确定模块,用于根据所述目标虚拟节点和所述目标磁盘虚拟节点确定所述目标数据块的目标分布位置;
哈希值确定模块,包括:
哈希值确定单元,用于利用一致性哈希算法计算目标数据块对应的数据块标识号的目标哈希值;
所述基于所述目标哈希值确定所述目标数据块在上层节点哈希环中的目标虚拟节点之前,包括:
信息获取模块,用于获取与超融合集群中的上层节点对应的节点信息以及与各所述上层节点的下层磁盘对应的磁盘信息;
上层哈希环生成模块,用于基于所述节点信息和所述磁盘信息生成与所述超融合集群中的所述上层节点对应的上层节点哈希环;
下层哈希环生成模块,用于基于所述磁盘信息生成与所述上层节点的下层磁盘对应的下层磁盘哈希环;
上层哈希环生成模块,包括:
上层哈希环生成单元,用于基于所述超融合集群的所述上层节点对应的IP地址和所述超融合集群对应的集群磁盘容量生成与所述超融合集群中的所述上层节点对应的上层节点哈希环;
下层哈希环生成模块,包括:
下层哈希环生成单元,用于基于所述上层节点中的磁盘标识号和所述上层节点对应的节点磁盘容量生成与所述上层节点的下层磁盘对应的下层磁盘哈希环。
5.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至3任一项所述的数据分布确定方法的步骤。
6.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述的数据分布确定方法的步骤。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210461346.6A CN114879907B (zh) | 2022-04-28 | 2022-04-28 | 一种数据分布确定方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210461346.6A CN114879907B (zh) | 2022-04-28 | 2022-04-28 | 一种数据分布确定方法、装置、设备及存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114879907A CN114879907A (zh) | 2022-08-09 |
| CN114879907B true CN114879907B (zh) | 2025-09-26 |
Family
ID=82671459
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202210461346.6A Active CN114879907B (zh) | 2022-04-28 | 2022-04-28 | 一种数据分布确定方法、装置、设备及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN114879907B (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115878046B (zh) * | 2023-01-09 | 2023-05-12 | 苏州浪潮智能科技有限公司 | 数据处理方法、系统、装置、存储介质及电子设备 |
| CN118409717B (zh) * | 2024-07-03 | 2024-10-11 | 济南浪潮数据技术有限公司 | 一种数据分布方法、系统、计算机程序产品、设备及介质 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102843403A (zh) * | 2011-06-23 | 2012-12-26 | 盛大计算机(上海)有限公司 | 基于分布式文件系统的文件处理方法、系统及客户端 |
| CN110096227A (zh) * | 2019-03-28 | 2019-08-06 | 北京奇艺世纪科技有限公司 | 数据存储方法、数据处理方法、装置、电子设备及计算机可读介质 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110336891A (zh) * | 2019-07-24 | 2019-10-15 | 中南民族大学 | 缓存数据分布方法、设备、存储介质及装置 |
| CN110688523A (zh) * | 2019-09-29 | 2020-01-14 | 深圳市网心科技有限公司 | 视频服务提供方法、装置、电子设备及存储介质 |
| CN111756828B (zh) * | 2020-06-19 | 2023-07-14 | 广东浪潮大数据研究有限公司 | 一种数据存储方法、装置及设备 |
| CN112132683A (zh) * | 2020-09-18 | 2020-12-25 | 泰康保险集团股份有限公司 | 指令下发的方法、装置、电子设备和存储介质 |
| CN112230861B (zh) * | 2020-10-26 | 2022-09-13 | 金钱猫科技股份有限公司 | 一种基于一致性哈希算法的数据存储方法及终端 |
| CN112948120A (zh) * | 2021-03-18 | 2021-06-11 | 广东好太太智能家居有限公司 | 负载均衡方法、系统、装置和存储介质 |
| CN113867627B (zh) * | 2021-08-29 | 2023-08-22 | 苏州浪潮智能科技有限公司 | 一种存储系统性能优化方法及系统 |
| CN114138475B (zh) * | 2021-11-19 | 2024-09-06 | 郑州云海信息技术有限公司 | 一种数据传输负载均衡方法、装置、设备及存储介质 |
| CN114185678A (zh) * | 2021-12-14 | 2022-03-15 | 建信金融科技有限责任公司 | 数据存储方法、装置、设备及存储介质 |
-
2022
- 2022-04-28 CN CN202210461346.6A patent/CN114879907B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102843403A (zh) * | 2011-06-23 | 2012-12-26 | 盛大计算机(上海)有限公司 | 基于分布式文件系统的文件处理方法、系统及客户端 |
| CN110096227A (zh) * | 2019-03-28 | 2019-08-06 | 北京奇艺世纪科技有限公司 | 数据存储方法、数据处理方法、装置、电子设备及计算机可读介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114879907A (zh) | 2022-08-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10013317B1 (en) | Restoring a volume in a storage system | |
| US9052962B2 (en) | Distributed storage of data in a cloud storage system | |
| US10157214B1 (en) | Process for data migration between document stores | |
| CN103002027B (zh) | 基于键值对系统实现树形目录结构的数据存储系统及方法 | |
| US20210216210A1 (en) | Optimized migration of data between file systems of a storage array | |
| JP2015512551A (ja) | ネットワーク・インフラストラクチャにおけるデータ記憶及び編成を容易にするコンシステント・リング名前空間 | |
| US11151081B1 (en) | Data tiering service with cold tier indexing | |
| CN105933376A (zh) | 一种数据操作方法,服务器及存储系统 | |
| US12197521B2 (en) | Spatial search using key-value store | |
| CN114879907B (zh) | 一种数据分布确定方法、装置、设备及存储介质 | |
| CN106934048A (zh) | 数据在线迁移方法、代理节点 | |
| CN104020961A (zh) | 分布式数据存储方法、装置及系统 | |
| CN107087031A (zh) | 一种存储资源负载均衡方法及装置 | |
| CN106155566A (zh) | 用于存储数据的方法、装置及系统 | |
| CN111274004B (zh) | 进程实例管理方法、装置及计算机存储介质 | |
| WO2023078760A1 (en) | Database synchronization employing parallel poll threads | |
| CN116848517A (zh) | 使用基于数据指纹的数据地址的高速缓存编索引 | |
| CN109408467A (zh) | 一种实现数据存储的方法及装置 | |
| CN111770158B (zh) | 云平台恢复方法、装置、电子设备及计算机可读存储介质 | |
| CN111475279B (zh) | 用于备份的智能数据负载平衡的系统和方法 | |
| CN118660032A (zh) | 一种多维标识命名空间及其存储方法 | |
| CN111428114A (zh) | Elasticsearch搜索引擎的索引创建方法及装置 | |
| WO2014132148A1 (en) | Identifying and accessing reference data in an in-memory data grid | |
| JP2014174870A (ja) | 仮想ファイルアクセスシステム、仮想ファイルアクセス方法、及び、仮想ファイルアクセスプログラム | |
| CN113961408A (zh) | 一种优化Ceph存储性能的测试方法、设备及介质 |
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 |