CN110351380A - 一种新存储节点同步任务的分配方法和系统 - Google Patents
一种新存储节点同步任务的分配方法和系统 Download PDFInfo
- Publication number
- CN110351380A CN110351380A CN201910647711.0A CN201910647711A CN110351380A CN 110351380 A CN110351380 A CN 110351380A CN 201910647711 A CN201910647711 A CN 201910647711A CN 110351380 A CN110351380 A CN 110351380A
- Authority
- CN
- China
- Prior art keywords
- memory node
- performance
- node
- underload
- memory
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于FastDFS存储技术领域,提供一种新存储节点同步任务的分配方法和系统,包括:每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;当有新存储节点加入所述存储系统时,评估现有存储节点的性能状态;根据性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。通过评估选择出合适的多个现有存储节点来并发完成新存储节点的同步任务,缩短同步时间,避免了因为同步任务带来的负载倾斜与性能瓶颈问题,提高资源利用效率。
Description
技术领域
本发明属于FastDFS存储技术领域,尤指一种新存储节点同步任务的分配方法和系统。
背景技术
FastDFS分布式文件系统,致力于实现文件操作的高可用、高并发,特别适合中小文件的存储操作,以其特有的轻量级、分组存储与对等结构这三大特点,被国内各大企业广泛应用。
新增存储节点作为FastDFS分布式文件系统进行组内(Group)容灾备份、副本数定制、降低系统集群整体负载率的重要手段,在FastDFS分布式文件系统中具有重要意义。为了满足FastDFS分布式文件系统设计理念中的对等思想,新存储节点必须完成系统原有文件的全部同步工作。在实际使用中,当操作员新增一个存储节点时,系统原有同步方案是轮循选择一台现有存储节点,利用该现有存储节点一对一地对新存储节点进行文件同步工作,如果该现有存储节点中已存储大量数据,或该现有存储节点正在繁忙使用状态,那么其处理同步工作的速度就会减慢,从而增加文件同步时间,使新存储节点无法快速上线服务。更有甚者,在系统繁忙时,原有同步方案可能将长时间高负载的同步任务分配到一个已经近乎满载的现有存储节点,这样就有可能会使得该现有存储节点成为系统性能瓶颈,严重的会导致宕机的发生。可以看出,现有的FastDFS分布式文件系统没有合理地解决同步时的资源配置问题,其同步任务的分配机制有待进一步改进,以避免传统的轮循选择同步节点可能造成的效率低、稳定性差的问题。
发明内容
基于在FastDFS分布式文件系统中,通过轮循选择同步节点容易造成效率低、稳定性差的问题,本发明提供了一种新存储节点同步任务的分配方法和系统,选择多个性能好和当前负载低的现有存储节点,利用权值进行同步任务量分配,并发式地同时对新存储节点进行文件同步,这样就能将文件同步负载合理的分配到多台现有存储节点,并且极大的缩短文件同步时间,使得新存储节点快速上线提供服务,具体方案如下:
本发明提供一种新存储节点同步任务的分配方法,包括:
每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;
当有新存储节点加入所述存储系统时,基于各个所述现有存储节点的最新状态信息数据评估其性能状态;
根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;
所述同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。
具体地,本发明根据当前系统内各个现有存储节点的性能与负载,选择出合适的多个现有存储节点来并发完成新存储节点的同步任务。整个过程相比较FastDFS原有的操作过程,极大缩短了同步时间,而且一定程度上避免了因为新存储节点的同步任务而带来的负载倾斜与性能瓶颈问题,提高资源利用效率。
进一步地,本发明还提供一种新存储节点同步任务的分配方法,基于各个现有存储节点的最新状态信息数据评估其性能状态,包括:
所述现有存储节点的最新状态信息数据包括负载率和原始性能值,筛选出所述现有存储节点中的未满载存储节点;
根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值;
根据各个所述未满载存储节点的剩余性能值获得所述存储系统的总剩余性能值;
计算各个所述未满载存储节点的剩余性能值与所述存储系统的总剩余性能值的比值作为其性能容余率,性能容余率越大代表性能状态越好;
所述未满载存储节点的性能容余率满足公式:
E(Si)为存储节点Si的性能容余率;
L(Si)为存储节点Si的负载率;
C(si)为存储节点Si的原始性能值。
具体地,本发明提出性能容余率这一概念,将性能容余率作为任务分配与调度的参数依据,更加准确的表示存储节点的忙闲程度。性能容余率的高低代表存储节点剩余性能值占组(Group)全部剩余性能值的比重,该值越高说明本存储节点相比于其他存储节点有更多的处理能力,在进行新存储节点的操作中更适合被安排文件同步任务。
进一步地,本发明还提供一种新存储节点同步任务的分配方法,实现根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点,包括:
根据各个所述未满载存储节点的性能容余率大小,将其分别编入三个链表,当其性能容余率不小于第一容余率阈值时,将其编入第一链表,当其性能容余率小于第一容余率阈值且大于第二容余率阈值时,将其编入第二链表,当其性能容余率不大于第二容余率阈值时,将其编入第三链表,所述第一容余率阈值大于所述第二容余率阈值;
检查所述第一链表中是否有未满载存储节点,如果是,则选择所述第一链表中的未满载存储节点为所述同步节点;否则,
检查所述第二链表中是否有未满载存储节点,如果是,则选择所述第二链表中的未满载存储节点为所述同步节点;否则,
选择所述第三链表中的未满载存储节点为所述同步节点。
具体地,本发明基于性能容余率概念对所有现有的存储节点进行分组,分别将他们匹配到三个链表中,当性能容余率高分组中有存储节点时,就在高分组进行源文件同步任务分配工作,如果没有,就选择性能容余率中的分组,如果还没有,就选择性能容余率中的分组进行同步选择操作,如此实现总是能找到系统中相对更“空闲”的那些存储节点来进行同步操作。
进一步地,本发明还提供一种新存储节点同步任务的分配方法,根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值,还包括:
根据各个所述未满载存储节点的硬件配置评估得到硬件评分;
以所述存储系统系统中加载的第一个所述现有存储节点的硬件评分为基准,计算获得各个所述未满载存储节点的原始性能值,所述原始性能值满足公式:
C(si)为存储节点Si的处理性能数据;
P(si)为存储节点Si的硬件评分。
具体地,本发明中提出了一种计算未满载存储节点的原始性能值的方法,实现了以第一台存储节点为基准,衡量现有存储节点的原始性值,使得后续计算更简便,单位更统一。
进一步地,本发明还提供一种新存储节点同步任务的分配方法,采集所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率;
根据各个所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率计算其负载率;
所述负载率满足公式:
L(Si)为存储节点Si的负载率;
L(Ci)为存储节点Si的负载率的CPU利用率;
w1为CPU利用率的权值参数;
L(Mi)为存储节点Si的负载率的内存利用率;
w2为内存利用率的权值参数;
L(Hi)为存储节点Si的负载率的磁盘I/O;
w3为磁盘I/O的权值参数。
具体地,本发明提出了一种通过CPU利用率、内存利用率、磁盘I/O速率来获得未满载存储节点的负载率的方法,其中,基于不同应用场景可以为CPU利用率、内存利用率、磁盘I/O分配不同的权值,以实现灵活应对不同的存储环境。
本发明还提供一种新存储节点同步任务的分配系统,包括:
信息采集模块,每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;
性能评估模块,当有新存储节点加入所述存储系统时,基于各个所述现有存储节点的最新状态信息数据评估其性能状态;
节点选择模块,根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;
同步执行模块,所述同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。
进一步地,本发明还提供一种新存储节点同步任务的分配系统,所述性能评估模块包括:
满载判断子模块,所述现有存储节点的最新状态信息数据包括负载率和原始性能值,筛选出所述现有存储节点中的未满载存储节点;
性能计算子模块,根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值;根据各个所述未满载存储节点的剩余性能值获得所述存储系统的总剩余性能值;计算各个所述未满载存储节点的剩余性能值与所述存储系统的总剩余性能值的比值作为其性能容余率,性能容余率越大代表性能状态越好;
所述未满载存储节点的性能容余率满足公式:
E(Si)为存储节点Si的性能容余率;
L(Si)为存储节点Si的负载率;
C(si)为存储节点Si的原始性能值。
进一步地,本发明还提供一种新存储节点同步任务的分配系统,所述节点选择模块包括:
编组子模块,根据各个所述未满载存储节点的性能容余率大小,将其分别编入三个链表,当其性能容余率不小于第一容余率阈值时,将其编入第一链表,当其性能容余率小于第一容余率阈值且大于第二容余率阈值时,将其编入第二链表,当其性能容余率不大于第二容余率阈值时,将其编入第三链表,所述第一容余率阈值大于所述第二容余率阈值;
检查子模块,检查所述第一链表中是否有未满载存储节点,如果是,则选择所述第一链表中的未满载存储节点为所述同步节点;否则,检查所述第二链表中是否有未满载存储节点,如果是,则选择所述第二链表中的未满载存储节点为所述同步节点;否则,选择所述第三链表中的未满载存储节点为所述同步节点。
进一步地,本发明还提供一种新存储节点同步任务的分配系统,所述性能计算子模块包括:
硬件评估单元,根据各个所述未满载存储节点的硬件配置评估得到硬件评分;
所述性能计算子模块还用于,以所述存储系统系统中加载的第一个所述现有存储节点的硬件评分为基准,计算获得各个所述未满载存储节点的原始性能值,所述原始性能值满足公式:
C(si)为存储节点Si的处理性能数据;
P(si)为存储节点Si的硬件评分。
进一步地,本发明还提供一种新存储节点同步任务的分配系统,所述信息采集模块还用于采集所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率;
所述性能计算子模块还用于根据各个所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率计算其负载率;
所述负载率满足公式:
L(Si)为存储节点Si的负载率;
L(Ci)为存储节点Si的负载率的CPU利用率;
w1为CPU利用率的权值参数;
L(Mi)为存储节点Si的负载率的内存利用率;
w2为内存利用率的权值参数;
L(Hi)为存储节点Si的负载率的磁盘I/O;
w3为磁盘I/O的权值参数。
通过本发明提供的一种新存储节点同步任务的分配方法和系统,可以带来以下至少一种有益的技术效果:
1、通过选择出合适的多个现有存储节点来并发完成新存储节点的同步任务,极大缩短了同步时间,而且一定程度上避免了因为新存储节点的同步任务而带来的负载倾斜与性能瓶颈问题,提高资源利用效率。
2、通过建立性能容余率这一概念,将性能容余率作为任务分配与调度的参数依据,更加准确的表示存储节点的忙闲程度,为实现根据存储节点的闲忙程度分配任务打下基础。
3、通过将现有的存储节点按性能状态分成高、中、低三组,并按照高组优先分配同步任务的原则进行同步选择操作,如此实现总是能找到系统中相对更“空闲”的那些存储节点来进行同步操作。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种新存储节点同步任务的分配方法和系统的上述技术特征、优点及其实现方式予以进一步的说明。
图1是本发明一些实施例中,一种新存储节点同步任务的分配方法的流程图;
图2本发明一些实施例中,一种基于各个现有存储节点的最新状态信息数据评估其性能状态的方法的流程图;
图3是本发明一些实施例中,实现筛选部分适合执行同步任务的现有存储节点作为同步节点的方法的流程图;
图4是本发明一些实施例中,根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值的方法的流程图;
图5是本发明一些实施例中,一种计算节点负载率的方法的流程图;
图6是本发明一些实施例中,一种新存储节点同步任务的分配系统的结构示意图
附图标号说明:
100 信息采集模块 200 性能评估模块
210 满载判断子模块 220 性能计算子模块
221 硬件评估单元 300 节点选择模块
310 编组子模块 320 检查子模块
400 同步执行模块
具体实施方式
为了更清楚地说明本发明中的实施例和现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来说讲,在不付出创造性劳动的情况下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
本发明第一实施例。附图1记载了本发明一些实施例中,一种新存储节点同步任务的分配方法的流程图,所述方法包括:
S100每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;
S200当有新存储节点加入所述存储系统时,基于各个所述现有存储节点的最新状态信息数据评估其性能状态;
S300根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;
S400所述同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。
具体地,在本发明一些实施例中,在S100中,采集周期可手动设置,例如每隔10秒采集一次最新状态信息,这些最新状态信息存储在系统中。此外,所有第一次与存储系统建立连接的存储节点,会将该节点的节点性能一并存储在系统中,之后,只需要更新相应的数据即可。所以系统中每隔10秒就可以获得所有现有节点的最新状态信息数据以及节点性能,这些信息此时只是存储在系统中。
当操作员执行新增存储节点操作时,就会激活S200,系统调取之前存储的现有存储节点的最新状态信息数据以及节点性能数据,进行各个节点的性能评估,获得所有节点的性能状态。
基于S200中获得的节点性能状态,在S300中对所有节点进行筛选,筛除那些不适宜执行同步任务的节点,不适宜的节点有很多,例如硬件配置差、当前运行状态差、节点故障等等,将筛选后剩下的节点作为同步节点。
通过S300中选出的同步节点,在S400中,即可开始进行新存储节点的同步工作了,由于可能存在多个同步节点进行同步,这里按照每个同步节点自身的权重并发式地同时对新节点执行同步。
本发明根据当前系统内各个现有存储节点的性能与负载,选择出合适的多个现有存储节点来并发完成新存储节点的同步任务。整个过程相比较FastDFS原有的操作过程,极大缩短了同步时间,而且一定程度上避免了因为新存储节点的同步任务而带来的负载倾斜与性能瓶颈问题,提高资源利用效率。
本发明第二实施例。基于第一实施例,附图2示意出本发明一些实施例中,一种基于各个现有存储节点的最新状态信息数据评估其性能状态的方法的流程图,包括:
S210所述现有存储节点的最新状态信息数据包括负载率和原始性能值,筛选出所述现有存储节点中的未满载存储节点;
S220根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值;
S230根据各个所述未满载存储节点的剩余性能值获得所述存储系统的总剩余性能值;
S240计算各个所述未满载存储节点的剩余性能值与所述存储系统的总剩余性能值的比值作为其性能容余率,性能容余率越大代表性能状态越好;
所述未满载存储节点的性能容余率满足公式:
E(Si)为存储节点Si的性能容余率;
L(Si)为存储节点Si的负载率;
C(si)为存储节点Si的原始性能值。
具体地,在本发明一些实施例中,通过S210对现有节点进行筛选,设置单项阈值:CPU利用率为96.8%,内存利用率为94.4%。设置节点负载率阈值为93%。当新存储节点接入存储系统时,现有存储节点的CPU利用率或者内存利用率中有一项超过了单项阈值,那就不参与节点的性能容余率计算以及文件同步任务分配,因为超过单项阈值,证明其当前已经满载,不适合再继续分配任务。当计算出某个存储节点的负载率超过了设置的阈值,同理将该存储节点排出在同步任务分配队列之外。阈值根据实际情况可以做相应改变。经过S210的筛选之后,剩下的节点我们视为未满载节点,这些节点将进行性能容余率计算。
在S220中,先计算出所有节点的剩余性能值,然后在S230中加权求和得出存储系统总剩余性能值,进而在S240中根据获得性能容余率。
根据节点性能与节点负载率这两个参数因子进行系统内的任务分配与调度本发明中,将性能容余率作为任务分配与调度的参数依据,更加准确的表示存储节点的忙闲程度。性能容余率的高低代表存储节点剩余性能值占组(Group)全部剩余性能值的比重,该值越高说明本存储节点相比于其他存储节点有更多的处理能力,在进行新存储节点的操作中更适合被安排文件同步任务。
本发明提出性能容余率这一概念,将性能容余率作为任务分配与调度的参数依据,更加准确的表示存储节点的忙闲程度。性能容余率的高低代表存储节点剩余性能值占组(Group)全部剩余性能值的比重,该值越高说明本存储节点相比于其他存储节点有更多的处理能力,在进行新存储节点的操作中更适合被安排文件同步任务。
本发明第三实施例。基于第二实施例,附图3示意出本发明一些实施例中,一种根据各个所述现有存储节点的性能状态,实现筛选部分适合执行同步任务的现有存储节点作为同步节点的方法的流程图,包括:
S310根据各个所述未满载存储节点的性能容余率大小,将其分别编入三个链表,当其性能容余率不小于第一容余率阈值时,将其编入第一链表,当其性能容余率小于第一容余率阈值且大于第二容余率阈值时,将其编入第二链表,当其性能容余率不大于第二容余率阈值时,将其编入第三链表,所述第一容余率阈值大于所述第二容余率阈值;
S320检查所述第一链表中是否有未满载存储节点,如果是,则选择所述第一链表中的未满载存储节点为所述同步节点;否则,
S330检查所述第二链表中是否有未满载存储节点,如果是,则选择所述第二链表中的未满载存储节点为所述同步节点;否则,
S340选择所述第三链表中的未满载存储节点为所述同步节点。
具体地,在S310中完成了对现有存储节点的分组,其分组过程中,分组标准依据性能容余率数值制定,本方法设置为第一容余率阈值为30%,第二容余率阈值为15%,大于等于30%则将被分配到性能容余率高分链表(第一链表)中,处于30%至15%则分配至性能容余率中分链表中(第二链表),小于15%则分配至性能容余率低分组中(第三链表)。
当完成了对现有存储节点的分组操作后,进入S320同步任务分配系统依次检索三个分链表,当性能容余率高分组中有存储节点时,就在高分组进行源文件同步任务分配工作,如果没有存储节点满足高分组的阈值要求,那就进入S330选择性能容余率中的分组,同理,当不符合负载分配条件时进入S340选择低分组进行选择操作。一旦分组选定,就只在同一分组中进行任务分配,不会同时对两个或全部分组进行同步任务分配。在同一分组中,依据存储的性能容余率作为权值来均衡分配,假设性能容余率高分组中有三台存储节点,其性能容余率分别为33%、32%、31%,那么分配任务就按照33:32:31进行分配。
本发明基于性能容余率概念对所有现有的存储节点进行分组,分别将他们匹配到三个链表中,当性能容余率高分组中有存储节点时,就在高分组进行源文件同步任务分配工作,如果没有,就选择性能容余率中的分组,如果还没有,就选择性能容余率中的分组进行同步选择操作,如此实现总是能找到系统中相对更“空闲”的那些存储节点来进行同步操作。
本发明第四实施例,基于第二实施例,附图4示意出一种根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值的方法的流程图,包括:
S221根据各个所述未满载存储节点的硬件配置评估得到硬件评分;
S222以所述存储系统中加载的第一个所述现有存储节点的硬件评分为基准,计算获得各个所述未满载存储节点的原始性能值,所述原始性能值满足公式:
C(si)为存储节点Si的处理性能数据;
P(si)为存储节点Si的硬件评分。
具体地,影响存储节点性能的因素有多种比如:CPU、内存、磁盘I/O等,定量描述这几个属性的值,以及将它们统一单位标准的计算也是复杂且耗费存储节点资源的,所以本发明在S221中选择使用行业内通用的IOzone等工具进行性能评估。存储节点作为数据存储服务节点,最能代表其性能好坏的标准就是对数据读、写、随机写、随机读的平均响应时间。性能好的服务器,必然平均反应时间也较少,读取速率越快。
在S222中,通过以第一个节点的硬件得分作为标准,将其他节点与该节点的比值作为衡量硬件性能的度量。
本发明中提出了一种计算未满载存储节点的原始性能值的方法,实现了以第一台存储节点为基准,衡量现有存储节点的原始性值,使得后续计算更简便,单位更统一。
本发明第五实施例,基于第二实施例,附图5示意出一种计算节点负载率的方法的流程图:
S223采集所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率;
S224根据各个所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率计算其负载率;
所述负载率满足公式:
L(Si)为存储节点Si的负载率;
L(Ci)为存储节点Si的负载率的CPU利用率;
w1为CPU利用率的权值参数;
L(Mi)为存储节点Si的负载率的内存利用率;
w2为内存利用率的权值参数;
L(Hi)为存储节点Si的负载率的磁盘I/O;
w3为磁盘I/O的权值参数
具体地,负载率就是存储节点在某一时刻,其资源使用情况的一种衡量,相对于节点性能受硬件影响比较固定,节点负载率受多种因素的影响变化较大。
FastDFS分布式存储系统中,纵向扩容中的新存储节点与现有存储节点都在同一个网段中,所以排除网络带宽对存储节点负载率的影响,选取存储节点的CPU、内存、磁盘I/O作为参数因子,通过S223获取上述参数因子。定义节点Si的负载率是L(Si),并且在该时刻此服务节点的CPU利用率是L(Ci)、内存利用率是L(Mi)、磁盘I/O为L(Hi),根据他们分权重值w1、w2、w3,在S224中通过计算得到负载率。在某一时刻,CPU利用率、内存利用率、磁盘I/O这三项指标的权值参数,反应这三个指标对节点负载率的影响程度。权值参数大小与服务类型有关,不同的服务类型计算所用参数大小也不同,本方法设置权值大小w1=0.2,w2=0.3,w3=0.5,具体情况可以作相应改变。
本发明提出了一种通过CPU利用率、内存利用率、磁盘I/O速率来获得未满载存储节点的负载率的方法,其中,基于不同应用场景可以为CPU利用率、内存利用率、磁盘I/O分配不同的权值,以实现灵活应对不同的存储环境。
本发明第六实施例。附图6记载了本发明一些实施例中,一种新存储节点同步任务的分配系统,包括:
信息采集模块100,每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;
性能评估模块200,当有新存储节点加入所述存储系统时,基于信息采集模块100获得的各个所述现有存储节点的最新状态信息数据评估其性能状态;
满载判断子模块210,信息采集模块100得到的现有存储节点的最新状态信息数据包括负载率和原始性能值,筛选出所述现有存储节点中的未满载存储节点;
性能计算子模块220,根据满载判断子模块210获得的各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值;根据各个所述未满载存储节点的剩余性能值获得所述存储系统的总剩余性能值;计算各个所述未满载存储节点的剩余性能值与所述存储系统的总剩余性能值的比值作为其性能容余率,性能容余率越大代表性能状态越好;
所述未满载存储节点的性能容余率满足公式:
E(Si)为存储节点Si的性能容余率;
L(Si)为存储节点Si的负载率;
C(si)为存储节点Si的原始性能值。
硬件评估单元221,属于性能计算子模块220,根据各个所述未满载存储节点的硬件配置评估得到硬件评分;
所述性能计算子模块220还用于,以所述存储系统系统中加载的第一个所述现有存储节点的硬件评分为基准,基于硬件评估单元221获得的硬件评分,计算获得各个所述未满载存储节点的原始性能值,所述原始性能值满足公式:
C(si)为存储节点Si的处理性能数据;
P(si)为存储节点Si的硬件评分。
所述信息采集模块100还用于采集所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率;
所述性能计算子模块220还用于根据所述信息采集模块100采集的各个所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率计算其负载率;
所述负载率满足公式:
L(Si)为存储节点Si的负载率;
L(Ci)为存储节点Si的负载率的CPU利用率;
w1为CPU利用率的权值参数;
L(Mi)为存储节点Si的负载率的内存利用率;
w2为内存利用率的权值参数;
L(Hi)为存储节点Si的负载率的磁盘I/O;
w3为磁盘I/O的权值参数。
节点选择模块300,根据性能评估模块200得出的各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;
编组子模块310,根据节点选择模块300筛选出的各个所述未满载存储节点的性能容余率大小,将其分别编入三个链表,当其性能容余率不小于第一容余率阈值时,将其编入第一链表,当其性能容余率小于第一容余率阈值且大于第二容余率阈值时,将其编入第二链表,当其性能容余率不大于第二容余率阈值时,将其编入第三链表,所述第一容余率阈值大于所述第二容余率阈值;
检查子模块320,检查编组子模块310生成的所述第一链表中是否有未满载存储节点,如果是,则选择所述第一链表中的未满载存储节点为所述同步节点;否则,检查所述第二链表中是否有未满载存储节点,如果是,则选择所述第二链表中的未满载存储节点为所述同步节点;否则,选择所述第三链表中的未满载存储节点为所述同步节点。
同步执行模块400,检查子模块320中获得的同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。
具体地,本发明第六实施例为上述第一实施例至第五实施例所记载的方法实施例进行组合后得到的系统实施例,其技术特征和技术效果与上述第一实施例至第五实施例所记载的方法实施例相同,在此不一一赘述。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种新存储节点同步任务的分配方法,其特征在于,包括:
每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;
当有新存储节点加入所述存储系统时,基于各个所述现有存储节点的最新状态信息数据评估其性能状态;
根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;
所述同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。
2.根据权利要求1所述的一种新存储节点同步任务的分配方法,其特征在于,所述基于各个所述现有存储节点的最新状态信息数据评估其性能状态包括:
所述现有存储节点的最新状态信息数据包括负载率和原始性能值,筛选出所述现有存储节点中的未满载存储节点;
根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值;
根据各个所述未满载存储节点的剩余性能值获得所述存储系统的总剩余性能值;
计算各个所述未满载存储节点的剩余性能值与所述存储系统的总剩余性能值的比值作为其性能容余率,性能容余率越大代表性能状态越好;
所述未满载存储节点的性能容余率满足公式:
E(Si)为存储节点Si的性能容余率;
L(Si)为存储节点Si的负载率;
C(si)为存储节点Si的原始性能值。
3.根据权利要求2所述的一种新存储节点同步任务的分配方法,其特征在于,所述根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点包括:
根据各个所述未满载存储节点的性能容余率大小,将其分别编入三个链表,当其性能容余率不小于第一容余率阈值时,将其编入第一链表,当其性能容余率小于第一容余率阈值且大于第二容余率阈值时,将其编入第二链表,当其性能容余率不大于第二容余率阈值时,将其编入第三链表,所述第一容余率阈值大于所述第二容余率阈值;
检查所述第一链表中是否有未满载存储节点,如果是,则选择所述第一链表中的未满载存储节点为所述同步节点;否则,
检查所述第二链表中是否有未满载存储节点,如果是,则选择所述第二链表中的未满载存储节点为所述同步节点;否则,
选择所述第三链表中的未满载存储节点为所述同步节点。
4.根据权利2所述的一种新存储节点同步任务的分配方法,其特征在于,所述根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值还包括:
根据各个所述未满载存储节点的硬件配置评估得到硬件评分;
以所述存储系统系统中加载的第一个所述现有存储节点的硬件评分为基准,计算获得各个所述未满载存储节点的原始性能值,所述原始性能值满足公式:
C(si)为存储节点Si的处理性能数据;
P(si)为存储节点Si的硬件评分。
5.根据权利2所述的一种新存储节点同步任务的分配方法,其特征在于:
采集所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率;
根据各个所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率计算其负载率;
所述负载率满足公式:
L(Si)为存储节点Si的负载率;
L(Ci)为存储节点Si的负载率的CPU利用率;
w1为CPU利用率的权值参数;
L(Mi)为存储节点Si的负载率的内存利用率;
w2为内存利用率的权值参数;
L(Hi)为存储节点Si的负载率的磁盘I/O;
w3为磁盘I/O的权值参数。
6.一种新存储节点同步任务的分配系统,其特征在于,包括:
信息采集模块,每隔预设时间,采集存储系统中所有现有存储节点的最新状态信息数据;
性能评估模块,当有新存储节点加入所述存储系统时,基于各个所述现有存储节点的最新状态信息数据评估其性能状态;
节点选择模块,根据各个所述现有存储节点的性能状态,筛选部分适合执行同步任务的现有存储节点作为同步节点;
同步执行模块,所述同步节点按照各自权重并发式地同时对所述新存储节点执行同步任务。
7.根据权利要求6所述的一种新存储节点同步任务的分配系统,其特征在于,所述性能评估模块包括:
满载判断子模块,所述现有存储节点的最新状态信息数据包括负载率和原始性能值,筛选出所述现有存储节点中的未满载存储节点;
性能计算子模块,根据各个所述未满载存储节点的负载率和原始性能值计算其剩余性能值;根据各个所述未满载存储节点的剩余性能值获得所述存储系统的总剩余性能值;计算各个所述未满载存储节点的剩余性能值与所述存储系统的总剩余性能值的比值作为其性能容余率,性能容余率越大代表性能状态越好;
所述未满载存储节点的性能容余率满足公式:
E(Si)为存储节点Si的性能容余率;
L(Si)为存储节点Si的负载率;
C(si)为存储节点Si的原始性能值。
8.根据权利要求7所述的一种新存储节点同步任务的分配系统,其特征在于,所述节点选择模块包括:
编组子模块,根据各个所述未满载存储节点的性能容余率大小,将其分别编入三个链表,当其性能容余率不小于第一容余率阈值时,将其编入第一链表,当其性能容余率小于第一容余率阈值且大于第二容余率阈值时,将其编入第二链表,当其性能容余率不大于第二容余率阈值时,将其编入第三链表,所述第一容余率阈值大于所述第二容余率阈值;
检查子模块,检查所述第一链表中是否有未满载存储节点,如果是,则选择所述第一链表中的未满载存储节点为所述同步节点;否则,检查所述第二链表中是否有未满载存储节点,如果是,则选择所述第二链表中的未满载存储节点为所述同步节点;否则,选择所述第三链表中的未满载存储节点为所述同步节点。
9.根据权利要求7所述的一种新存储节点同步任务的分配系统,其特征在于,所述性能计算子模块包括:
硬件评估单元,根据各个所述未满载存储节点的硬件配置评估得到硬件评分;
所述性能计算子模块还用于,以所述存储系统系统中加载的第一个所述现有存储节点的硬件评分为基准,计算获得各个所述未满载存储节点的原始性能值,所述原始性能值满足公式:
C(si)为存储节点Si的处理性能数据;
P(si)为存储节点Si的硬件评分。
10.根据权利要求7所述的一种新存储节点同步任务的分配系统,其特征在于:
所述信息采集模块还用于采集所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率;
所述性能计算子模块还用于根据各个所述未满载存储节点的CPU利用率、内存利用率、磁盘I/O速率计算其负载率;
所述负载率满足公式:
L(Si)为存储节点Si的负载率;
L(Ci)为存储节点Si的负载率的CPU利用率;
w1为CPU利用率的权值参数;
L(Mi)为存储节点Si的负载率的内存利用率;
w2为内存利用率的权值参数;
L(Hi)为存储节点Si的负载率的磁盘I/O;
w3为磁盘I/O的权值参数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910478171 | 2019-06-03 | ||
CN2019104781718 | 2019-06-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110351380A true CN110351380A (zh) | 2019-10-18 |
Family
ID=68175014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910647711.0A Pending CN110351380A (zh) | 2019-06-03 | 2019-07-17 | 一种新存储节点同步任务的分配方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110351380A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083010A (zh) * | 2019-12-17 | 2020-04-28 | 深圳市网心科技有限公司 | 一种测速方法、装置和计算机可读存储介质 |
CN111625414A (zh) * | 2020-04-29 | 2020-09-04 | 江苏瑞中数据股份有限公司 | 一种数据转换整合软件的自动调度监控系统实现方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107147734A (zh) * | 2017-06-05 | 2017-09-08 | 国家计算机网络与信息安全管理中心 | 一种基于两级转发的网络流量线程级动态负载均衡方法及系统 |
CN107231437A (zh) * | 2017-07-18 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种任务备份管理方法及装置 |
WO2018089417A1 (en) * | 2016-11-09 | 2018-05-17 | Interdigital Patent Holdings, Inc. | Systems and methods to create slices at a cell edge to provide computing services |
CN108712464A (zh) * | 2018-04-13 | 2018-10-26 | 中国科学院信息工程研究所 | 一种面向集群微服务高可用的实现方法 |
-
2019
- 2019-07-17 CN CN201910647711.0A patent/CN110351380A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018089417A1 (en) * | 2016-11-09 | 2018-05-17 | Interdigital Patent Holdings, Inc. | Systems and methods to create slices at a cell edge to provide computing services |
CN107147734A (zh) * | 2017-06-05 | 2017-09-08 | 国家计算机网络与信息安全管理中心 | 一种基于两级转发的网络流量线程级动态负载均衡方法及系统 |
CN107231437A (zh) * | 2017-07-18 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种任务备份管理方法及装置 |
CN108712464A (zh) * | 2018-04-13 | 2018-10-26 | 中国科学院信息工程研究所 | 一种面向集群微服务高可用的实现方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083010A (zh) * | 2019-12-17 | 2020-04-28 | 深圳市网心科技有限公司 | 一种测速方法、装置和计算机可读存储介质 |
CN111625414A (zh) * | 2020-04-29 | 2020-09-04 | 江苏瑞中数据股份有限公司 | 一种数据转换整合软件的自动调度监控系统实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102207891B (zh) | 对数据划分分布式环境实现动态划分和负载均衡的方法 | |
CN105718364B (zh) | 一种云计算平台中计算资源能力动态评估方法 | |
CN102457571B (zh) | 一种云存储中数据均衡分布方法 | |
CN104317650A (zh) | 一种面向Map/Reduce型海量数据处理平台的作业调度方法 | |
CN103502944B (zh) | 虚拟机内存调整方法和设备 | |
WO2016082370A1 (zh) | 一种分布式节点组内任务调度方法及系统 | |
CN113138860B (zh) | 消息队列的管理方法及装置 | |
US20130339977A1 (en) | Managing task load in a multiprocessing environment | |
CN105975345B (zh) | 一种基于分布式内存的视频帧数据动态均衡存储管理方法 | |
CN106201561B (zh) | 分布式缓存集群的升级方法与设备 | |
CN103581313B (zh) | 一种处理设备与集群服务器建立连接的方法及处理设备 | |
CN108446179B (zh) | 基于负载均衡机制的权重优先Task任务调度方法 | |
CN110351380A (zh) | 一种新存储节点同步任务的分配方法和系统 | |
CN104320854B (zh) | 资源调度方法及装置 | |
CN110210789A (zh) | 电网测试业务的资源配置调度方法、装置、设备 | |
CN103067297A (zh) | 一种基于资源消耗预测的动态负载均衡方法及装置 | |
CN108255427B (zh) | 一种数据存储和动态迁移方法及装置 | |
CN103810109A (zh) | 内存分配方法、装置及系统 | |
CN106998340B (zh) | 一种板卡资源的负载均衡方法及装置 | |
CN106325996B (zh) | 一种gpu资源的分配方法及系统 | |
CN107450855A (zh) | 一种用于分布式存储的模型可变的数据分布方法及系统 | |
CN104202253A (zh) | 基于动态路由表的片上网络拥塞控制方法 | |
CN102480502B (zh) | 一种i/o负载均衡方法及i/o服务器 | |
CN113608887A (zh) | 一种数字孪生虚实网络信息实时交互方法 | |
CN104144127A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191018 |