用于数据存储的方法、设备和计算机程序产品技术

技术编号:38392254 阅读:13 留言:0更新日期:2023-08-05 17:45
本公开的实施例涉及用于数据存储的方法、设备和计算机程序产品。该方法包括:基于分布式存储系统中的一组节点各自的属性信息,确定一组节点各自的哈希值。该方法还包括:基于一组节点各自的地理位置信息和哈希值,确定一组节点各自的节点标识符。节点标识符用于指示节点在分布式存储系统中的逻辑位置。该方法还包括:响应于一组节点中的第一节点针对第一数据的处理请求,基于一组节点各自的节点标识符,确定一组节点中的目标节点。目标节点用于处理针对第一数据的处理请求。本公开的实施例实现了分布式存储系统中的各个节点基于地理位置的分布。以这样,能够实现区域内数据处理的低延迟和高效率。延迟和高效率。延迟和高效率。

【技术实现步骤摘要】
用于数据存储的方法、设备和计算机程序产品


[0001]本公开的实施例总体涉及计算机领域,具体涉及用于数据存储的方法、设备和计算机程序产品。

技术介绍

[0002]当前,越来越多的云、边缘节点和大量客户端以节点形式参与到5G网络和边缘存储及计算。各种类型的节点被连接在一起形成了分布式存储系统(也称为分布式存储网络),用于向用户提供高吞吐量和高可用性的数据。
[0003]目前已经提出了按照去中心化的方式组织的基于边缘存储的分布式存储系统。随着其中的参与节点越来越多,关于存储数据的查找机制(例如分布式哈希(hash)表)由于需要遍历更长的搜索路径或经过更多跳才能找到与它们的元数据,导致分布式存储系统的性能下降。因此,期望设计出更优化的存储系统架构以及存储数据的查找机制来提高分布式存储系统的性能。

技术实现思路

[0004]本公开的实施例提供了用于数据存储的方法、设备和计算机程序产品。
[0005]在本公开的第一方面,提供了一种用于数据存储的方法。该方法包括:基于分布式存储系统中的一组节点各自的属性信息,确定一组节点各自的哈希值。该方法还包括:基于一组节点各自的地理位置信息和哈希值,确定一组节点各自的节点标识符。节点标识符用于指示节点在分布式存储系统中的逻辑位置。该方法还包括:响应于一组节点中的第一节点针对第一数据的处理请求,基于一组节点各自的节点标识符,确定一组节点中的目标节点。目标节点用于处理针对第一数据的处理请求。
[0006]在本公开的第二方面,提供了一种电子设备。该电子设备包括至少一个处理单元和至少一个存储器。至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令。该指令当由至少一个处理单元执行时使得电子设备执行动作,该动作包括:基于分布式存储系统中的一组节点各自的属性信息,确定一组节点各自的哈希值;基于一组节点各自的地理位置信息和哈希值,确定一组节点各自的节点标识符,节点标识符用于指示节点在分布式存储系统中的逻辑位置;响应于一组节点中的第一节点针对第一数据的处理请求,基于一组节点各自的节点标识符,确定一组节点中的目标节点,目标节点用于处理针对第一数据的处理请求。。
[0007]在本公开的第三方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机存储介质中并且包括机器可执行指令。该机器可执行指令在由设备执行时使该设备执行根据本公开的第一方面所描述的方法的任意步骤。
[0008]提供
技术实现思路
部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。
技术实现思路
部分无意标识本公开的关键特征或必要特征,也无意限制本公开的范围。
附图说明
[0009]通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
[0010]图1示出了根据本公开的一些实施例能够在其中实现的示例分布式存储系统的示意性框图;
[0011]图2示出了根据本公开的一些实施例的用于数据存储的示例方法的流程图;
[0012]图3示出了根据本公开的一些实施例的基于哈希环的分布式存储架构的示意图;
[0013]图4示出了根据本公开的一些实施例的基于路由表的数据查找架构的示意图;
[0014]图5示出了根据本公开的一些实施例的基于哈希环对元数据进行存储的示意图;以及
[0015]图6示出了可以用来实施本公开内容的实施例的示例设备的示意性框图。
[0016]在各个附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
[0017]下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0018]在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
[0019]如上所述,基于边缘存储的分布式存储系统中的节点通常是按照去中心化的方式来组织的。当客户端请求访问应用数据时,首先需要在分布式存储系统的分布式哈希表中找到应用数据的元数据以定位数据。然而,查询元数据的请求将在去中心化的全局节点中被转发多次才能获取指示应用数据的存储位置的元数据。
[0020]专利技术人注意到,考虑到设备移动性和数据移动性,应用数据通常在相同的区域内的节点之间被请求或者共享,以保证服务的连续性。特别地,在诸如智能制造和自动驾驶等场景中,数据尤其需要在特定区域内更高效地传输,而不是在全局网络中被跨区域请求或共享。
[0021]然而,在常规的去中心化方案中,没有考虑到各个节点的地理位置间的关联。这种常规的机制使得全局视图中的各个去中心化节点被平等地对待。例如,在地理位置(也称为物理上)相邻地节点在逻辑上可能彼此远离。反之,在地理位置上相距很远的节点可能在逻辑上相邻。因此,由于各个节点无法获知其物理上相邻的节点的存在,因此每个区域内数据消耗的请求会受到目标节点寻址效率低下的影响。这进而导致了边缘节点(例如,边缘服务器)之间的高延迟和低效率的数据共享。
[0022]此外,在常规的去中心化方案中,数据查询也存在效率低下的问题。在常规方案
中,某个源节点产生的数据的元数据将会被广播到去中心化的机器,并且被存储到逻辑上相邻的目标节点中。然而,这个目标节点在物理上可能远离产生该数据的源节点,甚至远离当前节点所在的区域。在这种情况下,由于元数据被存储在远离源节点所在区域的目标节点中,对数据或数据块的查询通常需要经过若干跳(hop)。在每跳中,都可能会询问物理上相距较远并且响应延迟高的节点是否持有该数据。因此,这使得数据查询需要花费较长的时间。
[0023]有鉴于此,本公开的实施例提出了一种用于数据存储的方法,以解决上述问题和/或其他潜在问题中的一个或多个。在该方案中,基于各个节点的地理位置信息和各个节点的哈希值两者来共同确定节点的节点标识符。基于各个节点的节点标识符来确定该节点在分布式存储系统中的逻辑位置,即在哈希空间中的位置。此外,在本方案中,响应于数据处理请求,基于各个节点的节点标识符来确定目标节点。
[0024]本方案在节点的逻辑空间定位方面以及针对数据处理请求确定目标节点方面,均考虑到了各个节点的地理位置信息。这种具有地理感知的边缘节点分布方案能够使得分布式存储系统实现更高效的数据共享和数据查询。特别地,能够确保在相同区域内的数据请求或者数据查询可以实现更低的延迟和更高的效率本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于数据存储的方法,包括:基于分布式存储系统中的一组节点各自的属性信息,确定所述一组节点各自的哈希值;基于所述一组节点各自的地理位置信息和所述哈希值,确定所述一组节点各自的节点标识符,所述节点标识符用于指示节点在所述分布式存储系统中的逻辑位置;以及响应于所述一组节点中的第一节点针对第一数据的处理请求,基于所述一组节点各自的节点标识符,确定所述一组节点中的目标节点,所述目标节点用于处理针对所述第一数据的所述处理请求。2.根据权利要求1所述的方法,其中确定所述一组节点各自的所述节点标识符包括:基于所述一组节点各自的地理位置信息确定所述一组节点各自的位置前缀,所述位置前缀具有预定的位数;以及将所述一组节点各自的所述位置前缀作为前缀添加到所述一组节点各自的所述哈希值,以获得所述一组节点各自的节点标识符。3.根据权利要求2所述的方法,其中确定所述一组节点各自的位置前缀包括:将所述一组节点中位于第一地理区域中的第一节点的位置前缀确定为第一前缀;以及将所述一组节点中位于不同于所述第一地理区域的第二地理区域中的第二节点的位置前缀确定为不同于所述第一前缀的第二前缀。4.根据权利要求1所述的方法,其中针对第一数据的处理请求包括:所述第一节点针对所述第一数据的读请求。5.根据权利要求4所述的方法,其中确定所述一组节点中的目标节点包括:基于所述一组节点各自的节点标识符,将与所述第一节点的逻辑位置相距不超过阈值距离的至少一个节点确定为候选节点集;从所述候选节点集中查找存储所述第一数据的所述目标节点;以及由所述目标节点将所述第一数据提供给所述第一节点。6.根据权利要求5所述的方法,其中确定候选节点集包括:对所述一组节点中的第二节点的第二节点标识符与所述第一节点的第一节点标识符执行异或运算以确定所述第一节点与所述第二节点之间的逻辑距离;以及如果所述逻辑距离未超过所述阈值距离,将所述第二节点添加到所述候选节点集。7.根据权利要求1所述的方法,其中针对第一数据的处理请求包括:所述第一节点请求将所述第一节点处生成的所述第一数据的元数据进行存储。8.根据权利要求7所述的方法,其中确定所述一组节点中的目标节点包括:基于所述第一节点的第一节点标识符和所述第一数据的哈希值,确定所述元数据的数据标识符;以及基于所述一组节点各自的节点标识符与所述数据标识符的比较,确定所述一组节点中的所述目标节点,所述目标节点用于存储所述元数据。9.一种电子设备,包括:至少一个处理器;以及存储有计算机程序指令的至少一个存储器,所述至少一个存储器和所述计算机程序指令被配置为,与所述至少一个处理器一起,使得所述电子设备执行动作,所述动作包括:
基于分布式存储系...

【专利技术属性】
技术研发人员:陈思林蓁蓁侯安州
申请(专利权)人:戴尔产品有限公司
类型:发明
国别省市:

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

1