CN110677455A - 基于分布式哈希的动态均衡账户映射方法 - Google Patents

基于分布式哈希的动态均衡账户映射方法 Download PDF

Info

Publication number
CN110677455A
CN110677455A CN201910766864.7A CN201910766864A CN110677455A CN 110677455 A CN110677455 A CN 110677455A CN 201910766864 A CN201910766864 A CN 201910766864A CN 110677455 A CN110677455 A CN 110677455A
Authority
CN
China
Prior art keywords
account
super
mapping
space
computation
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.)
Granted
Application number
CN201910766864.7A
Other languages
English (en)
Other versions
CN110677455B (zh
Inventor
肖利民
刘丙骑
秦广军
霍志胜
韦冰
宋尧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Beijing University of Aeronautics and Astronautics
Original Assignee
Beijing University of Aeronautics and Astronautics
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Aeronautics and Astronautics filed Critical Beijing University of Aeronautics and Astronautics
Priority to CN201910766864.7A priority Critical patent/CN110677455B/zh
Publication of CN110677455A publication Critical patent/CN110677455A/zh
Application granted granted Critical
Publication of CN110677455B publication Critical patent/CN110677455B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1053Group management mechanisms  with pre-configuration of logical or physical connections with a determined number of other peers
    • H04L67/1057Group management mechanisms  with pre-configuration of logical or physical connections with a determined number of other peers involving pre-assessment of levels of reputation of peers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1021Server selection for load balancing based on client or server locations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出一种基于分布式哈希的动态均衡账户映射方法,针对跨域条件下账户间相互映射问题,研究动态且均衡的账户映射模型,实现广域环境中动态均衡的普适账户映射,保障用户对资源的正常访问。首先收集地理位置、网络时延、空间余量和账户余量四个均衡性影响因素的信息,并对收集的数据进行归一化处理,避免取值差异大小影响,其次构建优序对比表,为每一个因素设置权重,并根据权重与各因素取值计算各超算节点的最终评价分数,按照评价分数比将超算节点映射到哈希空间,而后对虚拟数据空间账户采用同样的哈希算法进行映射,并与顺时针方向第一个超算节点账户池中本地账户建立映射关系,将虚拟数据空间账户映射到跨域环境下超算物理节点账户。

Description

基于分布式哈希的动态均衡账户映射方法
技术领域:
本发明公开了一种基于分布式哈希的动态均衡账户映射方法,涉及广域高性能计算面临的挑战,属于计算机技术领域。
背景技术:
当前,跨域高性能计算环境中存储资源广域分散且隔离自治,大型计算应用迫切需要可支持跨域统一访问的虚拟数据空间。解决跨域统一访问难题的关键在于采用合理的账户映射技术,在这方面,许多学者与机构进行了大量的研究与实践,目前有代表性的账户映射成果是SAMBA账户映射、EGI账户映射以及CNGrid账户映射。
Samba是一个基于SMB协议的软件,它由客户端和服务器程序组成,在Linux和UNIX系统上实现。Samba是通过在Linux服务器上部署共享文件服务,而后在Windows上可以进行访问。Samba会为用户分配了一个Linux上的UID,并将Samba账户映射为Linux账户。这是因为Linux文件系统上文件的元数据中保存着UID以及权限信息。因此,通过Samba提供的账户映射机制,即将Windows访问请求中的用户转换为Linux的uid并保存下来。这样,Linux服务器上的Samba进程接收到来自Windows客户端的访问请求时,解析请求中包含的账户信息,并映射成Linux的UID进行文件访问。Windows用户在samba共享目录中创建了一个文件,那么该文件的元数据中应保存着该Windows用户在samba中映射的UID账户信息。Samba通过这种账户映射技术使得在Windows下访问Linux系统成为可能,但与此同时,Samba并没有提供复杂的账户映射机制,只是一对一的将Windows与Linux的账户进行转换,这难以支撑高性能计算领域账户间多对一、多对多的映射需求。
欧洲网格基础设施项目EGI(European Grid Infrastructure)是向研究人员提供可靠的网格基础设施服务。EGI依赖于OneData分布式文件系统,OneData是高性能数据管理解决方案,提供跨全球分布式环境和多种类型底层存储的统一数据访问,允许用户轻松共享,协作和执行存储数据的计算。OneData中为了支持全局用户标识与本地存储用户标识之间的映射,提供了一种名为本地用户映射LUMA(Local User Mapping)的可扩展机制,该机制允许站点管理员提供简单的RESTful服务,该服务将从在Onedata服务中注册的全局用户标识映射到本地用户的帐户,本地用户账户是特定与存储系统的账户,例如Linux账户。因此,OneData中的账户映射机制LUMA,是将Onedata全局账户映射为本地存储集群账户,实现数据的存储、访问与权限控制,它虽然支持动态的账户映射机制,但缺少对账户映射均衡性的考量。
中国国家网格(China National Grid,CNGrid)由国家863计划重大专项支持,是聚合了高性能计算和事务处理能力的新一代信息基础设施。在科学计算网格环境下,网格为地理上广泛分布的用户提供计算资源共享服务。计算节点并不区分本地用户和网格用户,仅提供一批本地操作系统如Linux/unix的账号,是以账号为中心的。网格作业在提交时,必须通过计算队列所在计算节点的某个账号访问本地的计算资源,因此,必须为网格账号映射一个合适的本地账号。在网格账户映射过程中,其考虑了网格账号和计算节点的本地账号的数量问题,会出现多个网格账户映射到同一个本地账户的情况,此外,网格本地账户的数量也会发生变化,因此网格采用了动态映射方法。网格的管理节点采用一主多从模式,因此映射过程只能存在于主节点,从节点值能查询但不能修改映射关系。由于网格中在选择合适的本地账户进行映射时,考虑了账户映射的历史记录,因此账户映射可能会出现时间局部性问题,即可能会出现一段时间内频繁映射几个账户,而造成其他账户资源的浪费,网格实现了一个时间离散性的映射策略来解决此问题。频繁映射的账户特征之一就是作业负载高,因此该映射策略考虑了本地账户上的作业负载,根据待映射账户的负载与平均值的大小关系进行排序,选择账户负载最低的账户进行映射。可以看到,网格的账户映射虽然缓解了时间上的局部性问题,但并没考虑空间上的局部性问题,并且不涉及跨超算中心的账户映射,带宽、地理位置等因素对网格账户映射的影响也不在其考虑之内。
上述的账户映射方法存在的问题主要为:
Samba账户映射机制不支持多对一、多对多映射方式,且无法提供灵活的映射建立与删除机制,不支持以RESTful服务的方式对账户映射关系进行更改。LUMA账户映射虽然支持动态的账户映射机制,但缺少对账户映射均衡性的考量。CNGrid账户映射没考虑空间上的局部性问题,并且不涉及跨超算中心的账户映射,不支持映射节点的多主多从的互为主备模式,存储空间、地理位置等因素对网格账户映射的影响也不在其考虑之内。
发明内容:
本发明的目的是提供一种基于分布式哈希的动态均衡账户映射方法,针对跨域条件下账户间相互映射问题,研究动态且均衡的账户映射模型,实现广域环境中动态均衡的普适账户映射方法,保障用户对资源的正常访问。
本发明的技术方案是:
一种基于分布式哈希的动态均衡账户映射方法,其特征在于,首先收集地理位置、网络时延、空间余量和账户余量四个均衡性影响因素的信息,并对收集的数据进行归一化处理,避免取值差异大小影响;其次构建优序对比表,为每一个因素设置权重,并根据权重与各因素取值计算各超算节点的最终评价分数,按照评价分数比将超算节点映射到哈希空间;而后对虚拟数据空间账户采用同样的哈希算法进行映射,并与顺时针方向第一个超算节点账户池中本地账户建立映射关系,将虚拟数据空间账户映射到跨域环境下超算物理节点账户。
所述方法包括以下步骤,具体如下:
1)获取地理位置、网络时延、各超算中心存储集群空间余量以及各超算中心账户池中账户余量四个评分影响因素的相关信息;
2)采用优序对比法为每个影响因素设置权重,获取每个超算中心评分结果;
3)依据各超算中心获得的评分,按比例将超算节点映射到哈希环空间中;
4)将待映射的虚拟数据空间账户映射到哈希环中,并从账户被哈希算法分配到的超算节点账户池中选择超算账户建立映射,保证映射的均衡性;
5)账户映射的动态添加与删除。
其中,步骤1)包括以下步骤:
步骤(1.1)虚拟数据空间客户端获取所在地理位置信息,包含经度坐标和纬度坐标;
步骤(1.2)虚拟数据空间客户端分别多次测量到跨域高性能计算环境中各个超算节点的网络时延,求取平均值作为虚拟数据空间客户端到每个超算节点的时延;
步骤(1.3)将虚拟数据空间客户端坐标信息与网络时延信息发送到服务端,并针对获取的客户端坐标计算其与各个超算节点间的地理距离;
步骤(1.4)对计算所得的地理距离与客户端到每个超算节点的时延分别进行归一化处理,降低因影响因素的取值差异过大而对最终评分结果造成的影响;
步骤(1.5)在虚拟数据空间服务端获取跨域高性能计算环境中各个超算节点的存储空间余量情况,并转换成余量百分比;此外,还应判断存储空间余量是否低于最低标准(阈值),若低于,则直接将该超算节点的评分设置为0,避免建立到该超算节点的账户映射;
步骤(1.6)在服务端获取各个超算节点的账户池中账户余量情况,并转换成百分比;若某个超算节点账户池中账户余量为0,则直接将该超算节点的评分设置为0。
其中,步骤2)包括以下步骤:
步骤(2.1)设定优序对比法判断尺度,将判断尺度用1,2,3,4,5五级表示,数字越大,表示所代表因素的重要程度越大;
步骤(2.2)构建优序对比表,地理位置相对于网络时延,目标重要性分别为2,3;地理位置相对于空间余量百分比,目标重要性分别为1,4;地理位置相对于账户池中账户余量百分比,目标重要性分别为1,4;时间延时相对于空间余量百分比,目标重要性分别为2,3;时间延时相对于账户池中账户余量百分比,目标重要性分别为2,3;空间余量百分比相对于账户池中账户余量百分比,目标重要性分别为3,2;将每行对比结果进行求和,并计算每个因素的最终权重;
步骤(2.3)将权重与地理位置、网络时延、空间余量百分比和账户余量百分比四个因素结合,计算每个超算节点的最终评价得分。
其中,步骤3)包括以下步骤:
步骤(3.1)将各个超算节点评分扩大十倍并向上取整,做为各个超算节点映射在哈希环上的数量。这样做相当于为每个超算节点在哈希环上建立了一定数目的虚拟节点,既避免了每个超算节点只在哈希空间上映射一个位置,而导致的哈希环偏置问题,同时,又合理的增大了映射到得分高的超算节点上的概率;
步骤(3.2)构建哈希空间,范围0~232-1;
步骤(3.3)将每个超算节点按照步骤(3.1)取得的映射数量顺序编号,即超算节点A按序编号为“NodeA_ip@i”,其中,i=1...n,n为节点A将在哈希空间上映射的数量;
步骤(3.4)将每个超算节点按照对应的数量映射在哈希环上。
其中,步骤4)包括以下步骤:
步骤(4.1)将待映射的虚拟数据空间账户ID作为Key,经哈希算法映射到哈希环中;
步骤(4.2)计算虚拟数据空间账户ID的映射位置,将其划分到哈希环上顺时针方向最近的超算节点;
步骤(4.3)从虚拟数据空间账户ID被划分到的超算节点账户池中获取本地账户信息,并建立账户映射;
步骤(4.4)账户映射信息全局各个节点同步,以支持在任意节点实现映射关系修改。
其中,步骤5)中,为了灵活动态的映射,虚拟数据空间服务端提供了RESTful和数据同步服务,客户端可以在任意节点实现账户映射的动态添加和删除,包括以下步骤:
步骤(5.1)通过虚拟数据空间服务端提供的RESTful API,可以按需添加指定映射;
步骤(5.2)通过虚拟数据空间服务端提供的RESTful API,可以强制删除指定映射。
本发明的技术效果是:
本发明所提出的基于分布式哈希的动态均衡账户映射方法,与现有方法相比,其主要优点是:
可以按需的通过RESTful接口动态的添加和删除指定的映射,以支持多对一,多对多的账户映射场景;支持跨超算中心的账户映射,支持映射节点的多主多从互为主备的模式,通过RESTful接口调用,可以在任意节点添加和删除映射,并保证映射信息的全局一致;由于跨域高性能计算环境的本地账户有限,因此本方法在首次建立账户映射时,只将虚拟数据空间账户映射到其中一个超算节点上,而非同时映射到所有超算节点,在保证系统可用性的情况下,最大程度减少账户映射数量;本方法在账户映射建立过程中考虑了地理位置、网络延时、空间余量和账户余量因素,因此,在每一个映射建立后,可以最大程度的保证映射的均衡性,这体现在避免跨域高性能计算环境中一个超算节点没有剩余空间,而其他超算节点存储资源大量闲置的情况,以及一个超算节点账户池中没有可用账户,而其他超算节点账户池中账户余量众多的情况出现,并且,当大量用户通过虚拟数据空间账户运行应用程序时,可以保证应用程序平均运行时间最短。
附图说明:
图1为基于分布式哈希的动态均衡账户映射方法实施流程图。
图2为跨域高性能计算环境各超算节点评价分数获取流程图。
图3为映射影响因素重要性优序图。
图4为均衡映射流程图。
图5为哈希环状空间映射图。
图6为动态映射结构图。
具体实施方式:
以下结合附图对本发明作进一步详细的说明。
虚拟数据空间用户在访问资源时,必须通过高性能计算环境的本地存储集群中某个账户访问本地存储资源,所有对存储资源的操作,必须通过将虚拟数据空间账户切换到本地账户完成。
账户映射涉及的主要场景分为两方面,第一是用户注册虚拟数据空间账户时,系统需将新注册的虚拟数据空间账户映射到跨域高性能计算环境的本地账户,并记录映射关系,以便用户日后登录时进行存储资源访问。第二是系统为用户在异地新建临时副本时,需要将用户的虚拟数据空间账户临时映射到跨域高性能计算环境的本地账户,并且在副本删除时,对应的删除该条映射。由于跨域高性能计算环境中各节点本地账户数量有限,这就要求在时延、地理位置等因素合理的情况下,尽量均衡的将虚拟数据空间账户映射到合适的超算节点本地账户上,并在特定场景下动态的添加和删除映射。
本发明正是为上述情况提供解决方案的,为了将虚拟数据空间账户映射到跨域环境下超算物理节点账户,本发明首先收集地理位置、网络时延、空间余量和账户余量四个均衡性影响因素的信息,并对收集的数据进行归一化处理,避免取值差异大小影响,其次构建优序对比表,为每一个因素设置权重,并根据权重与各因素取值计算各超算节点的最终评价分数,按照评价分数比将超算节点映射到哈希空间,而后对虚拟数据空间账户采用同样的哈希算法进行映射,并与顺时针方向第一个超算节点账户池中本地账户建立映射关系,保证映射的均衡性。
如图1所示,是本发明的实施流程图。包括以下步骤:
1)获取地理位置、网络时延、各超算中心存储集群空间余量以及各超算中心账户池中账户余量四个评分影响因素的相关信息;
2)采用优序对比法为每个影响因素设置权重,获取每个超算中心评分结果。
3)依据各超算中心获得的评分,按比例将超算节点映射到哈希环空间中。
4)将待映射的虚拟数据空间账户映射到哈希环中,并从账户被哈希算法分配到的超算节点账户池中选择超算账户建立映射。
5)账户映射的动态添加与删除。
其中,步骤1)包括以下步骤:
步骤(1.1)虚拟数据空间客户端获取所在地理位置信息,包含经度坐标和纬度坐标;
步骤(1.2)虚拟数据空间客户端分别多次测量到跨域高性能计算环境中各个超算节点的网络时延,求取平均值作为虚拟数据空间客户端到每个超算节点的时延;
步骤(1.3)将虚拟数据空间客户端坐标信息与网络时延信息发送到服务端,并针对获取的客户端坐标计算其与各个超算节点间的地理距离;
步骤(1.4)对计算所得的地理距离与客户端到每个超算节点的时延分别进行归一化处理,降低因影响因素的取值差异过大而对最终评分结果造成的影响;
步骤(1.5)在虚拟数据空间服务端获取跨域高性能计算环境中各个超算节点的存储空间余量情况,并转换成余量百分比;此外,还应判断存储空间余量是否低于最低标准(阈值),若低于,则直接将该超算节点的评分设置为0,避免建立到该超算节点的账户映射;
步骤(1.6)在服务端获取各个超算节点的账户池中账户余量情况,并转换成百分比;若某个超算节点账户池中账户余量为0,则直接将该超算节点的评分设置为0。
步骤2)包括以下步骤:
步骤(2.1)设定优序对比法判断尺度,将判断尺度用1,2,3,4,5五级表示,数字越大,表示所代表因素的重要程度越大;
步骤(2.2)构建优序对比表,地理位置相对于网络时延,目标重要性分别为2,3;地理位置相对于空间余量百分比,目标重要性分别为1,4;地理位置相对于账户池中账户余量百分比,目标重要性分别为1,4;时间延时相对于空间余量百分比,目标重要性分别为2,3;时间延时相对于账户池中账户余量百分比,目标重要性分别为2,3;空间余量百分比相对于账户池中账户余量百分比,目标重要性分别为3,2;将每行对比结果进行求和,并计算每个因素的最终权重;
步骤(2.3)将权重与地理位置、网络时延、空间余量百分比和账户余量百分比四个因素结合,计算每个超算节点的最终评价得分。
跨域高性能计算环境各超算节点评价分数获取流程如图2所示,首先虚拟数据空间客户端获取所在地理位置信息,包含经度坐标和纬度坐标,其次客户端分别多次测量到跨域高性能计算环境中各个超算节点的网络时延,求取平均值作为虚拟数据空间客户端到每个超算节点的时延;在获取完坐标信息与网络时延信息后,将其发送到虚拟数据空间服务端,并在服务上针对获取到的客户端坐标计算其与各个超算节点间的地理距离;对计算所得的地理距离与客户端到每个超算节点的时延分别进行归一化处理,降低因影响因素的取值差异过大而对最终评分结果造成的影响;在虚拟数据空间服务端获取跨域高性能计算环境中各个超算节点的存储空间余量和账户池中账户余量情况,并转换成余量百分比;接下来需要判断存储空间余量是否低于最低标准(阈值),若低于,则直接将该超算节点的评分设置为0,避免建立到该超算节点的账户映射;也需要对超算节点账户池中账户余量进行判断,若为0,则也将该超算节点的评分设置为0;若存储空间余量没有低于阈值且账户余量不为零,则构建优序对比表,获取地理位置、网络时延、空间余量百分比和账户余量百分比四个因素的权重,并计算每个超算节点的最终评价分数。
映射影响因素重要性优序图如图3所示,优序对比法的判断尺度用1,2,3,4,5五级表示,数字越大,表示所代表因素的重要程度越大。地理位置相对于网络时延,目标重要性分别为2,3;地理位置相对于空间余量百分比,目标重要性分别为1,4;地理位置相对于账户池中账户余量百分比,目标重要性分别为1,4;时间延时相对于空间余量百分比,目标重要性分别为2,3;时间延时相对于账户池中账户余量百分比,目标重要性分别为2,3;空间余量百分比相对于账户池中账户余量百分比,目标重要性分别为3,2;将每行对比结果进行求和,并计算每个因素的最终权重,如图所示,地理位置因素最终权值为0.13,网络延时因素最终权值为0.23,空间余量因素最终权值为0.33,账户余量因素最终权值为0.30;结合权值与各个影响因素,可以获得各超算节点评价分数。
步骤3)包括以下步骤:
步骤(3.1)将各个超算节点评分扩大十倍并向上取整,做为各个超算节点映射在哈希环上的数量。这样做相当于为每个超算节点在哈希环上建立了一定数目的虚拟节点,既避免了每个超算节点只在哈希空间上映射一个位置,而导致的哈希环偏置问题,同时,又合理的增大了映射到得分高的超算节点上的概率;
步骤(3.2)构建哈希空间,范围0~232-1;
步骤(3.3)将每个超算节点按照步骤(3.1)取得的映射数量顺序编号,即超算节点A按序编号为“NodeA_ip@i”,其中,i=1...n(n为节点A将在哈希空间上映射的数量);
步骤(3.4)将每个超算节点按照对应的数量映射在哈希环上。
步骤4)包括以下步骤:
步骤(4.1)将待映射的虚拟数据空间账户ID作为Key,经哈希算法映射到哈希环中;
步骤(4.2)计算虚拟数据空间账户ID的映射位置,将其划分到哈希环上顺时针方向最近的超算节点;
步骤(4.3)从虚拟数据空间账户ID被划分到的超算节点账户池中获取本地账户信息,并建立账户映射;
步骤(4.4)账户映射信息全局各个节点同步,以支持在任意节点实现映射关系修改。
均衡映射的流程如图4所示,包括以下步骤:
(1)获取各个超算节点的的最终评价分数;
(2)按评价分数的比例确定哈希空间中每个超算节点的映射数目,这样做相当于为每个超算节点在哈希环上建立了一定数目的虚拟节点,既避免了每个超算节点只在哈希空间上映射一个位置,而导致的哈希环偏置问题,同时,又合理的增大了映射到得分高的超算节点上的概率。
(3)构建哈希空间,空间大小0~232-1
(4)映射超算节点与虚拟数据空间账户到哈希空间;
(5)按顺时针方向确定虚拟数据空间账户的分配节点;
(6)从分配节点的账户池中选择账户,与虚拟数据空间账户建立映射;
哈希环状空间映射如图5所示,空间范围为0至232-1,跨域高性能计算环境中五个超算节点在图中表示为A、B、C、D、E,用环上的大圈表示。可以看到,超算节点A在图上有Ai和Aj两个映射节点,超算节点B在图上有Bi和Bj两个映射节点,超算节点C、D、E各有一个映射节点;虚拟数据空间账户用环上的小圈表示,虚拟数据空间账户1按顺时针方向,被划分到Bi节点,因此,虚拟数据空间账户1和超算节点B上的账户建立映射关系;同理,虚拟数据空间账户2与超算节点C上的账户建立映射关系;而虚拟数据空间账户3由于按照顺时针划分到了Bj节点,因此也会同超算节点B上的账户建立映射关系;
步骤5)中,为了灵活动态的映射,虚拟数据空间服务端提供了RESTful和数据同步服务,客户端可以在任意节点实现账户映射的动态添加和删除,包括以下步骤:
步骤(5.1)通过虚拟数据空间服务端提供的RESTful API,可以按需添加指定映射;
步骤(5.2)通过虚拟数据空间服务端提供的RESTful API,可以强制删除指定映射。
动态映射结构如图6所示,虚拟数据空间客户端可以通过服务端提供的RESTful服务,通过调用添加账户映射API和删除账户映射API,实现在任意节点对映射的修改;同时,每次对映射的信息修改会通过全局分布式数据库服务进行同步,保证映射信息的全局一致性。
最后所应说明的是:本发明还可有其它多种应用场景,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (7)

1.一种基于分布式哈希的动态均衡账户映射方法,其特征在于,首先收集地理位置、网络时延、空间余量和账户余量四个均衡性影响因素的信息,并对收集的数据进行归一化处理,避免取值差异大小影响;其次构建优序对比表,为每一个因素设置权重,并根据权重与各因素取值计算各超算节点的最终评价分数,按照评价分数比将超算节点映射到哈希空间;而后对虚拟数据空间账户采用同样的哈希算法进行映射,并与顺时针方向第一个超算节点账户池中本地账户建立映射关系,将虚拟数据空间账户映射到跨域环境下超算物理节点账户。
2.根据权利要求1所述的方法,其特征在于,包括以下步骤:
1)获取地理位置、网络时延、各超算中心存储集群空间余量以及各超算中心账户池中账户余量四个评分影响因素的相关信息;
2)采用优序对比法为每个影响因素设置权重,获取每个超算中心评分结果;
3)依据各超算中心获得的评分,按比例将超算节点映射到哈希环空间中;
4)将待映射的虚拟数据空间账户映射到哈希环中,并从账户被哈希算法分配到的超算节点账户池中选择超算账户建立映射,保证映射的均衡性;
5)账户映射的动态添加与删除。
3.根据权利要求2所述的方法,其特征在于,所述步骤1)包括以下步骤:
步骤(1.1)虚拟数据空间客户端获取所在地理位置信息,包含经度坐标和纬度坐标;
步骤(1.2)虚拟数据空间客户端分别多次测量到跨域高性能计算环境中各个超算节点的网络时延,求取平均值作为虚拟数据空间客户端到每个超算节点的时延;
步骤(1.3)将虚拟数据空间客户端坐标信息与网络时延信息发送到服务端,并针对获取的客户端坐标计算其与各个超算节点间的地理距离;
步骤(1.4)对计算所得的地理距离与客户端到每个超算节点的时延分别进行归一化处理,降低因影响因素的取值差异过大而对最终评分结果造成的影响;
步骤(1.5)在虚拟数据空间服务端获取跨域高性能计算环境中各个超算节点的存储空间余量情况,并转换成余量百分比;此外,还应判断存储空间余量是否低于最低标准(阈值),若低于,则直接将该超算节点的评分设置为0,避免建立到该超算节点的账户映射;
步骤(1.6)在服务端获取各个超算节点的账户池中账户余量情况,并转换成百分比;若某个超算节点账户池中账户余量为0,则直接将该超算节点的评分设置为0。
4.根据权利要求2所述的方法,其特征在于,所述步骤2)包括以下步骤:
步骤(2.1)设定优序对比法判断尺度,将判断尺度用1,2,3,4,5五级表示,数字越大,表示所代表因素的重要程度越大;
步骤(2.2)构建优序对比表,地理位置相对于网络时延,目标重要性分别为2,3;地理位置相对于空间余量百分比,目标重要性分别为1,4;地理位置相对于账户池中账户余量百分比,目标重要性分别为1,4;时间延时相对于空间余量百分比,目标重要性分别为2,3;时间延时相对于账户池中账户余量百分比,目标重要性分别为2,3;空间余量百分比相对于账户池中账户余量百分比,目标重要性分别为3,2;将每行对比结果进行求和,并计算每个因素的最终权重;
步骤(2.3)将权重与地理位置、网络时延、空间余量百分比和账户余量百分比四个因素结合,计算每个超算节点的最终评价得分。
5.根据权利要求2所述的方法,其特征在于,所述步骤3)包括以下步骤:
步骤(3.1)将各个超算节点评分扩大十倍并向上取整,做为各个超算节点映射在哈希环上的数量。这样做相当于为每个超算节点在哈希环上建立了一定数目的虚拟节点,既避免了每个超算节点只在哈希空间上映射一个位置,而导致的哈希环偏置问题,同时,又合理的增大了映射到得分高的超算节点上的概率;
步骤(3.2)构建哈希空间,范围0~232-1;
步骤(3.3)将每个超算节点按照步骤(3.1)取得的映射数量顺序编号,即超算节点A按序编号为“NodeA_ip@i”,其中,i=1...n,n为节点A将在哈希空间上映射的数量;
步骤(3.4)将每个超算节点按照对应的数量映射在哈希环上。
6.根据权利要求2所述的方法,其特征在于,所述步骤4)包括以下步骤:
步骤(4.1)将待映射的虚拟数据空间账户ID作为Key,经哈希算法映射到哈希环中;
步骤(4.2)计算虚拟数据空间账户ID的映射位置,将其划分到哈希环上顺时针方向最近的超算节点;
步骤(4.3)从虚拟数据空间账户ID被划分到的超算节点账户池中获取本地账户信息,并建立账户映射;
步骤(4.4)账户映射信息全局各个节点同步,以支持在任意节点实现映射关系修改。
7.根据权利要求2所述的方法,其特征在于,所述步骤5)中,为了灵活动态的映射,虚拟数据空间服务端提供了RESTful和数据同步服务,客户端可以在任意节点实现账户映射的动态添加和删除,包括以下步骤:
步骤(5.1)通过虚拟数据空间服务端提供的RESTful API,可以按需添加指定映射;
步骤(5.2)通过虚拟数据空间服务端提供的RESTful API,可以强制删除指定映射。
CN201910766864.7A 2019-08-20 2019-08-20 基于分布式哈希的动态均衡账户映射方法 Active CN110677455B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910766864.7A CN110677455B (zh) 2019-08-20 2019-08-20 基于分布式哈希的动态均衡账户映射方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910766864.7A CN110677455B (zh) 2019-08-20 2019-08-20 基于分布式哈希的动态均衡账户映射方法

Publications (2)

Publication Number Publication Date
CN110677455A true CN110677455A (zh) 2020-01-10
CN110677455B CN110677455B (zh) 2020-11-03

Family

ID=69075416

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910766864.7A Active CN110677455B (zh) 2019-08-20 2019-08-20 基于分布式哈希的动态均衡账户映射方法

Country Status (1)

Country Link
CN (1) CN110677455B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112165393A (zh) * 2020-08-20 2021-01-01 中国电子科技集团公司第二十九研究所 一种具有跨域特点的数据连接控制方法
CN112954609A (zh) * 2021-02-09 2021-06-11 北京交通大学 一种基于骨干环的分布式地理位置服务方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101082928A (zh) * 2007-06-25 2007-12-05 腾讯科技(深圳)有限公司 一种数据库访问的方法及数据库映射系统
WO2010107057A1 (ja) * 2009-03-19 2010-09-23 日本電気株式会社 アクセス制御リスト変換システム、その方法及びそのプログラム
CN101986651A (zh) * 2010-08-26 2011-03-16 上海网众信息技术有限公司 远程存储的方法及其系统及客户端
CN102137164A (zh) * 2011-04-06 2011-07-27 上海少思网络科技有限公司 一种分布式节点资源共享的方法
CN102622352A (zh) * 2011-01-26 2012-08-01 深圳市闪联信息技术有限公司 一种实现共享文件的方法、服务器及系统
CN103780685A (zh) * 2014-01-10 2014-05-07 清华大学 多样化智能设备间自适应数据共享的方法
US8977596B2 (en) * 2012-12-21 2015-03-10 Zetta Inc. Back up using locally distributed change detection
CN106027562A (zh) * 2016-07-08 2016-10-12 中国银联股份有限公司 一种文件网络映射方法及装置
CN107800695A (zh) * 2017-10-17 2018-03-13 郑州云海信息技术有限公司 基于Samba协议的文件访问方法、装置、系统
CN108390927A (zh) * 2018-02-09 2018-08-10 山东乾云启创信息科技股份有限公司 一种在客户机与虚拟机之间双向传输文件的方法及装置
CN110083309A (zh) * 2019-04-11 2019-08-02 重庆大学 共享数据块处理方法、系统及可读存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101082928A (zh) * 2007-06-25 2007-12-05 腾讯科技(深圳)有限公司 一种数据库访问的方法及数据库映射系统
WO2010107057A1 (ja) * 2009-03-19 2010-09-23 日本電気株式会社 アクセス制御リスト変換システム、その方法及びそのプログラム
CN101986651A (zh) * 2010-08-26 2011-03-16 上海网众信息技术有限公司 远程存储的方法及其系统及客户端
CN102622352A (zh) * 2011-01-26 2012-08-01 深圳市闪联信息技术有限公司 一种实现共享文件的方法、服务器及系统
CN102137164A (zh) * 2011-04-06 2011-07-27 上海少思网络科技有限公司 一种分布式节点资源共享的方法
US8977596B2 (en) * 2012-12-21 2015-03-10 Zetta Inc. Back up using locally distributed change detection
CN103780685A (zh) * 2014-01-10 2014-05-07 清华大学 多样化智能设备间自适应数据共享的方法
CN106027562A (zh) * 2016-07-08 2016-10-12 中国银联股份有限公司 一种文件网络映射方法及装置
CN107800695A (zh) * 2017-10-17 2018-03-13 郑州云海信息技术有限公司 基于Samba协议的文件访问方法、装置、系统
CN108390927A (zh) * 2018-02-09 2018-08-10 山东乾云启创信息科技股份有限公司 一种在客户机与虚拟机之间双向传输文件的方法及装置
CN110083309A (zh) * 2019-04-11 2019-08-02 重庆大学 共享数据块处理方法、系统及可读存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112165393A (zh) * 2020-08-20 2021-01-01 中国电子科技集团公司第二十九研究所 一种具有跨域特点的数据连接控制方法
CN112165393B (zh) * 2020-08-20 2022-07-08 中国电子科技集团公司第二十九研究所 一种具有跨域特点的数据连接控制方法
CN112954609A (zh) * 2021-02-09 2021-06-11 北京交通大学 一种基于骨干环的分布式地理位置服务方法
CN112954609B (zh) * 2021-02-09 2023-09-05 北京交通大学 一种基于骨干环的分布式地理位置服务方法

Also Published As

Publication number Publication date
CN110677455B (zh) 2020-11-03

Similar Documents

Publication Publication Date Title
CN109241161B (zh) 一种气象数据管理方法
US9268840B2 (en) Providing services across systems that manage distributed replicas
US7457835B2 (en) Movement of data in a distributed database system to a storage location closest to a center of activity for the data
US8938418B2 (en) Method and system for efficiently replicating data in non-relational databases
US9052962B2 (en) Distributed storage of data in a cloud storage system
US10534564B2 (en) Mobility and management layer for multi-platform enterprise data storage
KR101547498B1 (ko) 하이브리드 클라우드 환경에서 데이터를 분산하는 방법 및 장치
US20130339301A1 (en) Efficient snapshot read of a database in a distributed storage system
US11818209B2 (en) State management and object storage in a distributed cloud computing network
US20100138540A1 (en) Method of managing organization of a computer system, computer system, and program for managing organization
CN101370030A (zh) 基于内容复制的资源负载平衡方法
CN110677455B (zh) 基于分布式哈希的动态均衡账户映射方法
CN109085999A (zh) 数据处理方法及处理系统
CN108268614B (zh) 一种森林资源空间数据的分布式管理方法
EP4293510A1 (en) Data migration method and apparatus, and device, medium and computer product
CN109150964B (zh) 一种可迁移的数据管理方法及服务迁移方法
US11429422B2 (en) Software container replication using geographic location affinity in a distributed computing environment
CN110007862A (zh) 基于网络存储设备的混合云存储系统及其数据处理方法
CN110008029B (zh) ceph元数据集群目录分配方法、系统、装置及可读存储介质
US9544371B1 (en) Method to discover multiple paths to disk devices cluster wide
CN114048280A (zh) 矢量切片的处理方法、装置、服务器及存储介质
CN110971647A (zh) 一种大数据系统的节点迁移方法
EP4323881A1 (en) Geographically dispersed hybrid cloud cluster
CN114338718A (zh) 面向巨量遥感数据的分布式存储方法、装置及介质
Kumar et al. BMAQR: balanced multi attribute QoS aware replication in HDFS

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
GR01 Patent grant