CN109189323B - 扩容方法及设备 - Google Patents

扩容方法及设备 Download PDF

Info

Publication number
CN109189323B
CN109189323B CN201810739762.1A CN201810739762A CN109189323B CN 109189323 B CN109189323 B CN 109189323B CN 201810739762 A CN201810739762 A CN 201810739762A CN 109189323 B CN109189323 B CN 109189323B
Authority
CN
China
Prior art keywords
capacity
application program
storage array
storage
performance parameter
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
Application number
CN201810739762.1A
Other languages
English (en)
Other versions
CN109189323A (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810739762.1A priority Critical patent/CN109189323B/zh
Publication of CN109189323A publication Critical patent/CN109189323A/zh
Priority to PCT/CN2019/094649 priority patent/WO2020007336A1/zh
Application granted granted Critical
Publication of CN109189323B publication Critical patent/CN109189323B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

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)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供一种由管理设备执行的扩容方法。所述扩容方法包括接收业务主机发送的扩容请求;获取所述预设时间点所述应用程序所使用的存储空间需要增加的容量;获取当前时间之前的第一时间段内每个存储阵列的剩余容量的时间序列,每个存储阵列的剩余容量的时间序列为所述管理设备在所述预设时间段内设定的多个时间点分别获取的每个存储阵列的剩余容量;利用时序序列算法对所述存储阵列的剩余容量的时间序列进行运算以计算出每个存储阵列在所述预设时间点对应的剩余容量;根据每个存储阵列的剩余容量选择供所述应用程序的存储空间进行扩容的存储阵列;在所选择的存储阵列上为所述应用程序所使用的存储空间进行扩容。

Description

扩容方法及设备
技术领域
本发明涉及计算机技术领域,特别涉及一种为应用程序所使用的存储空间进行扩容的方法及设备。
背景技术
数据中心的中运行有网管系统的管理设备,用于管理多个存储阵列。所述管理设备用于与业务主机交互可以为业务主机中运行的应用程序所能访问的存储空间进行容量规划。当一个应用程序所能使用的存储空间的容量不够用时,所述主机就通过所述网管设备对所述应用程序所能使用的存储空间进行扩容。在进行扩容时,首先需要选择供所述应用程序进行扩容的存储阵列,在选择供所述应用程序扩容的存储阵列时,现有技术只是基于存储阵列的剩余容量来选择供所述应用程序扩容的存储阵列。例如,用户决定为应用程序A扩容1T,满足应用程序半年的使用需求,则网管设备对各存储阵列的剩余容量进行排序,将剩余容量大于1T的存储阵列推荐给用户,用户从中选择一个存储阵列为应用程序构建新的逻辑单元(Logical unit),以进行扩容。但是,在以在存储阵列上构建精简逻辑单元(thin logic unit number,LUN)的方式对所述应用程序扩容时,由于精简LUN对应的物理存储空间是在所述应用程序运行的过程中根据需要分配的,而这个存储阵列中可能还构建有供其他应用程序使用的LUN,所以,当前满足所述应用程序的扩容需求的存储阵列,可能在没到半年的时间,存储空间就已经用完,从而无法满足为应用程序扩容1T的需求。
发明内容
本发明实施例提供一种扩容方法及设备,通过所计算的在当前时间之后的一预设时间点各存储设备的剩余容量,选择为所述应用程序所使用的存储空间进行扩容的存储阵列,并在所选择的存储阵列上进行扩容。
本发明第一方面提供一种存储空间的扩容方法。所述扩容方法由管理设备执行。所述管理设备连接至业务主机及多个存储阵列,所述业务主机运行有应用程序。在所述应用程序所使用的存储空间不够用时,即会多所述所述应用程序所使用的存储空间进行扩容。所述管理设备在接收到业务主机发送的扩容请求时,会获取所述预设时间点所述应用程序所使用的存储空间需要增加的容量。所述预设时间点是所述业务主机根据用户的需求确定的,并通过所述扩容请求携带至所述管理设备。所述管理设备还会获取当前时间之前的第一时间段内每个存储阵列的剩余容量的时间序列,每个存储阵列的剩余容量的时间序列为所述管理设备在所述预设时间段内设定的多个时间点分别获取的每个存储阵列的剩余容量,然后利用时序序列算法对所述存储阵列的剩余容量的时间序列进行运算以计算出每个存储阵列在所述预设时间点对应的剩余容量。如此,基于每个存储阵列的剩余容量即可选择对所述应用程序的存储空间进行扩容的存储阵列,在选定存储整列之后,即可在所选择的存储阵列上为所述应用程序所使用的存储空间进行扩容。
本发明实施例根据每个存储阵列的历史剩余容量预测在未来的一预设时间点每个存储阵列的剩余容量,并据此选择为所述应用程序进行扩容的存储阵列,从而减少存储阵列的存储空间在预设时间点无法满足应用程序对存储空间的使用需求的情况发生。
在本发明第一方面所提供的方法的第一种可能的实现方式中,所述管理设备会获取所述应用程序在所述预设时间点需要的性能参数值,还会获取当前时间之前的第二时间段内所述存储阵列的剩余性能参数的时间序列,所述存储阵列的剩余性能参数的时间序列为所述管理设备在所述预设时间段内设定的多个时间点分别获取的存储阵列的剩余性能参数。在所述存储阵列的剩余性能参数的时间序列后,所述管理设备会利用所述时序序列算法对存储阵列的剩余性能参数时间序列进行运算以计算出所述存储阵列在所述预设时间点对应的剩余性能参数值,然后根据所述应用程序在所述预设时间点需要增加的存储空间、需要的性能参数值、所述每个存储阵列的剩余容量及剩余性能参数值按照预定算法为所述每个存储阵列计算一个分值,并根据所述分值选择对所述应用程序的存储空间进行扩容的存储阵列。
采用本实现方式的方法,在选择存储阵列时,进一步计算了每个存储阵列在预设时间点的剩余性能,这样选择的存储设备不但可以满足应用程序在所述预设时间点对存储空间的容量的需求,还可以满足对存储空间的性能需求。
基于上述任一种实现方式,在本发明实施例提供的另外一种实现方式中,在获取所述预设时间点所述应用程序所使用的存储空间需要增加的容量时,所述管理设备获取当前时间之前的第三时间段内所述应用程序所使用的存储空间的容量的时间序列,所述应用程序所使用的存储空间的容量的时间序列为所述管理设备在所述第三时间段内设定的时间点分别获取的所述应用程序所使用的存储空间,然后利用时序序列算法对所述应用程序所使用的存储空间的容量的时间序列进行运算以计算出在所述预设时间点所述应用程序所使用的存储空间的容量,并利用所述预设时间点对应的所述应用所使用的存储空间的容量减去当前时间点所述应用程序所使用的存储空间的容量得到所述应用程序在所述预设时间点需要增加的存储空间的容量。
采用本实现方式的方法,可以对所述应用程序在所述预设时间点所要使用的存储空间的容量进行预测,从而减少现有技术中由于用户错误估计所述应用程序在所述预设时间点所要使用的存储空间的容量而造成所选择的存储设备的存储空间提前用完的情况的发生。
基于上述任一种实现方式,在本发明实施例提供的另外一种实现方式中,在获取所述应用程序在预设时间点需要的性能参数值时,所述管理设备还获取当前时间之前的第四时间段内所述应用程序的性能参数值的时间序列,所述应用程序的性能参数值的时间序列为所述管理设备在所述第四时间段内设定的时间点获取的所述应用程序的性能参数值;并利用时序序列算法对所述应用程序的性能参数值的时间序列进行运算以计算出所述应用程序在所述预设时间点对应的性能参数值。
采用本实现方式的方法,可以进一步所述应用程序在所述预设时间点所需要的性能参数值进行预测,所预测的结果可以使管理设备在选择的存储设备时参考,从而选择出性能参数及存储空间都满足所述应用程序使用的存储阵列。
基于上述任一种实现方式,在本发明实施例提供的另外一种实现方式中,在根据所述应用程序在所述预设时间点需要增加的存储空间、需要的性能参数值、所述每个存储阵列的剩余容量及剩余性能参数值按照预定算法为所述每个存储阵列计算一个分值时,所述管理设备根据所获取的所述应用程序在预设时间点需扩容的存储空间的容量与每个存储阵列在预设时间点的剩余容量得到每个存储阵列的容量分值;根据所获取的所述应用程序在预设时间点所需的性能参数值及每个存储阵列在预设时间点的剩余性能参数值得到每个存储阵列的性能参数分值;及根据每个存储阵列的容量分值及性能参数分值利用预设的算法计算出每个存储阵列的分值。
采用本实现方式的方法,综合考虑了应用程序在预设时间点需要的存储空间的容量及需用的性能,及每个存储阵列在预设时间点剩余的存储容量及性能,从而使所选择的存储阵列在存储空间及性能上都满足所述应用程序的需求。
基于上述实现方式,在本发明实施例所提供的另外一种实现方式中,所述每个存储阵列的分值可以通过以下四个公式中的任意一个公式进行计算,其中用Pa表示应用程序在所述预设时间点所需要的性能参数值,用Ps表示存储阵列在所述预设时间点的剩余容量,用Ca表示应用程序在所述预设时间点需要扩容的存储空间的容量,用Cs表示每个存储阵列在所述预设时间点的剩余容量,
perfscore=Pa/Ta;capscore=Ps/Cs;
perfscore=Pc-Pa;capscore=Cs-Ca;
score=min{perfscore,capscore}; (公式2)
perfscore=Pa/Ta;capscore=Ps/Cs;
perfscore=Pc-Pa;capscore=Cs-Ca;
score=αperfscore+βcapscore α>0,β>0,α+β=1; (公式4)
本发明第二方面提供至少一种存储空间的扩容设备,每种扩容设备所执行的功能与所述第一方面所提供的其中一个存储空间的扩容方法对应,在此不再赘述。
本发明第三方面提供一种管理设备,所述管理设备包括处理器及存储器,所述存储器中存储有程序指令,所述处理器执行所述程序指令以使所述处理器执行本发明第一方面所提供的任意一种存储空间的扩容方法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例中的数据中心的结构图。
图2为本发明第一实施例中为应用程序所使用的存储空间进行扩容的方法的流程图。
图3为本发明第三实施例中为应用程序所使用的存储空间进行扩容的方法的流程图。
图4为本发明实施例中提供的与所述第一实施例提供的扩容的方法对应的扩容设备的模块图。
图5为本发明实施例中提供的与所述第三实施例提供的扩容的方法对应的扩容设备的模块图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
如图1所示,为本发明实施例中的数据中心的架构图。所述数据中心中的业务主机100、管理设备200都通过交换机300连接至多个存储阵列400。所述业务主机100中运行有应用程序101。所述应用程序101运行过程中产生的数据存储在一个或者多个存储阵列400中。所述管理保设备200包括处理单元(Central processing unit,CPU)201及存储器202。所述存储器202中存储有网管系统204。所述处理单元201通过运行所述网管系统204以实现对所述N个存储阵列的管理。例如,所述管理设备200通过与所述N个存储阵列400交互,可以获取每个存储阵列400的剩余容量,每个存储阵列400的I/O负载等性能参数,通过与所述业务主机100交互获取所述业务主机100上运行的应用程序101运行过程中的性能及所使用的存储空间的大小等参数。
在每个存储阵列400中会构建至少一个逻辑单元(Logical Unit),每个应用程序101可被分配至少一个逻辑单元,这样运行所述应用程序101所产生的数据即会存储在所述逻辑单元所在的存储阵列400中。在为应用程序304所分配的逻辑单元的存储空间用完之后,则需要为所述应用程序101构建新的逻辑单元以进行扩容。在本发明实施例中,为所述应用程序101分配的逻辑单元为精简逻辑单元(Thin LUN)。
下面将结合图2所示的流程图介绍本发明所提供的第一实施例中对所述应用程序101所使用的存储空间进行扩容的方法。
现有的管理设备在对所述应用程序101所使用的存储空间进行扩容时,由用户根据经验确定未来一段时间(例如半年)所述应用程序所要增加的存储空间的容量,但是由于用户可能对应用程序101的存储空间的使用情况不了解,很容易错误估计应用程序101未来一段时间对存储空间的使用量,因而造成所增加的容量不够用或者浪费等情况。而本发明实施例可以根据所述应用程序101的存储空间的历史使用情况预测出未来某个时间所述应用程序101的存储空间使用量,并因此预测出需要为所述应用程序101所扩容的存储空间的容量。
在本发明实施例中,在所述应用程序101运行的过程中,所述管理设备200会周期性地从所述业务主机100获取应用程序101所使用的存储空间的容量,从而形成所述应用程序101所使用的存储空间的时间序列,获取的周期可以根据实际情况进行设定,例如一天。在需要对应用程序101所使用的存储空间进行扩容时,所述业务主机100会发送扩容请求至所述管理系统200,所述管理设备200接收所述扩容请求(步骤S201)。所述扩容请求中包括一预设时间点,该预设时间点表示为所述应用程序101所扩容的存储空间的容量需足够所述应用程序101在当前时间至所述预设时间点之间这段时间的使用。
所述管理设备200根据所述扩容请求首先获取当前时间之前的第一时间段内所述应用程序101所使用的存储空间的时间序列(步骤S202)。然后,利用时序序列算法对所述应用程序101所使用的存储空间的时间序列进行运算以计算出在所述预设时间点所述应用程序所使用的存储空间的容量(步骤S203)。
在本发明实施例中,可使用预测算法应用程序101对所述预设时间点所述应用程序101所使用的存储空间所要扩容的容量进行预测。所述预测算法为时序序列预测算法,例如自回归积分滑动平均模型(Autoregressive Integrated Moving Average Model,ARIMA),及循环神经网络(Recurrent Neural Network,RNN)。所述时序序列预测算法为将预测对象随时间推移而形成的时间序列视为一个随机序列,然后用数学模型来近似描述这个序列,最后根据所建立的数学模型利用时间序列的过去值来预测未来值。应用程序101例如,如果需要用过去半年的所述应用程序101所使用的存储空间的容量来预测未来半年所述应用程序所使用的存储空间的容量,则主机将过去半年所记录的180个时间点对应的所述应用程序101所使用的存储空间的容量,即所述应用程序101所使用的存储空间的时序序列输入所述时序序列预测算法应用程序101。所述时序序列预测算法对所述应用程序101所使用的存储空间的时序序列进行运算即可预测出所述预设时间点(例如半年)所述应用程序101所使用的存储空间的容量。
当预测出所述预设时间点所述应用程序101所使用的存储空间的容量,所述管理设备200用所获取的存储空间的容量减去当前时间所述应用程序所使用的存储空间的容量的存储空间的容量即为所述应用程序预测的在所述预设时间点需要扩容的存储空间的容量(步骤S204)。
在预测了为所述应用程序扩容的存储空间的容量之后,即要选择供所述应用程序101扩容的存储阵列。如背景技术所述,如果按照现有的存储阵列的选择方式,则可能导致所选择的存储阵列无法提供应用所需要的存储空间,所以在本发明实施方式中,管理设备也会对每个存储阵列400在所述预设时间点的剩余存储容量进行预测,然后根据对每个存储阵列的预测结果选择供所述应用程序进行扩容的存储阵列400。
对存储阵列400未来一段时间的剩余空间的预测也使用所述时序序列预测算法。所述管理设备200也会周期性的获取每个存储阵列400的剩余容量,所获取的剩余容量即形成每个存储阵列的剩余容量的时间序列。在预测每个存储阵列在所述预设时间点的剩余容量时,所述管理设备200首先获取当前时间之前的第二时间段内每个存储阵列的剩余容量的时间序列(步骤S205)。然后所述管理设备200利用时序序列算法对每个存储阵列400的剩余容量的时间序列进行运算以计算出每个存储阵列在所述预设时间点对应的剩余容量(步骤S206)。例如,如果需要用过去半年的所述存储阵列400的剩余容量预测未来半年所述存储阵列400的剩余容量,则将过去半年所记录的180个点输入所述时序序列预测算法,所述180个点即为所述管理设备200所获取的所述存储阵列400在180天所使用的存储空间。所述时序序列算法即可根据输入的180个点生成一个时间序列,通过该时间序列预测出未来一段时间(例如一年)所述存储阵列400的剩余容量的情况。如此,用户可根据需要在所生成的时间序列中选择任意时间所述存储阵列的剩余容量。
在预测出每个存储阵列400的剩余容量之后,所述管理设备200根据每个存储阵列400的剩余容量选择供所述应用程序101扩容的存储阵列400,并在所述存储阵列上为所述应用程序所使用的存储空间进行扩容(步骤S207)。在本发明实施例中,选择剩余容量最大的存储阵列为所述应用程序101进行扩容,但本发明并不限定于选择剩余容量最大的存储阵列,也可以根据实际需要,使用其他策略选择为所述应用程序101进行扩容的存储设备。在选定供所述应用程序101扩容的存储阵列400后,即可在该存储阵列上为构建所述应用程序101所使用的Thin LUN,并设定该Thin LUN的大小为在所述步骤S204中计算出的所述应用程序需要扩容的存储空间的容量。
如此,根据应用程序所使用的存储空间的历史情况预测在用户要求的一段时间内的需要扩容的存储空间,减少人为估算导致所扩容的存储空间不够用或者浪费的情况的发生。及根据存储阵列400的历史剩余容量估计在用户要求的一段时间后存储阵列的400的剩余容量,并据此选择供所述应用程序扩容的存储阵列,从而减少在用户要求的一段时间内存储阵列的存储空间无法满足用户的扩容需求的情况的发生。
在本发明第二实施例中,在所述业务主机发送扩容请求时,可在请求中携带要为所述应用程序101扩容的存储空间的容量,如此,所述管理设备无需执行步骤S202及203为所述应用程序101计算需扩容的存储空间的容量。
以上实施例中,在选择供所述应用程序101扩容的存储阵列400时,只考虑了存储阵列400的剩余容量,然而在实际使用的过程中,由于每个存储阵列可以分给多个应用程序使用,所以每个存储阵列的性能参数,例如IOPS及带宽都是变化的,所以如果只考虑存储阵列400的剩余容量,则可能所选择的存储阵列的性能参数无法满足应用程序101的需求。
所以在本发明提供的第三实施例中,在为所述应用程序101选择的供所述应用程序101扩容的存储阵列时,进一步使用了所预测的应用程序需要的性能参数及存储阵列所能提供的性能参数。
如图3所示,为本发明第三实施例中对所述应用程序101所使用的存储空间进行扩容的方法的流程图。在本发明实例中,所述管理设备也是应所述业务主机的请求对所述应用程序所使用的存储空间进行扩容,所以本实施例中的步骤S301与第一实施例中的步骤S201相同。另外,在本发明实施例中,也会对所述应用程序101所需要扩容的存储空间的容量进行计算,所以本实施例中的步骤S302至S304分别与第二实施例中的步骤S202至步骤S204相同,在此不再赘述。
需要说明的是,所述应用程序101在运行的过程中,其所需的性能参数也是变化的。所述性能参数可以为每秒进行读写操作的次数(Input/Output Operations PerSecond)或者带宽。在所述应用程序101运行的过程中,所述管理设备200会周期性地从所述业务主机100获取所述应用程序101运行时的性能参数,所获取的性能参数即形成性能参数时间序列。在接收到业务主机101发送的扩容请求后,所述管理设备还会预测所述应用程序101的在所述预设时间点所需的性能参数的值。首先,所述管理设备200获取当前时间之前的第三时间段内所述应用程序101的性能参数的时间序列(步骤S305)。然后,利用时序序列算法对所述应用程序101的性能参数的时间序列进行运算以计算出所述应用程序101在所述预设时间点对应的性能参数值(步骤S306)。例如,如果需要用所述应用程序101过去半年的性能参数预测未来半年所述应用程序101的所需要的性能参数,则将过去半年所记录的180个点输入所述时序序列预测算法,所述180个点即为所述主机200记录的所述应用程序101在过去180天的性能参数。所述时序序列算法即可根据输入的180个点生成一个时间序列,通过该时间序列预测出未来半年所述存储阵列400的所需要的性能参数。
在本发明实施例中,在选择供所述应用程序扩容的存储阵列400时,也会考虑每个存储阵列400的在所述预设时间点的剩余容量,对每个存储阵列的剩余容量的计算方法与第一实施例相同,所述本实施例中的步骤S307与步骤S308与第二实施例中的步骤S204及S205相同,在此不再赘述。
在本发明实施例中,除预测每个存储阵列400的剩余容量外,还会预测每个存储阵列400在所述预设时间点的剩余性能。所述管理设备200会周期性的获取每个存储阵列400的剩余性能,所获得的剩余性能即形成剩余性能时间序列。在预测每个存储阵列400在所述预设时间点的剩余性能时,所述管理设备200首先获取当前时间之前的第四时间段内所述存储阵列400的剩余性能参数的时间序列(步骤S309),然后利用所述时序序列算法对所述存储阵列400的剩余性能参数时间序列进行运算以计算出所述存储阵列400在所述预设时间点对应的剩余性能参数(步骤S310)。如果需要用过去半年的所述存储阵列400的空闲性能参数预测未来半年所述存储阵列400的空闲性能参数,则将过去半年所记录的180个点输入所述时序序列预测算法,所述180个点即为所述主机200记录的所述存储阵列400在180天的空闲性能参数。所述时序序列算法即可根据输入的180个点生成一个时间序列,通过该时间序列预测出在所述预设时间点所述存储阵列400的剩余性能参数。
在预测出所述应用程序101在所述预设时间点需要扩容的存储空间的容量和性能参数,及所述存储阵列在未来一段时间(例如半年)所剩余容量及性能参数后,即可根据上述数据对每个存储阵列400计算分值。在计算每个存储阵列的分值时,首先根据所获取的所述应用程序101在所述预设时间点需扩容的存储空间的容量与每个存储阵列400在所述预设时间点的剩余容量得到每个存储阵列的容量分值capscore(步骤S311),然后根据所获取的所述应用程序101在预设时间点所需的性能参数及每个存储阵列400在所述预设时间点的剩余性能参数得到每个存储阵列400的性能参数分值perfscore(步骤S312),最后根据每个存储阵列400的容量分值及性能参数分值利用预设的算法计算出每个存储阵列的分值(S313)。
在计算每个存储阵列400时分值时,用Pa表示应用程序101在所述预设时间点所需要的性能参数值,用Ps表示存储阵列400在所述预设时间点的剩余容量,用Ca表示应用程序101在所述预设时间点需要扩容的存储空间的容量,用Cs表示每个存储阵列400在所述预设时间点的剩余容量,则每个存储阵列400的分值score的第一种计算公式为:
perfscore=Pa/Ta;capscore=Ps/Cs;
第二种计算公式为:
perfscore=Pc-Pa;capscore=Cs-Ca;
score=min{perfscore,capscore}
(公式2)
第三种计算公式为:
perfscore=Pa/Ta;capscore=Ps/Cs;
第四种计算公式为:
perfscore=Pc-Pa;capscore=Cs-Ca;
score=αperfscore+βcapscore α>0,β>0,α+β=1
(公式4)
以上只是列举出几种计算每个存储阵列400的分值的四种公式,但是对每个存储阵列400的分值的计算并不限于以上所列举的几种方式。
在每个存储阵列400的分值计算出来之后,即可根据每个存储阵列400的分值选择供所述应用程序101扩容的存储阵列400(步骤S314)。在本发明实施例中,选择分值最大的存储阵列作为供所述应用程序101进行扩容的存储阵列400,但在其他实施例中,也可以根据不同策略选择满足需求的存储。
在选择出供所述应用程序101进行扩容的存储阵列400后,即可在所选出的存储阵列上构建所述应用程序101所使用的Thin LUN,为所述应用程序进行扩容(步骤S315),所述Thin LUN的最大容量即为所述应用程序101在所述预设时间点需要扩容的存储容量。
本发明实施例,通过应用程序的存储空间的历史使用情况及历史性能参数预测扩容时间点应用程序的所需的存储空间及存储设备的剩余容量,从而可以为所述应用程序选择出可以满足所述应用程序的扩容需求的存储设备,减少现有技术中所选择的存储阵列无法满足应用程序需求的存储阵列进行扩容的情况的发生。另外根据存储阵列400的历史剩余容量及历史性能参数值估计在所述预设时间点存储阵列的400的剩余容量及剩余性能,并据此选择供所述应用程序扩容的存储阵列,从而避免在用户所选择的供所述应用程序扩容的存储阵列无法满足用户的扩容需求。
在本发明第四实施例中,在所述业务主机100发送扩容请求至所述管理设备200时,可在所述扩容请求中携带所述应用程序101在所述预设时间点需要扩容的存储空间的容量及需要的性能参数值,这样,所述管理设备200就不需要预测所述应用程序101在所述预设时间点需要扩容的存储空间的容量及需要的性能参数值,即在实施例中,第三实施例中的步骤S不需要执行S302-S306,其他步骤与第三实施例的相同,在此不再赘述。
如图4所示,为与本发明第一实施例所提供的扩容方法对应的扩容设备的模块图。
所述扩容设备40包括扩容容量确定模块401、所述剩余空间预测模块402、及扩容模块403。所述扩容容量确定模块401用于接收所述扩容请求,根据所述扩容请求首先获取当前时间之前的第一时间段内所述应用程序101所使用的存储空间的时间序列,并利用时序序列算法对所述应用程序101所使用的存储空间的时间序列进行运算以计算出在预设时间点所述应用程序所使用的存储空间的容量,其中所述扩容请求中包括所述预设时间点。当预测出所述预设时间点所述应用程序101所使用的存储空间的容量,所述扩容容量确定模块401用所获取的存储空间的容量减去当前时间所述应用程序所使用的存储空间的容量的存储空间的容量即为所述应用程序预测的在所述预设时间点需要扩容的存储空间的容量所述所述扩容容量确定模块401所执行的功能与图2所示的扩容方法的步骤S201至步骤S204的功能对应。
所述剩余空间预测模块402用于获取当前时间之前的第二时间段内每个存储阵列的剩余容量的时间序列,然后利用时序序列算法对每个存储阵列400的剩余容量的时间序列进行运算以计算出每个存储阵列在所述预设时间点对应的剩余容量。所述剩余空间预测模块402执行的功能与图2所示的扩容方法的步骤S205及步骤S206的功能对应。
所述扩容模块403用于在预测出每个存储阵列400的剩余容量之后,根据每个存储阵列400的剩余容量选择供所述应用程序101扩容的存储阵列400,并在所述存储阵列上为所述应用程序所使用的存储空间进行扩容。所述扩容模块403所执行的功能与图2所示的扩容方法的步骤S207的功能对应。
本发明还提供一种与第二实施例提供的扩容方法对应的扩容设备,在该扩容设备中,所述扩容容量确定模块401可直接从业务主机100发送的扩容请求获取所述应用程序101扩容的存储空间的容量,而无需通过时序序列计算所述应用程序在所述预设时间点所需要增加的存储空间的容量。
如图5所示,在本发明第三实施例中所提供的扩容设备50与本发明第三实施例所提供的扩容方法相对应。所述扩容设备50包括扩容容量确定模块501、扩容性能确定模块502、剩余容量预测模块503、剩余性能参数预测模块504及扩容模块505。所述扩容容量确定模块501执行的功能与图4中的扩容容量确定模块401所执行的功能相同,在此不再赘述。
所述扩容性能确定模块502用于所述管理设备200获取当前时间之前的第三时间段内所述应用程序101的性能参数的时间序列,然后,利用时序序列算法对所述应用程序101的性能参数的时间序列进行运算以计算出所述应用程序101在所述预设时间点对应的性能参数值。所述扩容性能确定模块502执行的功能与步骤S305及S306对应。
所述剩余空间预测模块503所执行的功能与扩容设备40的剩余空间预测模块402所执行的功能相同,在此不再赘述。
所述剩余性能参数预测模块504用于获取当前时间之前的第四时间段内所述存储阵列400的剩余性能参数的时间序列,然后利用所述时序序列算法对所述存储阵列400的剩余性能参数时间序列进行运算以计算出所述存储阵列400在所述预设时间点对应的剩余性能参数。所述剩余性能参数预测模块504所执行的功能与图3所示的扩容方法的步骤S309及S310对应。
扩容模块505用于首先根据所获取的所述应用程序101在所述预设时间点需扩容的存储空间的容量与每个存储阵列400在所述预设时间点的剩余容量得到每个存储阵列的容量分值capscore,然后根据所获取的所述应用程序101在预设时间点所需的性能参数及每个存储阵列400在所述预设时间点的剩余性能参数得到每个存储阵列400的性能参数分值perfscore,最后根据每个存储阵列400的容量分值及性能参数分值利用预设的算法计算出每个存储阵列的分值。每个存储阵列的分值的计算可参考步骤S313中描述的四种计算公式。在计算出每个存储阵列的分值后,所述扩容模块505即可根据每个存储阵列400的分值选择供所述应用程序101扩容的存储阵列400,并在选择出供所述应用程序101进行扩容的存储阵列400后,即可在所选出的存储阵列上构建所述应用程序101所使用的Thin LUN,为所述应用程序进行扩容。所述扩容模块505执行的功能与图3所示的扩容方法的步骤S311至S314对应。
在与上述第四实施例提供的扩容方法对应的扩容设备中,在所述业务主机100发送扩容请求至所述管理设备200时,可在所述扩容请求中携带所述应用程序101在所述预设时间点需要扩容的存储空间的容量及需要的性能参数值,这样,所述扩容容量确定模块501及扩容性能确定模块502直接根据所述述扩容请求中确定需要扩容的存储空间的容量及需要的性能参数值即可,而不需要用所述时序序列预测算法进行预测。
管理设备200就不需要预测所述应用程序101在所述预设时间点需要扩容的存储空间的容量及需要的性能参数值,
本发明实施例,通过应用程序的存储空间的历史使用情况及历史性能参数预测扩容时间点应用程序的所需的存储空间及存储设备的剩余容量,从而可以为所述应用程序选择出可以满足所述应用程序的扩容需求的存储设备,减少现有技术中所选择的存储阵列无法满足应用程序在所述预设时间点对存储空间的使用需求的情况的发生。
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种存储空间的扩容方法,由管理设备执行,所述管理设备连接至业务主机及多个存储阵列,所述业务主机运行有应用程序,其特征在于,所述方法包括:
接收业务主机发送的扩容请求,所述扩容请求中携带当前时间之后的一预设时间点;
获取所述预设时间点所述应用程序所使用的存储空间需要增加的容量;
获取当前时间之前的第一时间段内每个存储阵列的剩余容量的时间序列,每个存储阵列的剩余容量的时间序列为所述管理设备在所述第一时间段内设定的多个时间点分别获取的每个存储阵列的剩余容量;
利用时序序列算法对所述存储阵列的剩余容量的时间序列进行运算以计算出每个存储阵列在所述预设时间点对应的剩余容量;
根据每个存储阵列的剩余容量选择供所述应用程序的存储空间进行扩容的存储阵列;
在所选择的存储阵列上为所述应用程序所使用的存储空间进行扩容;
所述方法还包括:获取所述应用程序在所述预设时间点需要的性能参数值;
获取当前时间之前的第二时间段内所述存储阵列的剩余性能参数的时间序列,所述存储阵列的剩余性能参数的时间序列为所述管理设备在所述第二时间段内设定的多个时间点分别获取的存储阵列的剩余性能参数;
利用所述时序序列算法对存储阵列的剩余性能参数时间序列进行运算以计算出所述存储阵列在所述预设时间点对应的剩余性能参数值;
所述根据每个存储阵列的剩余容量选择对所述应用程序的存储空间进行扩容的存储阵列包括:
根据所述应用程序在所述预设时间点需要增加的存储空间、需要的性能参数值、所述每个存储阵列的剩余容量及剩余性能参数值按照预定算法为所述每个存储阵列计算一个分值;
根据所述分值选择对所述应用程序的存储空间进行扩容的存储阵列。
2.如权利要求1所述的方法,其特征在于,所述获取所述预设时间点所述应用程序所使用的存储空间需要增加的容量,包括:
获取当前时间之前的第三时间段内所述应用程序所使用的存储空间的容量的时间序列,所述应用程序所使用的存储空间的容量的时间序列为所述管理设备在所述第三时间段内设定的时间点分别获取的所述应用程序所使用的存储空间;
利用时序序列算法对所述应用程序所使用的存储空间的容量的时间序列进行运算以计算出在所述预设时间点所述应用程序所使用的存储空间的容量;
利用所述预设时间点对应的所述应用程序所使用的存储空间的容量减去当前时间点所述应用程序所使用的存储空间的容量得到所述应用程序在所述预设时间点需要增加的存储空间的容量。
3.如权利要求1或2所述的方法,其特征在于,所述获取所述应用程序在预设时间点需要的性能参数值包括:
获取当前时间之前的第四时间段内所述应用程序的性能参数值的时间序列,所述应用程序的性能参数值的时间序列为所述管理设备在所述第四时间段内设定的时间点获取的所述应用程序的性能参数值;
利用时序序列算法对所述应用程序的性能参数值的时间序列进行运算以计算出所述应用程序在所述预设时间点对应的性能参数值。
4.如权利要求1所述的方法,其特征在于,所述根据所述应用程序在所述预设时间点需要增加的存储空间、需要的性能参数值、所述每个存储阵列的剩余容量及剩余性能参数值按照预定算法为所述每个存储阵列计算一个分值包括:
根据所获取的所述应用程序在预设时间点需扩容的存储空间的容量与每个存储阵列在预设时间点的剩余容量得到每个存储阵列的容量分值;
根据所获取的所述应用程序在预设时间点所需的性能参数值及每个存储阵列在预设时间点的剩余性能参数值得到每个存储阵列的性能参数分值;及
根据每个存储阵列的容量分值及性能参数分值利用预设的算法计算出每个存储阵列的分值。
5.一种存储空间的扩容设备,应用于管理设备,所述管理设备连接至业务主机及多个存储阵列,所述业务主机运行有应用程序,其特征在于,所述设备包括:
扩容容量确定模块,用于接收业务主机发送的扩容请求,获取预设时间点所述应用程序所使用的存储空间需要增加的容量,所述扩容请求中携带所述预设时间点;
剩余空间确定模块,用于获取当前时间之前的第一时间段内每个存储阵列的剩余容量的时间序列,每个存储阵列的剩余容量的时间序列为所述管理设备在所述第一时间段内设定的多个时间点分别获取的每个存储阵列的剩余容量;利用时序序列算法对所述存储阵列的剩余容量的时间序列进行运算以计算出每个存储阵列在所述预设时间点对应的剩余容量;
扩容模块,用于根据每个存储阵列的剩余容量选择对所述应用程序的存储空间进行扩容的存储阵列,在所选择的存储阵列上为所述应用程序进行扩容;
所述设备还包括:
性能参数确定模块,获取所述应用程序在所述预设时间点需要的性能参数值;
剩余性能参数确定模块,用于获取所述业务主机记录的当前时间之前的第二时间段内所述存储阵列的剩余性能参数的时间序列,所述存储阵列的剩余性能参数的时间序列为所述业务主机在所述第二时间段内设定的多个时间点分别记录的存储阵列的剩余性能参数,利用所述时序序列算法对存储阵列的剩余性能参数时间序列进行运算以计算出所述存储阵列在所述预设时间点对应的剩余性能参数值;
所述扩容模块在根据每个存储阵列的剩余容量选择对所述应用程序的存储空间进行扩容时,具体用于;
根据所述应用程序在所述预设时间点需要增加的存储空间、需要的性能参数值、所述每个存储阵列的剩余容量及剩余性能参数值按照预定算法为所述每个存储阵列计算一个分值;
根据所述分值选择对所述应用程序的存储空间进行扩容的存储阵列。
6.如权利要求5所述的设备,其特征在于,所述扩容容量确定模块获取所述预设时间点所述应用程序所使用的存储空间需要增加的容量时,具体用于:
获取当前时间之前的第三时间段内所述应用程序所使用的存储空间的容量的时间序列,所述应用程序所使用的存储空间的容量的时间序列为所述管理设备在所述第三时间段内设定的时间点分别获取的所述应用程序所使用的存储空间;
利用时序序列算法对所述应用程序所使用的存储空间的容量的时间序列进行运算以计算出在所述预设时间点所述应用程序所使用的存储空间的容量;
利用所述预设时间点对应的所述应用所使用的存储空间的容量减去当前时间点所述应用程序所使用的存储空间的容量得到所述应用程序在所述预设时间点需要增加的存储空间的容量。
7.如权利要求5所述的设备,其特征在于,所述性能参数确定模块在获取所述应用程序在预设时间点需要的性能参数值时包括:
获取当前时间之前的第四时间段内所述应用程序的性能参数值的时间序列,所述应用程序的性能参数值的时间序列为所述管理设备在所述第四时间段内设定的时间点获取的所述应用程序的性能参数值;
利用时序序列算法对所述应用程序的性能参数值的时间序列进行运算以计算出所述应用程序在所述预设时间点对应的性能参数值。
8.如权利要求5所述的设备,其特征在于,所述扩容模块在根据所述应用程序在所述预设时间点需要增加的存储空间、需要的性能参数值、所述每个存储阵列的剩余容量及剩余性能参数值按照预定算法为所述每个存储阵列计算一个分值时,具体用于:
根据所获取的所述应用程序在预设时间点需扩容的存储空间与每个存储阵列在预设时间点的剩余容量得到每个存储阵列的容量分值;
根据所获取的所述应用程序在预设时间点所需的性能参数值及每个存储阵列在预设时间点的剩余性能参数值得到每个存储阵列的性能参数分值;及
根据每个存储阵列的容量分值及性能参数分值利用预设的算法计算出每个存储阵列的分值。
9.一种计算机可读介质,包括指令,当其被计算机执行时,使得所述计算机执行如权利要求1至4任意一项所述的方法。
CN201810739762.1A 2018-07-06 2018-07-06 扩容方法及设备 Active CN109189323B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810739762.1A CN109189323B (zh) 2018-07-06 2018-07-06 扩容方法及设备
PCT/CN2019/094649 WO2020007336A1 (zh) 2018-07-06 2019-07-04 扩容方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810739762.1A CN109189323B (zh) 2018-07-06 2018-07-06 扩容方法及设备

Publications (2)

Publication Number Publication Date
CN109189323A CN109189323A (zh) 2019-01-11
CN109189323B true CN109189323B (zh) 2019-12-17

Family

ID=64936190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810739762.1A Active CN109189323B (zh) 2018-07-06 2018-07-06 扩容方法及设备

Country Status (2)

Country Link
CN (1) CN109189323B (zh)
WO (1) WO2020007336A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189323B (zh) * 2018-07-06 2019-12-17 华为技术有限公司 扩容方法及设备
CN109885469B (zh) * 2019-02-27 2022-09-30 深信服科技股份有限公司 一种扩容方法、预测模型创建方法、装置、设备及介质
CN110377228A (zh) * 2019-06-19 2019-10-25 深圳壹账通智能科技有限公司 区块链节点的自动扩容方法、装置、运维终端及存储介质
CN112748847B (zh) * 2019-10-29 2024-04-19 伊姆西Ip控股有限责任公司 管理存储系统中的存储空间的方法、设备和程序产品
CN110968272B (zh) * 2019-12-16 2021-01-01 华中科技大学 基于时间序列预测的海量小文件存储性能优化方法及系统
CN112988071B (zh) * 2021-03-15 2024-05-24 中国建设银行股份有限公司 一种分布式存储扩容方法、装置、存储介质和设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5081498B2 (ja) * 2007-05-24 2012-11-28 株式会社日立製作所 計算機システム、および、その制御方法
US8909763B2 (en) * 2011-03-31 2014-12-09 Mitsubishi Heavy Industries, Ltd. Computing-device management device, computing-device management method, and computing-device management program
JP5750018B2 (ja) * 2011-09-29 2015-07-15 株式会社Screenホールディングス 画像処理システム、印刷システム、制御装置、画像処理方法およびプログラム
CN103577337B (zh) * 2013-11-05 2017-02-22 华为技术有限公司 存储系统的空间分配方法和设备
CN103970641A (zh) * 2014-05-15 2014-08-06 浪潮电子信息产业股份有限公司 一种基于容量预测技术的设备扩容方法
CN105094708B (zh) * 2015-08-25 2018-06-12 北京百度网讯科技有限公司 一种磁盘容量的预测方法及装置
CN106354438A (zh) * 2016-09-28 2017-01-25 郑州云海信息技术有限公司 一种存储池容量可用时间的预测方法和装置
CN107092442B (zh) * 2017-04-24 2020-08-18 杭州宏杉科技股份有限公司 存储系统资源分配方法及装置
CN107480028B (zh) * 2017-07-21 2020-09-18 东软集团股份有限公司 磁盘可使用的剩余时长的获取方法及装置
CN109189323B (zh) * 2018-07-06 2019-12-17 华为技术有限公司 扩容方法及设备

Also Published As

Publication number Publication date
CN109189323A (zh) 2019-01-11
WO2020007336A1 (zh) 2020-01-09

Similar Documents

Publication Publication Date Title
CN109189323B (zh) 扩容方法及设备
JP6713906B2 (ja) ソリッドステートドライブ及びその動作方法
CN112000459A (zh) 一种用于服务的扩缩容的方法及相关设备
CN111813523A (zh) 时长预估模型生成方法、系统资源调度方法、装置、电子设备和存储介质
JP6191691B2 (ja) 異常検出装置、制御方法、及びプログラム
US11645562B2 (en) Search point determining method and search point determining apparatus
CN112328395B (zh) 一种云资源容量规划方法和系统
US20040030782A1 (en) Method and apparatus for deriving computer system configuration
CN110764714A (zh) 一种数据处理方法、装置、设备及可读存储介质
CN118245471B (zh) 数据库管理方法、计算机设备、存储介质和程序产品
JP5849794B2 (ja) ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム
CN107203256B (zh) 一种网络功能虚拟化场景下的节能分配方法与装置
CN109379747B (zh) 无线网络多控制器部署和资源分配方法和装置
CN111143033B (zh) 基于可伸缩操作系统的操作执行方法及装置
CN113158435A (zh) 基于集成学习的复杂系统仿真运行时间预测方法与设备
US11379130B2 (en) Predicting and preparing volume configurations
US11859467B2 (en) Reservoir simulation systems and methods to dynamically improve performance of reservoir simulations
CN115151902A (zh) 集群扩容方法、装置、存储介质及电子设备
CN116743825A (zh) 服务器管理方法、装置、计算机设备和存储介质
CN113742059B (zh) 任务分配方法、装置、计算机设备和存储介质
CN113014659B (zh) 微服务迁移方法、装置及存储介质和电子设备
CN108563489A (zh) 一种数据中心综合管理系统的虚拟机迁移方法及系统
US20220236899A1 (en) Information processing apparatus, information processing method, and computer-readable recording medium storing information processing program
JP5699589B2 (ja) 処理割り当て装置、処理割り当てシステム、処理割り当て方法、処理割り当てプログラム
CN118612792A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220215

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technologies Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.