CN111506254A - 分布式存储***及其管理方法、装置 - Google Patents
分布式存储***及其管理方法、装置 Download PDFInfo
- Publication number
- CN111506254A CN111506254A CN201910097449.7A CN201910097449A CN111506254A CN 111506254 A CN111506254 A CN 111506254A CN 201910097449 A CN201910097449 A CN 201910097449A CN 111506254 A CN111506254 A CN 111506254A
- Authority
- CN
- China
- Prior art keywords
- delay
- data node
- data
- client
- 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.)
- Granted
Links
Images
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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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
本公开涉及一种分布式存储***及其管理方法、装置,所述方法应用于客户端,所述方法包括:获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。通过由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,根据本公开实施例的分布式存储***及其管理方法、装置能够在分布式存储***的存储容量不变的情况下,提升客户端访问数据节点的速度。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种分布式存储***及其管理方法、装置。
背景技术
分布式存储***是一种在大量服务器和网络之上搭建的一个大规模的数据存储***,能够有效防止因单磁盘故障、单击故障、小范围网络故障引起的数据丢失或者服务不可用问题。
分布式存储***中可能会出现慢速节点,即性能显著差于分布式存储***中其他数据节点的数据节点。
相关技术中,在主节点发现慢速节点之后可以将慢速节点从副本节点列表中删除。这样,会导致分布式存储***中副本数不足,从而引起整个***发起副本补齐的数据复制工作,数据复制工作的读写压力会影响正常用户的读写请求。
发明内容
有鉴于此,本公开提出了一种分布式存储***及其管理方法、装置,在分布式存储***的存储容量不变的情况下,提升客户端访问数据节点的速度。
根据本公开的第一方面,提供了一种分布式存储***管理方法,所述方法应用于客户端,所述方法包括:获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。
根据本公开的第二方面,提供了一种分布式存储***管理方法,所述方法应用于主节点,所述方法包括:从客户端获取延迟参数,其中,从客户端获取的延迟参数包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度;根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
根据本公开的第三方面,提供一种分布式存储***管理方法,所述方法包括:客户端获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;客户端将获取的各数据节点的延迟参数发送至主节点;主节点从客户端获取延迟参数;主节点根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
根据本公开的第四方面,提供了一种分布式存储***管理装置,所述装置包括:获取模块,用于获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;发送模块,用于将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。
根据本公开的第五方面,提供了一种分布式存储***管理装置,所述装置包括:获取模块,用于从客户端获取延迟参数,其中,从客户端获取的延迟参数包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度;确定模块,用于根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
根据本公开的第六方面,提供了一种分布式存储***,所述***包括客户端、数据节点和主节点;其中,客户端用于获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度,并将获取的各数据节点的延迟参数发送至主节点;主节点用于从客户端获取延迟参数,并根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
根据本公开的第七方面,提供一种分布式存储***,所述***包括存储器,用于存储程序;处理器,耦合于所述存储器,用于运行所述程序,以执行如上述第一方面的方法,或执行如上述第二方面的方法。
在本公开实施例中,由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,通过在数据节点成为慢速节点时,调整数据节点被客户端访问的概率,而不是删除该数据节点,既保证了分布式存储***的存储容量不变,又提升了客户端访问数据节点的速度。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的分布式存储***管理方法的流程图。
图2示出根据本公开一实施例的分布式存储***的架构示意图。
图3示出根据本公开一实施例的分布式存储***管理方法的流程图。
图4示出根据本公开一实施例的分布式存储***管理方法的流程图。
图5示出根据本公开一实施例的分布式存储***管理装置的框图。
图6示出根据本公开一实施例的分布式存储***管理装置的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出根据本公开一实施例的分布式存储***管理方法的流程图。该方法可以应用于客户端。如图1所示,该方法可以包括:
步骤S11,获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度。
步骤S12,将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。
在本公开实施例中,由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,通过在数据节点成为慢速节点时,调整数据节点被客户端访问的概率,而不是删除该数据节点,既保证了分布式存储***的存储容量不变,又提升了客户端访问数据节点的速度。
图2示出根据本公开一实施例的分布式存储***的架构示意图。其中,客户端1和客户端2可以表示不同的客户端;数据节点1、数据节点2、数据节点3和数据节点4可以表示不同的数据节点。如图2所示,分布式存储***可以包括主节点、数据节点和客户端。其中,主节点是分布式存储***中的控制节点,主要负责数据节点的分配、***数据的采集和节点健康状态监控等工作。数据节点是分布式存储***中负责数据存储的节点,可以是一个物理服务器,数据节点上面可以运行接收数据访问请求的进程。客户端是分布式存储***上提供给上层用户的模块,客户端可以通过将向数据节点发送访问请求来访问数据节点。数据节点可以响应于客户端发送的读写请求实现数据的存取。
图1所示的分布式存储***管理方法可以应用于图2所示的客户端,例如客户端1或者客户端2等。
在步骤S11中,第一时间段可以表示任意一个时间段,第一时间段可以根据需要进行设置,例如,第一时间段可以为一个小时、一天或者一个星期等,对此本公开不做限制。
客户端在第一时间段内可能访问一个或多个数据节点。客户端可以获取第一时间段内访问的各数据节点的延迟参数。其中,延迟参数可以用于表示客户端访问数据节点的延迟程度。
在一种可能的实现方式中,数据节点一次访问的延迟时间可以为完成该次访问请求对应的数据存取所用的时间。数据节点的延迟时间可以为第一时间段内该数据节点各次访问的延迟时间的均值。
在一个示例中,数据节点的延迟参数可以为数据节点的延迟时间。数据节点的延迟时间越大,表明数据节点的延迟程度越高,因此数据节点的延迟时间可以作为数据节点的延迟参数。
在一个示例中,数据节点的延迟参数可以为表示数据节点的延迟时间的参数,例如数据节点的相对延迟时间。步骤S11可以包括:获取所述第一时间段内访问的各数据节点的延迟时间;从获取的各延迟时间中选取参考值;将所述第一时间段内访问的各数据节点的延迟时间与所述参考值的比值,确定为所述第一时间段内访问的各数据节点的延迟参数。
客户端可以获取第一时间段内访问的各数据节点的延迟时间,然后从这些延迟时间中选取任意一个延迟时间作为参考值(例如,选取其中的最大值或者最小值作为参考值),以这个参考值为参照,确定各数据节点相对延迟时间,即各数据节点的延迟时间与这个参考值的比值。客户端可以将数据节点的相对延迟时间,确定为数据节点的延迟参数。
数据节点的相对延迟时间越大,表明该数据节点相对于其他数据节点的延迟程度越高,因此,数据节点的相对延迟时间可以作为数据节点的延迟参数。
在本公开实施例中,通过对延迟时间进行相对化处理,可以从客户端角度对比不同数据节点的性能,避免了不同客户端之间针对某个数据节点的性能比较,从而有效防止网络抖动引起的性能抖动。
在一种可能的实现方式中,数据节点一次访问的延迟时间可以为在该次访问请求中,完成指定数据量的数据存取所用的单位延迟时间。在一个示例中,客户端在第一时间段内访问的任意一个数据节点为例,获取数据节点的延迟时间可以包括:获取所述第一时间段内每次访问该数据节点时,访问的数据量和延迟时间;根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间;将所述第一时间段内各次访问该数据节点的单位延迟时间的均值,确定为该数据节点的延迟时间。
对根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间进行说明:单位延迟时间=访问的延迟时间/访问的数据量*指定数据量。
其中,指定数据量可以根据需要进行设置,例如指定数据量可以为4KB,对此本公开不做限制。
在本公开实施例中,对延迟时间进行归一化处理,采用单位延迟时间作为数据节点一次访问的延迟时间,通过将每次请求的延迟时间都统一为指定数据量的数据存取的延迟时间,从而使得数据节点一次访问的延迟时间不会因为访问的数据量因素而受到影响,提高准确性。
在步骤S12中,数据节点集群可以为分布式存储***中所有数据节点组成的集群。不同客户端在第一时间段内访问的数据节点可以不同,也可以相同。
客户端可以将在步骤S11中获取的延迟参数发送至主节点。主节点可以接收客户端发送的延迟参数,客户端发送的延迟参数可以包括该客户端在第一时间段内访问的各数据节点的延迟参数。主节点可以根据客户端在第一时间段内访问的各数据节点的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
图3示出根据本公开一实施例的分布式存储***管理方法的流程图。该方法可以应用于如图2所示的主节点。如图3所示,该方法可以包括:
步骤S21,从客户端获取延迟参数,其中,从客户端获取的延迟参数包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度。
步骤S22,根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
在本公开实施例中,由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,通过在数据节点成为慢速节点时,调整数据节点被客户端访问的概率,而不是删除该数据节点,既保证了分布式存储***的存储容量不变,又提升了客户端访问数据节点的速度。
在步骤S21中,主节点可以从不同的客户端获取延迟参数,从客户端获取的延迟参数可以包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度。
步骤S21可以参照步骤S11,这里不再赘述。
在步骤S22中,主节点可以根据客户端在第一时间段内访问的各数据节点的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
主节点可以根据客户端在第一时间段内访问的各数据节点的延迟参数为数据节点集群中各数据节点进行加权评分,打分的结果可以采用百分制,延迟程度大的数据节点(慢速节点)得到的百分制评分较低,延迟程度较低的数据节点(正常节点)得到的百分制评分较高。该百分制评分可以代表数据节点被分配给客户端进行访问的概率。主节点在后续分配数据节点时,可以将慢速节点以较低的概率分配给客户端访问,将正常节点以较高的概率分配给客户端访问。
在一种可能的实现方式中,步骤S22可以包括:获取当前时刻之前确定的数据节点集群中各数据节点被分配给客户端进行访问的概率;根据获取的延迟参数,对获取的概率进行调整。
主节点可以基于之前确定的各数据节点被分配给客户端进行访问的概率和当前获取的各数据节点的延迟参数,确定后续各数据节点被分配给客户端进行访问的概率。
在一种可能的实现方式中,根据获取的延迟参数,对获取的概率进行调整可以包括:针对所述数据节点集群中任意一个数据节点,主节点可以将当前获取的该数据节点的延迟参数与延迟阈值比较,根据比较结果调整之前确定的该数据节点被分配给客户端进行访问的概率,得到后续该数据节点被分配给客户端进行访问的概率。具体的,若当前获取的该数据节点的延迟参数大于延迟阈值,则主节点降低之前确定的该数据节点被分配给客户端进行访问的概率;若当前获取的该数据节点的延迟参数小于或者等于延迟阈值,则主节点可以提高之前确定的该数据节点被分配给客户端进行访问的概率。
这样,针对之前确定的慢速节点,若当前获取的该数据节点的延迟参数表明该数据节点的延迟程度较高(对应大于延迟阈值),则主节点可以降低之前确定的该数据节点被分配给客户端进行访问的概率,得到后续该数据节点被分配给客户端进行访问的概率。这样,可以使慢速节点分配更少的访问请求,在一定程度上保证用户的长尾延迟不会受到太大的影响。
针对之前确定的慢速节点,若当前获取的该数据节点的延迟参数表明该数据节点的延迟程度较低(对应小于或者等于延迟阈值),则主节点可以提高之前确定的该数据节点被分配给客户端进行访问的概率,得到后续该数据节点被分配给客户端进行访问的概率。这样,可以在慢速节点恢复正常后,为恢复正常的节点分配更多的访问请求,提升数据节点的利用率,防止分布式存储***的总存储容量持续下降。
在一种可能的实现方式中,根据获取的延迟参数,对获取的概率进行调整可以包括:针对所述数据节点集群中的任意一个数据节点,当获取的该数据节点的延迟参数增大时,主节点调低所获取的该数据节点的概率,当获取的待数据节点的延迟参数减小时,主节点调高所获取的该数据节点的概率。
当获取的数据节点延迟参数增大时,表明数据节点的延迟程度增大了,该数据节点读写数据的压力增大了,主节点可以调低该数据节点被分配给客户端进行访问的概率,从而以较小的概率将该数据节点分配给客户端进行访问,减小该数据节点的压力。
当获取的数据节点延迟参数减小了,表明数据节点的延迟程度降低了,该数据节点读写数据的压力减小了,主节点可以调高该数据节点被分配给客户端进行访问的概率,从而以较大的概率将该数据节点分配给客户端进行访问,减小其他数据节点(例如,延迟程度较大的数据节点)的压力。
图4示出根据本公开一实施例的分布式存储***管理方法的流程图。该方法可以应用于图2所示的分布式存储***。如图4所示,该方法可以包括:
步骤S31,客户端获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度。
步骤S32,客户端将获取的各数据节点的延迟参数发送至主节点。
步骤S33,主节点从客户端获取延迟参数。
步骤S34,主节点根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
在本公开实施例中,由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,通过在数据节点成为慢速节点时,调整数据节点被客户端访问的概率,而不是删除该数据节点,既保证了分布式存储***的存储容量不变,又提升了客户端访问数据节点的速度。
步骤S31和步骤S32可以参照步骤S11和步骤S12,这里不再赘述。
在一种可能的实现方式中,步骤S31可以包括:客户端获取所述第一时间段内访问的各数据节点的延迟时间;客户端从获取的各延迟时间中选取参考值;客户端将所述第一时间段内访问的各数据节点的延迟时间与所述参考值的比值,确定为所述第一时间段内访问的各数据节点的延迟参数。
在一个示例中,客户端获取所述第一时间段内访问的各数据节点的延迟时间可以包括:客户端针对所述第一时间段内访问的各数据节点:客户端获取所述第一时间段内每次访问该数据节点时,访问的数据量和延迟时间;客户端根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间;客户端将所述第一时间段内各次访问该数据节点的单位延迟时间的均值,确定为该数据节点的延迟时间。
步骤S33和步骤S34可以参照步骤S21和步骤S22,这里不再赘述。
在一种可能的实现方式中,步骤S34可以包括:主节点获取当前时刻之前确定的数据节点集群中各数据节点被分配给客户端进行访问的概率;主节点根据获取的延迟参数,对获取的概率进行调整。
在一种可能的实现方式中,主节点根据获取的延迟参数,对获取的概率进行调整,可以包括:针对所述数据节点集群中的任意一个数据节点,当获取的该数据节点的延迟参数增大时,主节点调低所获取的该数据节点的概率,当获取的待数据节点的延迟参数减小时,主节点调高所获取的该数据节点的概率。
应用示例
如图2所示,客户端1在第一时间段内访问了数据节点1、数据节点2和数据节点3。客户端2在第一时间段内访问了数据节点1、数据节点3和数据节点4。数据节点1、数据节点2、数据节点3和数据节点4组成数据节点集群。下面以相对延迟时间作为延迟参数为例对本公开实施例的分布式存储***管理方法进行说明。
客户端1获取第一时间段内:数据节点1的相对延迟时间(延迟参数)为20%;数据节点2的相对延迟时间为20%,数据节点3的相对延迟时间为100%。客户端1将数据节点1、数据节点2和数据节点3的相对延迟时间发送至主节点。
客户端2获取第一时间段内:数据节点1的相对延迟时间(延迟参数)为20%;数据节点3的相对延迟时间为100%,数据节点4的相对延迟时间为20%。客户端2将数据节点1、数据节点3和数据节点4的相对延迟时间发送至主节点。
主节点分别从客户端1和客户端2获取相对延迟时间。主节点根据获取的相对延迟时间确定数据节点集群中各数据节点被分配给客户端进行访问的概率。主节点确定数据节点1被分配给客户端进行访问的概率为80%,数据节点2被分配给客户端进行访问的概率为80%,数据节点3被分配给客户端进行访问的概率为20%,数据节点4被分配给客户端进行访问的概率为80%。
由客户端1在第一时间段内访问的各数据节点的相对延迟时间可知,数据节点3的延迟程度较高。由客户端2在第一时间段内访问的各数据节点的相对延迟时间可知,数据节点3的延迟程度较高。因此,主节点确定的数据节点3被分配给客户端进行访问的概率较低。这样,可以减轻数据节点3(慢速节点)的压力。通过减轻数据节点3的压力替代删除数据节点3,可以在分布式存储***的存储容量不变的情况下,提升客户端访问数据节点的速度。
图5示出根据本公开一实施例的分布式存储***管理装置的框图。该装置可以应用于客户端。如图5所示,该装置40可包括:
获取模块41,用于获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;
发送模块42,用于将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。
在本公开实施例中,由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,通过在数据节点成为慢速节点时,调整数据节点被客户端访问的概率,而不是删除该数据节点,既保证了分布式存储***的存储容量不变,又提升了客户端访问数据节点的速度。
在一种可能的实现方式中,所述获取模块还用于:
获取所述第一时间段内访问的各数据节点的延迟时间;
从获取的各延迟时间中选取参考值;
将所述第一时间段内访问的各数据节点的延迟时间与所述参考值的比值,确定为所述第一时间段内访问的各数据节点的延迟参数。
在一种可能的实现方式中,所述获取模块还用于:
针对所述第一时间段内访问的各数据节点:
获取所述第一时间段内每次访问该数据节点时,访问的数据量和延迟时间;
根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间;
将所述第一时间段内各次访问该数据节点的单位延迟时间的均值,确定为该数据节点的延迟时间。
图6示出根据本公开一实施例的分布式存储***管理装置的框图。该装置可以应用于主节点。如图6所示,该装置50可以包括:
获取模块51,用于从客户端获取延迟参数,其中,从客户端获取的延迟参数包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度;
确定模块52,用于根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
在本公开实施例中,由数据节点的延迟程度确定数据节点被分配给客户端进行访问的概率,通过在数据节点成为慢速节点时,调整数据节点被客户端访问的概率,而不是删除该数据节点,既保证了分布式存储***的存储容量不变,又提升了客户端访问数据节点的速度。
在一种可能的实现方式中,所述确定模块还用于:
获取当前时刻之前确定的数据节点集群中各数据节点被分配给客户端进行访问的概率;
根据获取的延迟参数,对获取的概率进行调整。
在一种可能的实现方式中,所述确定模块具体用于:
针对所述数据节点集群中的任意一个数据节点,当获取的该数据节点的延迟参数增大时,调低所获取的该数据节点的概率,当获取的待数据节点的延迟参数减小时,调高所获取的该数据节点的概率。
本公开实施例还提供一种分布式存储***,所述分布式存储***包括客户端、数据节点和主节点;其中,客户端用于获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度,并将获取的各数据节点的延迟参数发送至主节点;主节点用于从客户端获取延迟参数,并根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
本领域内的技术人员应明白,本公开的实施例可提供为方法、***、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (19)
1.一种分布式存储***管理方法,其特征在于,所述方法应用于客户端,所述方法包括:
获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;
将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。
2.根据权利要求1所述的方法,其特征在于,获取第一时间段内访问的各数据节点的延迟参数,包括:
获取所述第一时间段内访问的各数据节点的延迟时间;
从获取的各延迟时间中选取参考值;
将所述第一时间段内访问的各数据节点的延迟时间与所述参考值的比值,确定为所述第一时间段内访问的各数据节点的延迟参数。
3.根据权利要求2所述的方法,其特征在于,获取所述第一时间段内访问的各数据节点的延迟时间,包括:
针对所述第一时间段内访问的各数据节点:
获取所述第一时间段内每次访问该数据节点时,访问的数据量和延迟时间;
根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间;
将所述第一时间段内各次访问该数据节点的单位延迟时间的均值,确定为该数据节点的延迟时间。
4.一种分布式存储***管理方法,其特征在于,所述方法应用于主节点,所述方法包括:
从客户端获取延迟参数,其中,从客户端获取的延迟参数包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度;
根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
5.根据权利要求4所述的方法,其特征在于,根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率,包括:
获取当前时刻之前确定的数据节点集群中各数据节点被分配给客户端进行访问的概率;
根据获取的延迟参数,对获取的概率进行调整。
6.根据权利要求5所述的方法,其特征在于,根据获取的延迟参数,对获取的概率进行调整,包括:
针对所述数据节点集群中的任意一个数据节点,当获取的该数据节点的延迟参数增大时,调低所获取的该数据节点的概率,当获取的待数据节点的延迟参数减小时,调高所获取的该数据节点的概率。
7.一种分布式存储***管理方法,其特征在于,所述方法包括:
客户端获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;
客户端将获取的各数据节点的延迟参数发送至主节点;
主节点从客户端获取延迟参数;
主节点根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
8.根据权利要求7所述的方法,其特征在于,客户端获取第一时间段内访问的各数据节点的延迟参数,包括:
客户端获取所述第一时间段内访问的各数据节点的延迟时间;
客户端从获取的各延迟时间中选取参考值;
客户端将所述第一时间段内访问的各数据节点的延迟时间与所述参考值的比值,确定为所述第一时间段内访问的各数据节点的延迟参数。
9.根据权利要求7所述的方法,其特征在于,客户端获取所述第一时间段内访问的各数据节点的延迟时间,包括:
客户端针对所述第一时间段内访问的各数据节点:
客户端获取所述第一时间段内每次访问该数据节点时,访问的数据量和延迟时间;
客户端根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间;
客户端将所述第一时间段内各次访问该数据节点的单位延迟时间的均值,确定为该数据节点的延迟时间。
10.根据权利要求7所述的方法,其特征在于,主节点根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率,包括:
主节点获取当前时刻之前确定的数据节点集群中各数据节点被分配给客户端进行访问的概率;
主节点根据获取的延迟参数,对获取的概率进行调整。
11.根据权利要求7或10所述的方法,其特征在于,主节点根据获取的延迟参数,对获取的概率进行调整,包括:
针对所述数据节点集群中的任意一个数据节点,当获取的该数据节点的延迟参数增大时,主节点调低所获取的该数据节点的概率,当获取的待数据节点的延迟参数减小时,主节点调高所获取的该数据节点的概率。
12.一种分布式存储***管理装置,其特征在于,所述装置包括:
获取模块,用于获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度;
发送模块,用于将获取的各数据节点的延迟参数发送至主节点,以使所述主节点根据所述延迟参数,确定所述各数据节点被分配给客户端进行访问的概率。
13.根据权利要求12所述的装置,其特征在于,所述获取模块还用于:
获取所述第一时间段内访问的各数据节点的延迟时间;
从获取的各延迟时间中选取参考值;
将所述第一时间段内访问的各数据节点的延迟时间与所述参考值的比值,确定为所述第一时间段内访问的各数据节点的延迟参数。
14.根据权利要求12所述的装置,其特征在于,所述获取模块还用于:
针对所述第一时间段内访问的各数据节点:
获取所述第一时间段内每次访问该数据节点时,访问的数据量和延迟时间;
根据每次访问的数据量和延迟时间,确定每次访问该数据节点中指定数据量的数据对应的单位延迟时间;
将所述第一时间段内各次访问该数据节点的单位延迟时间的均值,确定为该数据节点的延迟时间。
15.一种分布式存储***管理装置,其特征在于,所述装置包括:
获取模块,用于从客户端获取延迟参数,其中,从客户端获取的延迟参数包括该客户端在第一时间段内访问的各数据节点的延迟参数,数据节点的延迟参数用于表示客户端访问数据节点的延迟程度;
确定模块,用于根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
16.根据权利要求15所述的装置,其特征在于,所述确定模块还用于:
获取当前时刻之前确定的数据节点集群中各数据节点被分配给客户端进行访问的概率;
根据获取的延迟参数,对获取的概率进行调整。
17.根据权利要求15或者16所述的装置,其特征在于,所述确定模块具体用于:
针对所述数据节点集群中的任意一个数据节点,当获取的该数据节点的延迟参数增大时,调低所获取的该数据节点的概率,当获取的待数据节点的延迟参数减小时,调高所获取的该数据节点的概率。
18.一种分布式存储***,其特征在于,所述分布式存储***包括客户端、数据节点和主节点;
其中,客户端用于获取第一时间段内访问的各数据节点的延迟参数,所述延迟参数用于表示客户端访问数据节点的延迟程度,并将获取的各数据节点的延迟参数发送至主节点;
主节点用于从客户端获取延迟参数,并根据获取的延迟参数,确定数据节点集群中各数据节点被分配给客户端进行访问的概率。
19.一种分布式存储***,其特征在于,包括:
存储器,用于存储程序;
处理器,耦合于所述存储器,用于运行所述程序,以执行如权利要求1至3中的任意一项所述的方法,或执行如权利要求4-6中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910097449.7A CN111506254B (zh) | 2019-01-31 | 2019-01-31 | 分布式存储***及其管理方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910097449.7A CN111506254B (zh) | 2019-01-31 | 2019-01-31 | 分布式存储***及其管理方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111506254A true CN111506254A (zh) | 2020-08-07 |
CN111506254B CN111506254B (zh) | 2023-04-14 |
Family
ID=71864587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910097449.7A Active CN111506254B (zh) | 2019-01-31 | 2019-01-31 | 分布式存储***及其管理方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111506254B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113467982A (zh) * | 2021-06-25 | 2021-10-01 | 阿里巴巴新加坡控股有限公司 | 异常客户端设备确定方法及装置 |
CN115048225A (zh) * | 2022-08-15 | 2022-09-13 | 四川汉唐云分布式存储技术有限公司 | 一种基于分布式存储的分布式调度方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050071843A1 (en) * | 2001-12-20 | 2005-03-31 | Hong Guo | Topology aware scheduling for a multiprocessor system |
CN103701916A (zh) * | 2013-12-31 | 2014-04-02 | 赛凡信息科技(厦门)有限公司 | 分布式存储***的动态负载均衡方法 |
US20140173199A1 (en) * | 2012-12-14 | 2014-06-19 | International Business Machines Corporation | Enhancing Analytics Performance Using Distributed Multi-Tiering |
CN104202434A (zh) * | 2014-09-28 | 2014-12-10 | 北京奇虎科技有限公司 | 节点访问方法和装置 |
US20160308965A1 (en) * | 2013-05-20 | 2016-10-20 | Nec Corporation | Storage node, storage node administration device, storage node logical capacity setting method, program, recording medium, and distributed data storage system |
CN106375416A (zh) * | 2016-08-30 | 2017-02-01 | 北京航空航天大学 | 分布式数据存储***中一致性动态调整方法及装置 |
CN107872517A (zh) * | 2017-10-23 | 2018-04-03 | 北京奇艺世纪科技有限公司 | 一种数据处理方法及装置 |
CN108628551A (zh) * | 2018-05-04 | 2018-10-09 | 深圳市茁壮网络股份有限公司 | 一种数据处理方法及装置 |
-
2019
- 2019-01-31 CN CN201910097449.7A patent/CN111506254B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050071843A1 (en) * | 2001-12-20 | 2005-03-31 | Hong Guo | Topology aware scheduling for a multiprocessor system |
US20140173199A1 (en) * | 2012-12-14 | 2014-06-19 | International Business Machines Corporation | Enhancing Analytics Performance Using Distributed Multi-Tiering |
US20160308965A1 (en) * | 2013-05-20 | 2016-10-20 | Nec Corporation | Storage node, storage node administration device, storage node logical capacity setting method, program, recording medium, and distributed data storage system |
CN103701916A (zh) * | 2013-12-31 | 2014-04-02 | 赛凡信息科技(厦门)有限公司 | 分布式存储***的动态负载均衡方法 |
CN104202434A (zh) * | 2014-09-28 | 2014-12-10 | 北京奇虎科技有限公司 | 节点访问方法和装置 |
CN106375416A (zh) * | 2016-08-30 | 2017-02-01 | 北京航空航天大学 | 分布式数据存储***中一致性动态调整方法及装置 |
CN107872517A (zh) * | 2017-10-23 | 2018-04-03 | 北京奇艺世纪科技有限公司 | 一种数据处理方法及装置 |
CN108628551A (zh) * | 2018-05-04 | 2018-10-09 | 深圳市茁壮网络股份有限公司 | 一种数据处理方法及装置 |
Non-Patent Citations (3)
Title |
---|
HEEJUNG BYUN DEPARTMENT OF INFORMATION AND TELECOMMUNICATIONS ENGINEERING, SUWON UNIVERSITY, HWASEONG, SOUTH KOREA ; JUNGMIN SO: "Node Scheduling Control Inspired by Epidemic Theory for Data Dissemination in Wireless Sensor-Actuator Networks With Delay Constraints" * |
吕品;邓倩妮;: "有限存储分布式社交网络中数据的动态划分和复制" * |
曹黎明;: "基于P2P的智能交通信息平台构成及数据查询技术研究" * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113467982A (zh) * | 2021-06-25 | 2021-10-01 | 阿里巴巴新加坡控股有限公司 | 异常客户端设备确定方法及装置 |
CN113467982B (zh) * | 2021-06-25 | 2024-05-14 | 阿里巴巴创新公司 | 异常客户端设备确定方法及装置 |
CN115048225A (zh) * | 2022-08-15 | 2022-09-13 | 四川汉唐云分布式存储技术有限公司 | 一种基于分布式存储的分布式调度方法 |
CN115048225B (zh) * | 2022-08-15 | 2022-11-29 | 四川汉唐云分布式存储技术有限公司 | 一种基于分布式存储的分布式调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111506254B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287197B (zh) | 一种数据存储方法、迁移方法及装置 | |
JP6492123B2 (ja) | 分散キャッシングおよびキャッシュ分析 | |
US10901619B2 (en) | Selecting pages implementing leaf nodes and internal nodes of a data set index for reuse | |
US20180167461A1 (en) | Method and apparatus for load balancing | |
CN108920100B (zh) | 基于Ceph的读写模型优化和异构副本组合方法 | |
CN110147203B (zh) | 一种文件管理方法、装置、电子设备及存储介质 | |
CN114594914B (zh) | 用于分布式存储***的控制方法及*** | |
CN111506254B (zh) | 分布式存储***及其管理方法、装置 | |
CN109407997B (zh) | 一种数据处理方法、装置、设备及可读存储介质 | |
CN110781156A (zh) | 一种数据节点的分配方法、设备及介质 | |
CN110636388A (zh) | 一种业务请求分配方法、***、电子设备及存储介质 | |
US20120297010A1 (en) | Distributed Caching and Cache Analysis | |
CN109669621B (zh) | 一种文件管理方法、文件管理***、电子设备及存储介质 | |
CN115756955A (zh) | 一种数据备份、数据恢复的方法、装置及计算机设备 | |
CN107181773A (zh) | 分布式存储***的数据存储及数据管理方法、设备 | |
CN111562884A (zh) | 一种数据存储方法、装置及电子设备 | |
CN105868002B (zh) | 一种用于在分布式计算中处理重发请求的方法与设备 | |
US10254973B2 (en) | Data management system and method for processing distributed data | |
CN114089924B (zh) | 区块链账本数据存储***及方法 | |
CN107145303B (zh) | 一种用于在分布式存储***中执行文件写入的方法与设备 | |
CN114020218A (zh) | 混合重复数据删除调度方法及*** | |
CN115878303A (zh) | 一种资源调度方法、装置及电子设备 | |
WO2016184199A1 (zh) | 一种文件管理的方法、设备和*** | |
CN110874268B (zh) | 数据处理方法、装置和设备 | |
CN112910988A (zh) | 一种资源获取方法及资源调度装置 |
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 |