CN111124310B - 存储***调度优化方法及相关组件 - Google Patents
存储***调度优化方法及相关组件 Download PDFInfo
- Publication number
- CN111124310B CN111124310B CN201911332553.6A CN201911332553A CN111124310B CN 111124310 B CN111124310 B CN 111124310B CN 201911332553 A CN201911332553 A CN 201911332553A CN 111124310 B CN111124310 B CN 111124310B
- Authority
- CN
- China
- Prior art keywords
- component
- optimization
- resource
- scheduling
- storage system
- 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
Links
- 238000003860 storage Methods 0.000 title claims abstract description 133
- 238000005457 optimization Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000013433 optimization analysis Methods 0.000 claims abstract description 39
- 230000004044 response Effects 0.000 claims description 14
- 238000004458 analytical method Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 230000003247 decreasing effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 5
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000013499 data model Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
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/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/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/062—Securing storage systems
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了存储***调度优化方法,该方法针对各存储***组件根据对存储性能的需求特点自动根据资源需求进行分组算法、动态调核、优化路径等调度算法进行组件优化分析,并调用组件权重对当前组件调用的资源进行加权增加或减少,该实现过程相较于传统实现方式调度工作的实施过程更简化,减少了人为操作,所有的操作均为自动完成,大大节省配置的时间,减少了错误的产生,资源利用率更高,提高了整个***的可用性以及性能;同时未改变原有存储的操作模式,不影响其原有兼容性要求,可以增加***的安全性,并可以提高存储的性能,减少总运营成本。本申请还提供了一种存储***调度优化装置、设备及一种可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及数据存储技术领域,特别涉及一种存储***调度优化方法、装置、设备及一种可读存储介质。
背景技术
随着云计算、大数据等新型技术的发展,产生了大量数据,这对于存储的要求也越来越高,存储的性能、稳定性、可靠性成了***关注的焦点。另外,为了适应大数据量下的数据处理,存储的应用性能要求越来越高,应用的复杂度越来越高。
为了保证存储的性能能够达到要求,我们经常对存储***进行优化调整,但优化的方法不一而足,给存储实施的工程师造成很多困扰。另外,优化很大程度上受限于工程师个人技术能力,需要通过经验来进行调优,不仅浪费了大量的时间,对技术人员的要求也比较高,如果调整不好,可能还会影响存储的性能和安全性,导致数据丢失等风险,从而一定程度上会给整个***造成不必要的损失。
发明内容
本申请的目的是提供一种存储***调度优化方法,该方法可以在提升***资源利用率,减少调度错误率提高了整个***的运行效率的同时减少总运营成本;本申请的另一目的是提供一种存储***调度优化装置、设备及一种可读存储介质。
为解决上述技术问题,本申请提供一种存储***调度优化方法,包括:
当接收到调度优化指令时,确定存储***中待优化组件;
调用调度算法对所述待优化组件进行组件优化分析,得到组件优化策略;其中,所述调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种;
根据所述组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少;其中,所述组件权重根据组件的业务性能统计数据分析得到。
可选地,当所述调度算法包括:资源需求分组时,调用调度算法对所述待优化组件进行组件优化分析,包括:
将存储***中各组件根据相应应用场景下的资源需求进行分组,生成若干资源需求组;
向各所述资源需求组分配指定的资源量,以便各所述资源需求组调用对应的资源量进行存储处理;
根据所述待优化组件所属的资源需求组以及对应的资源量生成基于资源需求类型的组件优化策略。
可选地,当所述调度算法包括:优化路径时,调用调度算法对所述待优化组件进行组件优化分析,包括:
确定存储***中各组件的IO数据读写情况;
根据所述IO数据读写情况确定存储***中各组件对于各种资源的使用需求;
根据所述使用需求确定所述各组件对于各种资源的资源利用权重;
根据所述待优化组件的资源利用权重生成基于资源利用权重的组件优化策略。
可选地,当所述调度算法包括:优化路径时,调用调度算法对所述待优化组件进行组件优化分析,包括:
根据客户端的存储压力类型确定所述待优化组件的组件响应路径;
根据所述待组件响应路径生成基于响应路径的组件优化策略。
可选地,在根据所述组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少之后,还包括:
对调整后的存储***中各组件进行运行情况统计,将统计得到的数据作为优化分析数据;
根据所述优化分析数据对所述调度算法进行反馈调节。
可选地,所述优化分析数据包括:组件调用的资源数据,则相应地,根据所述优化分析数据对所述调度算法进行反馈调节,包括:
根据所述资源数据判定当前组件的资源调用是否达到动态平衡;
若是,记录所述调度算法,以便后续调用;
可选地,所述优化分析数据包括:组件运行性能数据;则相应地,根据所述优化分析数据对所述调度算法进行反馈调节,包括:
根据所述组件运行性能数据判断当前组件运行性能是否达到最优状态或未优化状态;
若达到最优状态,记录所述调度算法,以便后续调用;
若未优化,恢复原有组件运行配置,并启动优化自查,以确定优化失败原因。
本申请公开一种存储***调度优化装置,包括:
组件确定单元,用于当接收到调度优化指令时,确定存储***中待优化组件;
优化分析单元,用于调用调度算法对所述待优化组件进行组件优化分析,得到组件优化策略;其中,所述调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种;
资源调整单元,用于根据所述组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少;其中,所述组件权重根据组件的业务性能统计数据分析得到。
本申请公开一种存储***调度优化设备,包括:
存储器,用于存储程序;
处理器,用于执行所述程序时实现所述存储***调度优化方法的步骤。
本申请公开一种可读存储介质,所述可读存储介质上存储有程序,所述程序被处理器执行时实现所述存储***调度优化方法的步骤。
本申请所提供的存储***调度优化方法,该方法针对I/O读写、数据交互、协议解析、数据刷盘、***管理组件等存储***组件根据对存储性能的需求特点自动根据资源需求进行分组算法、动态调核、优化路径等调度算法进行组件优化分析,并调用组件权重对当前组件调用的资源进行加权增加或减少,该实现过程相较于传统实现方式调度工作的实施过程更简化,减少了人为操作,所有的操作均为自动完成,大大节省配置的时间,减少了错误的产生,资源利用率更高,提高了整个***的可用性以及性能,解决了存储性能不理想,调优工作量大、存储空间占用大、数据安全性等问题;同时不影响其原有兼容性要求,未改变原有存储的操作模式,对上层应用是透明的,无感知的,因此该方法可以增加***的安全性,并可以提高存储的性能,减少总运营成本。
本申请还提供了一种存储***调度优化装置、设备及一种可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的存储***调度优化方法的流程图;
图2为本申请实施例提供的存储***调度优化装置的结构框图;
图3为本申请实施例提供的存储***调度优化设备的结构示意图。
具体实施方式
本申请的核心是提供一种存储***调度优化方法,该方法可以在提升***资源利用率,减少调度错误率提高了整个***的运行效率的同时减少总运营成本;本申请的另一核心是提供一种存储***调度优化装置、设备及一种可读存储介质。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本实施例提供的存储***调度优化方法的流程图,该方法主要包括:
步骤s110、当接收到调度优化指令时,确定存储***中待优化组件;
需要说明的是,在接收到调度优化指令,启动调度优化步骤前,业务***需正常运行,可以正常读写数据,而该基础需要保证环境的部署,具体地,一种新***下的硬件环境部署方法如下:首先把硬件环境部署完成,配置存储设备,并映射相应的空间到业务***中,该空间可以是一块空间,也可以是多个空间;在部署完成应用***,保证业务***正常运行。若为存储业务***正常响应的环境,则可以直接调用该方法。
由于运行本实施例提供的调度优化策略需占用一定的资源进行数据采集、数据分析以及资源调度等,为避免对于组件正常运行带来影响,同时保证各组件运行于高效下,可以仅在监测到组件资源利用情况出现异常时启动调度优化,具体地,可以对存储***各组件进行资源使用情况监测,生成监测数据;若根据监测数据判定各组件中存在资源使用异常时,触发调度优化指令。
存储***监测各组件的资源使用情况,如业务***未达到各组件瓶颈,不启用调度优化策略。一旦业务***压力增大,存储***检测到I/O读写、数据交互、协议解析、数据刷盘、***管理组件等***组件中有一个或多个组件有瓶颈,比如一个组件资源使用率达到了90%以上,而其他组件只用到20%,那么我们认为存储的这个组件存在瓶颈了,此时启用对于存储处理单元的动态优化。
该方式不仅可以实现根据存储***运行情况自动的调度优化触发,且可以保证各组件实时处于高效运行的状态,提升***运行性能。
另外,本实施例中对待优化组件的确定方式不做限定,待优化组件可以为运行性能较差的组件,也可以为所有监控的组件。为保证存储***资源总量的稳定性,可以将所有监控的组件作为待优化的组件。比如存储根据性能统计查看各组件性能情况,判断哪个或哪几个组件出现运行阻滞的情况,成为瓶颈点影响***整体运行效率,然后通过调度算法对运行阻滞的组件进行优化,减少非瓶颈点的资源,增加瓶颈点的资源,从而达到动态平衡,增加整个存储的性能。
步骤s120、调用调度算法对待优化组件进行组件优化分析,得到组件优化策略;其中,调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种;
资源需求分组指针对存储中各组件根据不同的资源需求进行分组,不同的应用场景的资源需求不同,各分组也就不同,在满足性能基本需求的情况下,减少各组件之间的影响。比如在高频使用NAS(Network Attached Storage网络附属存储)协议时,协议解析占用较大资源,如无分组,就可能会占用其他的资源,从而导致其他资源成为瓶颈点,前端I/O在等待资源的释放,就会严重影响存储整体的性能。当调度算法包括:资源需求分组时,调用调度算法对待优化组件进行组件优化分析的一种具体实现方式如下:
(1)将存储***中各组件根据相应应用场景下的资源需求进行分组,生成若干资源需求组;
(2)向各资源需求组分配指定的资源量,以便各资源需求组调用对应的资源量进行存储处理;
(3)根据待优化组件所属的资源需求组以及对应的资源量生成基于资源需求类型的组件优化策略。
本实施例采用上述资源需求分组的方法,可以明显的减少各组件之间的影响。通常情况下,会有一个初始的分组方式,是根据通用的应用模型设计。但是随着应用的改变,和长时间的数据增加,可以进行动态的调整(则相应地,在上述步骤(3)执行后,还可以进一步执行以下步骤:(4)统计各待优化组件在预设时间间隔内的资源利用情况;(5)根据资源利用情况对各待优化组件的资源需求分组情况进行动态调整)。
在小块I/O随机读写的情况下,要求CPU性能较高,占用资源较大,但是对于数据交互、数据刷盘占用资源较小,动态调核(CPU核)指通过I/O数据模型(I/O模型是指读写的数据模型,比如有多少比例的读、多少比例的写、多大的数据块、包含多少种数据块类型这些信息)的计算,获取数据需求模型(根据IO模型就可以判断该模型是写的多、还是读的多、多大的数据块等信息,从而计算资源的需求)。预留包括数据交互、数据刷盘等组件的基本需要,针对其占用的其他资源进行加权减少,使整体资源能够最大限度的利用,提高整体性能。具体地,当调度算法包括:优化路径时,调用调度算法对待优化组件进行组件优化分析的一种实现方式如下:
(1)确定存储***中各组件的IO数据读写情况;
(2)根据IO数据读写情况确定各组件对于各种资源的使用需求;
(3)根据使用需求确定各组件对于各种资源的资源利用权重;
(4)根据待优化组件的资源利用权重生成基于资源利用权重的组件优化策略。
本实施例中提出的上述动态调核方式可以实现在存储资源需求分布不均时,采用加权算法进行动态调核,提升存储***的性能。需要说明的是,上文种针对一种小块IO读写的模型进行介绍,还有很多种模型,比如大数据库的读、大数据库的写、大数据块的读写、混合数据块的读、混合数据块的写等等,也同样适用于根据其现有I/O模型计算出针对其该I/O模型使用的资源情况。通过加权减少其他资源,增加主要瓶颈点的资源,从而达到性能最优的情况。
优化路径指根据压力模型(压力模型指从客户端来给存储压力)进行路径优化,优化路径的方式主要是减少没必要的路径来实现。当调度算法包括:优化路径时,调用调度算法对待优化组件进行组件优化分析的一种实现方式如下:
(1)根据客户端的存储压力类型确定待优化组件的组件响应路径;
(2)根据待组件响应路径生成基于响应路径的组件优化策略。
例如当检测到客户端的存储压力主要是读的时候,读的所有数据直接从缓存读取,读取的时候不在单个或多个控制器之间同步缓存数据,这样就减少了一个路径,从而提高了性能。减少没必要的存储路径,又比如客户端的存储压力主要在远程复制时,跳过下层缓存进行转发。
调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种,本实施例中对具体采用的调度算法的种类不做限定,可以选取其中的一种、两种,或者同时通过三种调度算法进行组件优分析,当然,也可以基于上述三种调度算法进一步添加其他的组件优化分析手段,本实施例中对此不作限定,基于本实施例提供的上述调度算法进行组件优化分析的调度优化方式均算作本申请的保护范围,在此不再赘述。
步骤s130、根据组件优化策略,调用组件权重对当前组件调用的资源进行加权增加或减少;其中,组件权重根据组件的业务性能统计数据分析得到。
因部分资源会随着其他资源的需求增加而增加,本实施例中提出在进行动态调整时,对资源进行加权增加或减少,而不是直接减少资源,在现有余量的资源上进行加权减少I/O的资源,增加数据刷盘的资源,从而提高整体的性能。其中,本实施例中各组件的权重跟组件的业务模型有直接关系,每个业务模型对各组件的需求不同,所以需要根据其业务性能统计数据(业务性能统计数据指存储对业务性能的统计数据。业务模型肯定对存储有I/O,而这些I/O被存储统计,就得到了业务性能统计数据)进行计算,得到各组件权重,调用组件权重对当前组件调用的资源进行加权增加或减少,比如在带宽模型下,针对缓存需求很高,数据刷盘相应的增加,而I/O读写占用资源反而不会成为瓶颈,此时,需要通过计算得到目前各组件性能需求比例,预留其目前使用的资源。
另外,在上述步骤s130之后,还可以进一步执行以下步骤:
s140、对调整后的存储***中各组件进行运行情况统计,将统计得到的数据作为优化分析数据;
s150、根据优化分析数据对调度算法进行反馈调节。
等待优化策略实施之后,进行性能统计,查看性能是否有优化,根据性能调度策略进行动态统计反馈,并完成调度策略的记录。通过性能反馈机制,能够实时的了解动态调度策略实施后,是否对业务***有效;针对可行的调度优化策略进行记录,减少后续优化的时间,可大大提供整个***运行的效率。同时也能够实时的掌握存储的运行状态,如有必要,还可以进行优化方法的输出,给出硬件的调整建议,或者给予其他存储进行提供技术支撑,既可以保证存储的性能,又可以减少后续使用过程中的优化时间,同时还可以针对不同的存储进行使用,按照不同的应用场景进行分类,更便捷高效,保证***在调度算法的调整下运行于最优状态,且降低总维护成本。
可选地,优化分析数据可以包括:组件调用的资源数据,则相应地,根据优化分析数据对调度算法进行反馈调节的过程具体包括:
(1)根据资源数据判定当前组件的资源调用是否达到动态平衡;
(2)若是,记录调度算法,以便后续调用;
资源调用达到动态平衡指资源的整体利用保持在一个比较高效的范围内,比如调用的资源不会过多,在一定限度内,对于其他组件的资源调用不会产生较大影响等,本实施例中对动态平衡的判断标准不做限定,可以包括组件自身的资源调动情况数据、组件间资源调用的相互影响以及***整体资源分布以及利用效率等。而标准的设定可以由相关工作人员根据经验数据进行设定,也可以统计一段时间内的组件运行情况进行总体分析得到,本实施例对此也不做限定。
当资源调用达到动态平衡后,记录当前优化策略,后续如遇类似***运行情况,直接使用,减少优化的时间,提高效率。而若未达到动态平衡时的处理方式,本实施例中对此不作限定,可以再次调整直至动态该平衡。
可选地,优化分析数据具体可以包括:组件运行性能数据;则相应地,根据优化分析数据对调度算法进行反馈调节的过程具体可以包括:
(1)根据组件运行性能数据判断当前组件运行性能是否达到最优状态或未优化状态;
其中,本实施例中对最优状态的判定方式以及判定标准不做限定,判定方式比如人工判定,即由相关工作人员指定当前运行是否为最优情况,也可以设置相应的性能最优标准,通过数据的匹配实现自动判定;各组件的判定标准可以相同,也可以不同,可以由相关工作人员根据经验数据进行设定,也可以统计一段时间内的组件运行情况进行总体分析得到等。本实施例中仅以上述判定方式以及判定标准的实现方式为例进行介绍,其他实现方式均可参照本实施例的介绍,在此不再赘述。
(2)若达到最优状态,记录调度算法,以便后续调用;
当性能达到最优后,记录当前优化策略,后续如遇类似***运行情况,直接使用,减少优化的时间,提高效率。
(3)若未优化,恢复原有组件运行配置,并启动优化自查,以确定优化失败原因。
如发现性能未有优化,可以自动恢复原有配置并进行自查,查看是否有优化遗漏点,比如有可能遗漏了某个组件,导致性能没有优化,也可能某个组件没有执行优化策略,导致性能没有优化,也可能在调度算法中存在错误信息等,本实施例在运行性能不升反降时及时恢复调度优化前的组件配置并进行优化失败的原因自查,可以避免不合适的调度算法对***运行的影响,在排除优化失败的各因素后,本实施例中对该种情况不做限定,可以再进行二次优化,进行动态调整,如发现性能有优化,可以再次执行优化策略,直到能够达到性能最优。
其中,本实施例中的判断顺序不做限定,可以先判断是否存在优化,再判断是否为最优;也可以先判断是否为最优,再判断是否存在优化,判断的顺序设定可以根据实际使用需求进行设定。
另外,本实施例中对组件运行有优化,但可能未达到最优标准时的处理方式不做限定,可以进行调度算法的优化后再进行二次调整,或直接根据当前调度算法进行存储响应等,可以根据实际使用需要进行相应设定,本实施例中对此不再赘述。
需要说明的是,本实施例中对优化分析数据的类型数量不做限定,可以仅以一种数据作为判定标准,也可以同时结合多种类型数据进行判定以及反馈调节的设置,以上介绍中均以一种数据类型下的处理方式进行介绍,以下以两种数据类型下实现方式为例进行介绍,三种或更多数据类型下的判定以及反馈调节方式均可参照本实施例的介绍,在此不再赘述。等待调度优化策略实施之后,进行性能统计,查看性能是否有优化,具体地,计算其资源是否可以达到动态平衡,并性能最优;如发现性能未有优化,自动恢复原有配置并进行自查,查看是否有优化遗漏点,或错误信息,排除后,再进行二次优化,进行动态调整;如发现性能有优化,但各资源仍然有不均衡且未达到动态平衡,再次执行优化策略,直到能够达到性能最优。
本实施例中仅以上述优化分析数据类型以及相应的反馈调节方式进行介绍,当然,也可以根据其他的数据进行反馈调节,比如组件间的性能相互影响数据等,本实施例中对其他数据类型下的反馈调节方式不再赘述,均可参照上述介绍。
基于上述介绍,本实施例介绍的存储***调度优化方法根据不同的业务模型进行存储处理单元的优化,从而达到性能最优,解决了目前存储性能优化单一、需要实施工程师经验的问题,提高了存储的可用性,安全性及可靠性。
请参考图2,图2为本实施例提供的存储***调度优化装置的结构框图;该装置可以包括:组件确定单元210、优化分析单元220以及资源调整单元230。本实施例提供的存储***调度优化装置可与上述存储***调度优化方法相互对照。
其中,组件确定单元210主要用于当接收到调度优化指令时,确定存储***中待优化组件;
优化分析单元220主要用于调用调度算法对待优化组件进行组件优化分析,得到组件优化策略;其中,调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种;
资源调整单元230主要用于根据组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少;其中,组件权重根据组件的业务性能统计数据分析得到。
本实施例提供一种存储***调度优化设备,包括:存储器以及处理器。
其中,存储器用于存储程序;
处理器用于执行程序时实现如上述实施例介绍的存储***调度优化方法的步骤,具体可参照上述存储***调度优化方法的介绍。
请参考图3,为本实施例提供的存储***调度优化设备的结构示意图,该存储***调度优化设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在存储***调度优化设备301上执行存储介质330中的一系列指令操作。
存储***调度优化设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作***341,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
上面图1所描述的存储***调度优化方法中的步骤可以由本实施例介绍的存储***调度优化设备的结构实现。
本实施例公开一种可读存储介质,其上存储有程序,程序被处理器执行时实现如上述实施例介绍的存储***调度优化方法的步骤,具体可参照上述实施例中对存储***调度优化方法的介绍。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的存储***调度优化方法、装置、设备及可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (7)
1.一种存储***调度优化方法,其特征在于,包括:
当接收到调度优化指令时,确定存储***中待优化组件;
调用调度算法对所述待优化组件进行组件优化分析,得到组件优化策略;其中,所述调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种;
根据所述组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少;其中,所述组件权重根据组件的业务性能统计数据分析得到;
其中,当所述调度算法包括:资源需求分组时,调用调度算法对所述待优化组件进行组件优化分析,包括:
将存储***中各组件根据相应应用场景下的资源需求进行分组,生成若干资源需求组;
向各所述资源需求组分配指定的资源量,以便各所述资源需求组调用对应的资源量进行存储处理;
根据所述待优化组件所属的资源需求组以及对应的资源量生成基于资源需求类型的组件优化策略;
其中,当所述调度算法包括:动态调核时,调用调度算法对所述待优化组件进行组件优化分析,包括:
确定存储***中各组件的IO数据读写情况;
根据所述IO数据读写情况确定存储***中各组件对于各种资源的使用需求;
根据所述使用需求确定所述各组件对于各种资源的资源利用权重;
根据所述待优化组件的资源利用权重生成基于资源利用权重的组件优化策略;
其中,当所述调度算法包括:优化路径时,调用调度算法对所述待优化组件进行组件优化分析,包括:
根据客户端的存储压力类型确定所述待优化组件的组件响应路径;
根据所述组件响应路径生成基于响应路径的组件优化策略。
2.如权利要求1所述的存储***调度优化方法,其特征在于,在根据所述组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少之后,还包括:
对调整后的存储***中各组件进行运行情况统计,将统计得到的数据作为优化分析数据;
根据所述优化分析数据对所述调度算法进行反馈调节。
3.如权利要求2所述的存储***调度优化方法,其特征在于,所述优化分析数据包括:组件调用的资源数据,则相应地,根据所述优化分析数据对所述调度算法进行反馈调节,包括:
根据所述资源数据判定当前组件的资源调用是否达到动态平衡;
若是,记录所述调度算法,以便后续调用。
4.如权利要求2所述的存储***调度优化方法,其特征在于,所述优化分析数据包括:组件运行性能数据;则相应地,根据所述优化分析数据对所述调度算法进行反馈调节,包括:
根据所述组件运行性能数据判断当前组件运行性能是否达到最优状态或未优化状态;
若达到最优状态,记录所述调度算法,以便后续调用;
若未优化,恢复原有组件运行配置,并启动优化自查,以确定优化失败原因。
5.一种存储***调度优化装置,其特征在于,包括:
组件确定单元,用于当接收到调度优化指令时,确定存储***中待优化组件;
优化分析单元,用于调用调度算法对所述待优化组件进行组件优化分析,得到组件优化策略;其中,所述调度算法包括:资源需求分组、动态调核以及优化路径中的至少一种;
资源调整单元,用于根据所述组件优化策略,调用组件权重对当前***组件调用的资源进行加权增加或减少;其中,所述组件权重根据组件的业务性能统计数据分析得到;
其中,当所述调度算法包括:资源需求分组时,所述优化分析单元,具体用于:
将存储***中各组件根据相应应用场景下的资源需求进行分组,生成若干资源需求组;
向各所述资源需求组分配指定的资源量,以便各所述资源需求组调用对应的资源量进行存储处理;
根据所述待优化组件所属的资源需求组以及对应的资源量生成基于资源需求类型的组件优化策略;
其中,当所述调度算法包括:动态调核时,所述优化分析单元,具体用于:
确定存储***中各组件的IO数据读写情况;
根据所述IO数据读写情况确定存储***中各组件对于各种资源的使用需求;
根据所述使用需求确定所述各组件对于各种资源的资源利用权重;
根据所述待优化组件的资源利用权重生成基于资源利用权重的组件优化策略;
其中,当所述调度算法包括:优化路径时,所述优化分析单元,具体用于:
根据客户端的存储压力类型确定所述待优化组件的组件响应路径;
根据所述组件响应路径生成基于响应路径的组件优化策略。
6.一种存储***调度优化设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述程序时实现如权利要求1至4任一项所述存储***调度优化方法的步骤。
7.一种可读存储介质,其特征在于,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如权利要求1至4任一项所述存储***调度优化方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911332553.6A CN111124310B (zh) | 2019-12-22 | 2019-12-22 | 存储***调度优化方法及相关组件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911332553.6A CN111124310B (zh) | 2019-12-22 | 2019-12-22 | 存储***调度优化方法及相关组件 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111124310A CN111124310A (zh) | 2020-05-08 |
CN111124310B true CN111124310B (zh) | 2023-01-10 |
Family
ID=70501363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911332553.6A Active CN111124310B (zh) | 2019-12-22 | 2019-12-22 | 存储***调度优化方法及相关组件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111124310B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118034613B (zh) * | 2024-04-11 | 2024-06-11 | 深圳市铨兴科技有限公司 | 一种存储空间数据智能调度方法、***及存储器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616174A (zh) * | 2009-07-09 | 2009-12-30 | 浪潮电子信息产业股份有限公司 | 一种存储***io处理路径动态跟踪实现优化***性能的方法 |
CN105657064A (zh) * | 2016-03-24 | 2016-06-08 | 东南大学 | 基于虚拟节点存储优化的Swift负载均衡方法 |
CN106126407A (zh) * | 2016-06-22 | 2016-11-16 | 西安交通大学 | 一种针对分布式存储***的性能监控调优***及方法 |
CN107515787A (zh) * | 2017-08-31 | 2017-12-26 | 广东欧珀移动通信有限公司 | 资源配置方法及相关产品 |
-
2019
- 2019-12-22 CN CN201911332553.6A patent/CN111124310B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616174A (zh) * | 2009-07-09 | 2009-12-30 | 浪潮电子信息产业股份有限公司 | 一种存储***io处理路径动态跟踪实现优化***性能的方法 |
CN105657064A (zh) * | 2016-03-24 | 2016-06-08 | 东南大学 | 基于虚拟节点存储优化的Swift负载均衡方法 |
CN106126407A (zh) * | 2016-06-22 | 2016-11-16 | 西安交通大学 | 一种针对分布式存储***的性能监控调优***及方法 |
CN107515787A (zh) * | 2017-08-31 | 2017-12-26 | 广东欧珀移动通信有限公司 | 资源配置方法及相关产品 |
Also Published As
Publication number | Publication date |
---|---|
CN111124310A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111629061B (zh) | 一种基于Kubernetes的推理服务*** | |
US10440136B2 (en) | Method and system for resource scheduling | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
CN111818159B (zh) | 数据处理节点的管理方法、装置、设备及存储介质 | |
US20050154576A1 (en) | Policy simulator for analyzing autonomic system management policy of a computer system | |
CN107992362B (zh) | 自动化性能测试的方法、装置及*** | |
US8533731B2 (en) | Apparatus and method for distrubuting complex events based on correlations therebetween | |
US20140115603A1 (en) | Method, apparatus, and system for scheduling processor core in multiprocessor core system | |
CN110362402B (zh) | 一种负载均衡方法、装置、设备及可读存储介质 | |
CN111160873A (zh) | 基于分布式架构的跑批处理装置及方法 | |
US11025709B2 (en) | Load processing method and apparatus | |
CN110659135A (zh) | 一种raid巡检方法、装置、电子设备及可读存储介质 | |
CN107193649B (zh) | 一种基于numa***的任务调度方法及装置 | |
CN110247812A (zh) | 一种多集群管理方法、装置、***及相关组件 | |
CN113672345A (zh) | 一种基于io预测的云虚拟化引擎分布式资源调度方法 | |
CN111124310B (zh) | 存储***调度优化方法及相关组件 | |
CN110543355A (zh) | 一种自动均衡云平台资源的方法 | |
CN113590285A (zh) | 一种用于线程池参数动态设置的方法、***及设备 | |
CN116248699B (zh) | 多副本场景下的数据读取方法、装置、设备及存储介质 | |
CN107872480B (zh) | 大数据集群数据平衡方法和装置 | |
CN111736989A (zh) | 多模式分布式集群gpu指标检测方法及*** | |
CN111949494A (zh) | 一种任务调控方法、装置及相关设备 | |
CN110502495A (zh) | 一种应用服务器的日志收集方法及装置 | |
CN115277736A (zh) | 分布式块存储的数据自动均衡方法及装置 | |
CN115190027A (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 |