CN110968258B - 存储盘的控制方法及设备 - Google Patents

存储盘的控制方法及设备 Download PDF

Info

Publication number
CN110968258B
CN110968258B CN201811161124.2A CN201811161124A CN110968258B CN 110968258 B CN110968258 B CN 110968258B CN 201811161124 A CN201811161124 A CN 201811161124A CN 110968258 B CN110968258 B CN 110968258B
Authority
CN
China
Prior art keywords
storage disk
storage
disk
window
group
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
CN201811161124.2A
Other languages
English (en)
Other versions
CN110968258A (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 CN201811161124.2A priority Critical patent/CN110968258B/zh
Publication of CN110968258A publication Critical patent/CN110968258A/zh
Application granted granted Critical
Publication of CN110968258B publication Critical patent/CN110968258B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0625Power saving in 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/067Distributed 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

存储盘的控制方法及设备
技术领域
本申请涉及存储技术领域,特别涉及一种存储盘的控制方法及设备。
背景技术
随着存储技术的发展,存储系统中可以包括大量的存储盘,可以上电存储盘或下电存储盘,从而控制存储盘的运行过程。在存储系统运行中,会上电存储系统中的所有存储盘。当接收到工作请求后,会从上电的所有存储盘中,确定该工作请求的目的存储盘,处理该工作请求。
存储系统消耗的电能过多,导致电费成本过高。
发明内容
本申请实施例提供了一种存储盘的控制方法及设备,能够解决相关技术中存储系统消耗的电能过多的技术问题。所述技术方案如下:
第一方面,提供了一种存储盘的控制方法,所述方法包括:
从存储盘组中确定至少一个存储盘,所述存储盘组包括多个存储盘,所述至少一个存储盘是所述多个存储盘中的一部分;
上电所述至少一个存储盘;
接收工作请求,确定所述工作请求的目的存储盘;
确定所述目的存储盘属于所述至少一个存储盘;
处理所述工作请求。
本实施例提供的方法,通过从存储盘组中确定一部分存储盘,上电一部分存储盘,处理这一部分存储盘的工作请求,可以避免其余存储盘处于上电状态时消耗的电能,相对于上电整个存储系统中所有存储盘来说,可以达到节约电能的效果,并且相对于处理整个存储系统中所有存储盘的工作请求来说,可以减轻存储系统的业务负载,节约存储系统的处理开销。
可选地,所述方法还包括:
确定所述目的存储盘不属于所述至少一个存储盘;
缓存所述工作请求。
可选地,所述从存储盘组中确定至少一个存储盘,上电所述至少一个存储盘,包括:
采用存储盘窗口在所述存储盘组中滑动;
上电当前存储盘窗口内的所述至少一个存储盘。
基于这种可选方式,通过滑动存储盘窗口的机制来控制存储盘,通过将存储盘窗口在存储盘组中进行滑动,当存储盘位于存储盘窗口外时,可以将目的存储盘为该存储盘的每个工作请求缓存起来,而随着存储盘窗口的滑动,当存储盘位于存储盘窗口内时,则上电存储盘,并对预先缓存的目的存储盘为该存储盘的每个工作请求进行统一处理,因此,可以将分散在各个时间点的工作请求,集中在存储盘处于存储盘窗口内的时间段进行处理,也就可以在任一存储盘的上电时间段中,批量化地同时处理目的存储盘为该存储盘的大量工作请求,因此,可以提高存储盘在上电时间段中处理工作请求的效率,减少存储盘的上电次数,进而降低存储盘的上电频率,保证存储盘的性能以及可靠性。
可选地,所述采用存储盘窗口在所述存储盘组中滑动,上电当前存储盘窗口内的所述至少一个存储盘包括:
采用存储盘窗口在所述存储盘组包括的多个存储盘对应的存储盘标识中滑动;
上电所述当前存储盘窗口内的存储盘标识对应的所述至少一个存储盘。
可选地,所述上电当前存储盘窗口内的所述至少一个存储盘之后,所述方法还包括:
当经过滑动时延时,切换存储盘窗口。
可选地,所述方法还包括:
在所述当前存储盘窗口内的每个存储盘的存储空间占用率达到阈值时,切换存储盘窗口。
可选地,所述方法还包括:
切换存储盘窗口后,下电切换前的所述存储盘窗口内的至少一个存储盘。
基于这种可选方式,当切换存储盘窗口后,即可对原先处于存储盘窗口中的存储盘进行下电,从而节省电力成本,达到节能的效果。
可选地,所述缓存所述工作请求,包括:
将所述工作请求存入缓存队列;
所述方法还包括:
确定所述工作请求的目的存储盘已经上电;
从所述缓存队列中获取所述工作请求,处理所述工作请求。
可选地,所述从存储盘组中确定至少一个存储盘之前,所述方法还包括:
对存储系统的存储盘进行分组,得到至少一个所述存储盘组。
可选地,所述对存储系统的存储盘进行分组,得到至少一个所述存储盘组,包括:
将属于同一纠删码EC组的至少一个存储盘,划分至同一所述存储盘组。
可选地,所述存储盘窗口的滑动时延与所述缓存队列中工作请求的数量负相关。
可选地,所述至少一个工作请求包括至少一个输入输出IO请求、至少一个存储盘检测请求、至少一个数据校验请求以及至少一个存储空间回收请求中的至少一项。
可选地,所述至少一个存储盘用于存储冷数据。
基于这种可选方式,可以应用在存储冷数据的场景中,可以通过存储盘窗口的尺寸,控制冷存储系统中处于上电状态的存储盘总数量,从而节约冷存储系统的电费成本。
第二方面,提供了一种存储盘管理设备,所述存储盘管理设备用于执行上述存储盘的控制方法。具体地,所述存储盘管理设备包括用于执行上述第一方面或第一方面的任一种可选方式所述的存储盘的控制方法的功能模块。
第三方面,提供一种存储盘管理设备,所述存储盘管理设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现上述第一方面或第一方面的任一种可选方式所述的存储盘的控制方法所执行的操作。
第四方面,提供了一种存储系统,包括至少一个存储盘管理设备以及至少一个存储盘组,每个存储盘组包括多个存储盘,所述至少一个存储盘管理设备包括处理器和存储器,所述至少一个存储盘管理设备的处理器用于执行第一方面或第一方面的任意可选方式提供的存储盘的控制方法。
第五方面,提供一种非瞬态的可读存储介质,所述非瞬态的可读存储介质被存储系统中的至少一个存储盘管理设备执行时,所述至少一台存储盘管理设备执行前述第一方面或第一方面的任意可选方式中提供的存储盘的控制方法,所述存储系统包括所述至少一个存储盘管理设备以及至少一个存储盘组,每个存储盘组包括多个存储盘。所述存储介质中存储了程序。所述存储介质的类型包括但不限于易失性存储器,例如随机访问存储器,非易失性存储器,例如快闪存储器、硬盘(英文:hard disk drive,缩写:HDD)、固态硬盘(英文:solid state drive,缩写:SSD)。
第六方面,提供了一种包含指令的计算机程序产品,所述存储盘管理设备程序产品被存储系统中至少一台存储盘管理设备执行时,所述至少一台存储盘管理设备执行前述第一方面或第一方面的任意可选方式中提供的存储盘的控制方法,所述存储系统包括所述至少一个存储盘管理设备以及至少一个存储盘组,每个存储盘组包括多个存储盘。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面或第一方面的任意可选方式中提供的存储盘的控制方法的情况下,可以下载该计算机程序产品并在存储盘管理设备上执行该计算机程序产品。
第七方面,提供了一种芯片,所述芯片包括处理器和/或程序指令,当所述芯片运行时,实现上述第一方面或第一方面的任一种可选方式所述的存储盘的控制方法。
附图说明
图1是本申请实施例提供的一种存储系统的架构图;
图2是本申请实施例提供的一种存储系统的架构图;
图3是本申请实施例提供的一种存储系统的架构图;
图4是本申请实施例提供的一种存储系统的架构图;
图5是本申请实施例提供的一种存储系统的架构图;
图6是本申请实施例提供的一种存储系统的架构图;
图7是本申请实施例提供的一种存储盘的控制方法的流程图;
图8是本申请实施例提供的一种划分存储盘组的示意图;
图9是本申请实施例提供的一种向存储盘组写数据的示意图;
图10是本申请实施例提供的一种存储盘窗口的滑动示意图;
图11是本申请实施例提供的一种存储盘窗口的滑动示意图;
图12是本申请实施例提供的一种存储盘窗口的滑动示意图;
图13是本申请实施例提供的一种将工作请求存入缓存队列的示意图;
图14是本申请实施例提供的一种存储盘的控制方法的流程图;
图15是本申请实施例提供的一种存储盘的控制方法的流程图;
图16是本申请实施例提供的一种存储盘管理设备的结构示意图;
图17是本申请实施例提供的一种存储盘管理设备的结构示意图;
图18是本申请实施例提供的一种存储盘管理设备的结构示意图;
图19为本申请实施例提供的一种存储系统的结构示意图;
图20为本申请实施例提供的一种存储系统的结构示意图。
图21为本申请实施例提供的一种存储系统的结构示意图;
图22为本申请实施例提供的一种存储系统的结构示意图。
具体实施方式
本申请中包含“第一”、“第二”、“第n”的各个术语仅是为了区分描述,不同术语之间不具有逻辑或时序上的依赖关系,也不应理解为明示或暗示数量以及相对重要性。
图1是本申请实施例提供的一种存储系统的架构图,该存储系统包括存储盘管理设备以及存储盘组。该存储盘组包括多个存储盘,该存储盘管理设备可以用于执行下述方法实施例提供的存储盘的控制方法,以控制该多个存储盘。
该存储盘管理设备可以为服务器或终端设备,该终端设备可以为手机、笔记本、服务器、台式电脑等。存储盘可以任意具有数据存储功能的盘。举例来说,存储盘可以是磁盘、固态硬盘(英文:solid state drive,缩写:SSD)、硬盘(英文:hard disk drive,缩写:HDD)等。存储盘为物理存储盘,也可以是逻辑上的存储盘,例如可以为多个物理存储盘的组合,又如可以为一个或多个物理存储盘上多个存储空间的组合。可选地,存储盘可以用于存储冷数据,相应地,图1所示的存储系统可以为冷存储系统,例如冷存储云服务。其中,冷数据是指访问频率较低的数据。举例来说,冷数据可以是备份数据、归档数据等。
存储盘可以安装在服务器上。例如,服务器可以内置或外接存储盘框,该存储盘可以插入至存储盘框中。举例来说,该存储盘框可以为高密存储盘框。又如,服务器可以配置总线,存储盘与该总线连接。举例来说,该总线可以为高速串行计算机扩展总线标准(英文:peripheral component interconnect express,简称:PCIe)总线或外设部件互连标准(英文:peripheral component interconnect,简称:PCI)总线。
在存储系统的系统层次中,一种通信网络中可以部署一个或多个集群,一个集群可以包括至少一个机房,一个机房可以包括至少一个机架,一个机架可以包括至少一个服务器,一个服务器可以连接至少一个存储盘框,一个存储盘框可以插入至少一个存储盘。结合存储系统的具体系统层次,本实施例提供的存储系统包括而不限于以下(1)至(4)。
(1)存储盘组的不同存储盘所处的服务器可以位于不同的机架上,相应地,存储盘管理设备可以控制不同机架上的服务器的存储盘。例如,存储盘组的第1个存储盘位于机架1的服务器1上,存储盘组的第2个存储盘位于机架2上的服务器2上。当然,存储盘组的不同存储盘所处的服务器也可以位于相同的机架上。
(2)存储盘组的不同存储盘所处的服务器可以位于不同的机房中,相应地,存储盘管理设备可以控制不同机房中的服务器的存储盘。例如,存储盘组的第1个存储盘位于机房1的服务器1上,存储盘组的第2个存储盘位于机房2上的服务器2上。当然,存储盘组的不同存储盘所处的服务器也可以位于相同的机房上。
(3)存储盘组的不同存储盘所处的服务器可以位于不同的集群上,相应地,存储盘管理设备可以控制不同集群中服务器的存储盘。例如,存储盘组的第1个存储盘位于机房1的服务器1上,存储盘组的第2个存储盘位于机房2上的服务器2上。当然,存储盘组的不同存储盘所处的服务器也可以位于相同的机房上。
(4)存储盘组的不同存储盘可以位于不同的通信网络中,相应地,存储盘管理设备可以控制不同通信网络中服务器的存储盘。例如,存储盘组的第1个存储盘位于公有云上的服务器1上,存储盘组的第2个存储盘位于私有云上的服务器2上。当然,存储盘组的不同存储盘所处的服务器也可以位于相同的通信网络上。
可选地,图1所示的存储系统可以提供为分布式系统。具体来说,该分布式系统中的存储盘管理设备以及至少一个存储盘可以分别部署在不同的数据中心。
可选地,上述图1仅是以存储盘管理设备为独立的设备为例,可选地,如图2所示,存储盘管理设备也可以为存储系统中的任一服务器,该服务器可以包括存储盘组,该服务器中的存储盘组可以包括多个存储盘。在一个示例性场景中,可以将服务器集群中的任一服务器部署为存储盘管理设备,该服务器采用一部分计算资源运行存储盘组,采用另一部分计算资源执行下述实施例提供的存储盘的控制方法,以控制自身的存储盘组以及服务器集群中除了该服务器以外的其他服务器中的存储盘。
可选地,如图3所示,该存储盘管理设备可以运行在云环境中,具体可以为云环境中的云存储盘管理设备。虽然图3未示出,该存储盘管理设备也可以运行在边缘环境中,具体可以为边缘环境中的边缘存储盘管理设备。其中,该云存储盘管理设备可以为服务器,边缘存储盘管理设备可以为服务器。该存储盘可以运行在云环境中,具体可以位于云环境中的一个或多个云存储盘管理设备上。该存储盘也可以运行在边缘环境中,具体可以位于边缘环境中的一个或多个边缘存储盘管理设备上。该存储盘也可以运行在终端环境中,具体为终端环境中的一个或多个终端设备上。
可选地,上述图3仅是以存储盘管理设备为独立的设备为例,参见图4,存储盘管理设备也可以为存储系统中的任一服务器,该服务器可以包括存储盘组,该服务器中的存储盘组可以包括多个存储盘。该服务器可以运行在云环境、边缘环境或终端环境中。在一个示例性场景中,可以将服务器集群中的任一服务器部署为存储盘管理设备,该服务器采用一部分计算资源运行存储盘组,采用另一部分计算资源执行下述实施例提供的存储盘的控制方法,以控制自身的存储盘组以及计算集群在云环境、边缘环境或终端环境中除了该服务器以外的其他服务器中的存储盘。
可选地,存储盘组的不同存储盘可以位于同一计算环境中,举例来说,若存储系统部署在云环境,该存储系统可以提供为云存储系统。其中,该计算环境可以包括云环境、边缘环境以及终端环境中的至少一项。该云环境可以包括公有云、私有云以及混合云中的至少一项。当然,存储盘组的不同存储盘可以位于不同的计算环境中。举例来说,存储盘组的第1个存储盘位于云环境上的服务器1上,存储盘组的第2个存储盘位于边缘环境上的服务器2上。可选地,当然,该存储系统也可以位于线下网络中。可选地,存储盘管理设备和存储盘组的不同存储盘可以位于相同或不同的计算环境中,在此不做赘述。
可选地,参见图5,存储系统可以包括部署在不同计算环境的存储管理设备以及存储盘组,每个计算环境中的存储管理设备用于控制对应计算环境中的存储盘组,例如云环境的存储管理设备用于控制云环境中的存储盘组,终端环境中的存储管理设备用于控制终端环境中的存储盘组,在此不做赘述。
存储盘管理设备可以包括多个模块,如图6所示,该存储盘管理设备的不同模块可以分别部署在不同环境中。例如,存储盘管理设备的各个模块可以分别部署在云环境、边缘环境以及终端环境中,则该云环境、边缘环境以及终端环境可以分别运行存储盘管理设备的一个或多个模块。又如,存储盘管理设备的各个模块可以分别部署在云环境、边缘环境以及终端环境中的任意两种环境中,则该云环境、边缘环境以及终端环境中的任意两种环境可以分别运行存储盘管理设备的一个或多个模块。
可选地,在图1至图6中任一项或多项所示的存储系统中,存储盘管理设备可以部署在该存储系统的控制节点(英文:controller)上,存储盘管理设备可以对该存储系统的每个存储盘的上电过程、工作请求处理过程以及下电过程进行控制,每个存储盘可以在该存储盘管理设备的控制下,进行上电、工作请求处理以及下电。
图7是本申请实施例提供的一种存储盘的控制方法的流程图,该实施例以存储盘管理设备执行为例进行描述,包括以下步骤:
701、存储盘管理设备从存储盘组中确定至少一个存储盘,上电该至少一个存储盘。
存储盘组可以包括多个存储盘,从存储盘组中确定的至少一个存储盘是存储盘组的多个存储盘中的一部分。确定出的至少一个存储盘的数量小于存储盘组中的存储盘总数量。以数学的方式表达,假设存储盘组中包括a个存储盘,可以从a个存储盘中确定b个存储盘,a和b均为正整数,且a小于b。存储盘组可以为逻辑上的存储盘组合,存储盘组的每个存储盘可以位于不同服务器中,可以部署在不同的地点。
可选地,存储盘管理设备可以存储存储盘组包括的多个存储盘对应的存储盘标识,可以从多个存储盘标识中确定至少一个存储盘标识,将该至少一个存储盘标识对应的至少一个存储盘,作为确定出的至少一个存储盘。
可选地,存储盘组可以包括以下(1)至(2)中任一项或多项的组合:
(1)存储盘组可以是存储系统中任意多个存储盘的组合。在一种可能的实现中,存储盘组可以包括存储系统中的所有存储盘。具体来说,可以将存储系统中的所有存储盘作为存储盘组。在另一种可能的实现中,可以按照任意选取方式,从存储系统中选择任意数量的存储盘,作为存储盘组。
(2)存储盘组可以是对存储系统中的多个存储盘进行划分后得到的组合。
可以将存储系统划分为至少一个存储盘组。例如,请参见图8,可以将服务器1的多个存储盘、服务器2的多个存储盘、服务器3的多个存储盘以及服务器4的多个存储盘组成一个存储盘组。
关于划分存储盘组的方式,可选地,可以将属于同一纠删码(英文:erasure code,缩写:EC)组的至少一个存储盘,划分至同一存储盘组。其中,每个存储盘组可以包括一个或多个EC组的存储盘。其中,EC组用于存储EC条带,EC组的每个存储盘用于存储EC条带中的数据块或校验块。在一个示例性场景中,假设EC条带中包括m个数据块以及k个校验块,相应地,EC组中包括m个数据块对应的m个存储盘以及k个校验块对应的k个存储盘,该m个存储盘中的每个存储盘用于存储一个数据块,该k个存储盘中的每个存储盘用于存储一个校验块。在该示例性场景中,可以将EC组中的m个存储盘划分至同一存储盘组。另外,也可以将EC组中的m个存储盘以及该k个存储盘划分至同一存储盘组。其中,m为正整数,k为正整数。
相应地,可以确定至少一个EC组中的存储盘,上电至少一个EC组中的存储盘。例如,对于至少一个EC组中的每个EC组,可以确定该EC组中存储EC条带中m个数据块的存储盘,上电m个存储盘。又如,对于至少一个EC组中的每个EC组,可以确定该EC组中存储EC条带中m个数据块的存储盘以及k个校验块的存储盘,上电m+k个存储盘。
通过将同一EC组的至少一个存储盘划分至同一存储盘组,至少可以达到以下效果:
对于任一EC组来说,通过确定EC组中存储EC条带中m个数据块的存储盘,上电m个存储盘,只需对m个存储盘上电一次,即可读取到EC条带中的每个数据块,以便将读取的数据发送给客户端,从而完成读取数据的工作请求,效率较高。另外,在数据恢复或其他需要读取校验块中的数据业务场景中,通过确定EC组中存储EC条带中m个数据块的存储盘以及k个校验块的存储盘,上电m+k个存储盘,只需对m+k个存储盘上电一次,即可读取到EC条带中的每个数据块和每个校验块,从而根据每个数据块和每个校验块进行数据恢复或执行其他业务,效率较高。
可选地,当确定至少一个存储盘组后,可以向该至少一个存储盘组的存储盘写数据,以使该至少一个存储盘组的存储盘存储数据。可选地,对于至少一个存储盘组中的每个存储盘组,可以向该存储盘组的每个存储盘写数据。当该存储盘组的每个存储盘的存储空间占用率达到阈值时,向存储盘组的下一个存储盘组的每个存储盘写数据。其中,存储空间占用率可以为存储盘中已占用的存储空间与存储盘存储容量之间的比值。存储盘的存储空间占用率越大,表明存储盘越满。若存储盘已经写满,则存储盘的存储空间占用率为100%。
可选地,可以按照该至少一个存储盘组的顺序,依次向每个存储盘组写数据。具体来说,可以向该至少一个存储盘组中的第一个存储盘组的存储盘写数据,当该存储盘组的每个存储盘的存储空间占用率未达到阈值时,继续向第一个存储盘组写数据。当该存储盘组的每个存储盘的存储空间占用率达到阈值时,向第二个存储盘组写数据。当该第二存储盘组的每个存储盘的存储空间占用率未达到阈值时,继续向第二个存储盘组写数据。当第二个存储盘组的每个存储盘的存储空间占用率达到阈值时,向第三个存储盘组写数据。依次类推,当最后一个存储盘组的每个存储盘的存储空间占用率达到阈值时,写数据完成。
以存储空间占用率为100%为例,对于至少一个存储盘组中的每个存储盘组,可以当该存储盘组的每个存储盘写满时,向该存储盘组的下一个存储盘组中的每个存储盘写数据。具体来说,可以检测该存储盘组的每个存储盘的存储空间占用率是否达到100%,当该存储盘组的每个存储盘的存储空间占用率达到100%时,向存储盘组的下一个存储盘组写数据,当该存储盘组的每个存储盘的存储空间占用率未达到100%时,则继续向该存储盘组的每个存储盘写数据。其中,关于检测该存储盘组的每个存储盘的存储空间占用率是否达到100%的方式,对于该存储盘组的每个存储盘,可以获取该存储盘的存储容量,当该存储盘中已占用的存储空间达到该存储容量时,确定该存储盘的存储空间占用率达到100%。当然,将存储盘组的每个存储盘写满仅是示例性描述,另外,该阈值也可以为小于100%的任意数值,例如为90%,本实施例对阈值的具体数值不做限定。
示例性地,请参见图9,假设通过对存储系统的存储盘进行分组,得到了存储盘组1和存储盘组2,可以先向存储盘组1的每个存储盘写数据,当将存储盘组1写满后,可以进行切换,向存储盘组2的每个存储盘写数据。
通过将存储盘组的每个存储盘的存储空间均写满时,再向下一个存储盘组写数据,同一存储盘组的每个存储盘的数据写入时间会相同或相近,从而保证同一时期的数据尽量集中存储在一个存储盘组中,那么,后续在存储盘窗口滑动过程中,可以减少读取一次数据需要滑动的步数,尽量让存储盘窗口滑动一次或很少的步数,即可完成读取数据的工作请求,从而提高读取数据的处理效率,减少存储盘组中存储盘的上下电频率。
关于获取待写入的数据的方式,可以接收至少一个客户端的写请求,解析至少一个写请求,得到至少一个写请求中携带的数据,作为待写入的数据。当然,也可以预先存储待写入的数据,本实施例对获取数据的方式不做限定。
可选地,可以采用哈希存储的方式,向每个存储盘组写数据。具体来说,对于至少一个存储盘组中的每个存储盘组,可以将该存储盘组映射为哈希空间。对于存储盘组中的每个存储盘,可以将存储盘映射为哈希空间中的哈希值区间。当获取到数据后,可以对数据的键(英文:key)进行哈希运算,得到数据的哈希值,确定该哈希值在哈希空间中所属的哈希值区间,确定该哈希值区间映射的存储盘,将数据存储至该存储盘上,如此,可以将数据均匀的散列存储至存储盘组中的每个存储盘上。通过这种数据写入方式,在保证存储盘组中的所有存储盘负载均衡的基础上,可以将数据散列排布的范围,从整个存储系统缩小为一个存储盘组,则在后续数据读取流程中,可以降低数据访问的存储盘的随机性,提高单个存储盘组的业务访问效率。
可选地,可以对存储盘组中的至少一个存储盘的顺序进行调整,将属于同一EC组的存储盘排列在存储盘组中相邻的位置,从而保证确定存储盘时,可以确定出属于同一EC组的至少一个存储盘。举例来说,假设EC条带中包括m个数据块以及k个校验块,可以将m个数据块对应的m个存储盘排列在存储盘组中相邻的位置,或者将m个数据块对应的m个存储盘以及该k个校验块对应的k个存储盘排列在存储盘组中相邻的位置。在一个示例性场景中,假设EC条带中包括3个数据块和2个校验块,该3个数据块分别存储在存储盘1、存储盘2和存储盘3中,可以将存储盘1作为存储盘组中的第一个存储盘,将存储盘2作为存储盘组中的第二个存储盘,将存储盘3作为存储盘组中的第三个存储盘。
可选地,可以对存储盘组中的至少一个存储盘的顺序进行调整,以使不同服务器的存储盘在存储盘组中位置不相邻。通过打乱存储盘组中存储盘标识的排列顺序,从而保证确定存储盘时,确定的存储盘来自不同的服务器,则处于上电状态的存储盘会分散在不同的服务器上,可以避免单个服务器处于上电状态的存储盘数量过多,也就可以避免单个服务器的电力负载过大,从而保证各个服务器的电力负载均衡。另外,通过对不同服务器上的存储盘统一地进行上下电管理以及工作请求的调度,可以满足分布式系统的业务处理需求。
可选地,上述步骤701可以包括下述步骤一至步骤二:
步骤一、采用存储盘窗口在该存储盘组中滑动。
存储盘窗口可以为逻辑上的虚拟窗口,可以通过软件代码实现。存储盘窗口可以为滑动窗口(英文:sliding window),存储盘窗口用于从存储盘组中选择待上电的存储盘。当存储盘窗口在存储盘组中滑动一个步长时,存储盘窗口可以覆盖存储盘组中的至少一个存储盘,可以将在当前存储盘窗口内的至少一个存储盘,作为确定出的存储盘。
在一种可能的实现中,存储盘窗口可以为尺寸一定、坐标变化的变量,存储盘窗口的尺寸可以确定当前存储盘窗口中的存储盘的数量,存储盘窗口的坐标的取值范围可以根据存储盘组的边界确定。
具体来讲,存储盘窗口的步长(英文:stride)是指存储盘窗口在一个滑动周期中,沿滑动方向滑动的最小单位。步长可以为一个或多个存储盘。示例性地,请参见图10,假设存储盘窗口初始处于图10所示的位置,此时存储盘1和存储盘7位于存储盘窗口的左边界,存储盘6和存储盘12位于存储盘窗口的右边界。如果存储盘窗口的步长为1,滑动方向为从左向右滑动,则存储盘窗口滑动一个步长后,存储盘2和存储盘8会位于存储盘窗口的左边界,存储盘13和存储盘19位于存储盘窗口的右边界。
存储盘窗口的尺寸(英文:size)可以为待上电的存储盘的数量。存储盘窗口的尺寸可以小于存储盘组中存储盘的总数量。例如,假设存储盘窗口的尺寸为a*b,则当切换一次存储盘窗口时,可以对切换后的存储盘窗口内的a*b个未上电的存储盘进行上电,并将切换前的存储盘窗口内的a*b个已上电的存储盘下电。其中,a和b为正整数。示例性地,假设存储盘窗口的尺寸为4*3,则当切换一次存储盘窗口后,可以对切换后的存储盘窗口内的a*b个未上电的存储盘进行上电,将切换前的存储盘窗口内的12个已上电的存储盘进行下电。在一个示例性场景中,请参见图10和图11,假设存储盘窗口切换前处于图10所示的位置,切换后处于图11所示的位置,当切换一次存储盘窗口后,当前存储盘窗口从图10变化为图11,此时可以对存储盘13至存储盘24进行上电,对存储盘1至存储盘12进行下电。
可选地,存储盘窗口的尺寸可以通过以下(1)至(3)中的任一项确定。
(1)存储盘窗口的尺寸可以根据存储系统的性能指标确定。例如,存储盘窗口的尺寸可以与性能指标正相关,性能指标越高,则存储盘窗口的尺寸可以设置的越大,从而保证存储盘窗口滑动过程中,一次上电的存储盘的总数量较多,则处理工作请求的存储盘的总数量也就越多,可以满足对存储系统的性能要求。同理地,性能指标越低,则存储盘窗口的尺寸可以设置的越小,从而保证存储盘窗口滑动过程中,一次上电的存储盘的总数量较少,从而节约存储系统的电能消耗。
(2)存储盘窗口的尺寸可以根据存储系统的节能指标确定。具体来说,节能指标可以包括同时处于上电状态的存储盘总数量的最大值,则存储盘窗口的尺寸可以不超过该同时处于上电状态的存储盘总数量的最大值。那么,通过存储盘窗口的尺寸,可以控制存储系统中处于上电状态的存储盘的总数量,令处于上电状态的存储盘的总数量可以满足节能指标的要求。举例来说,假设节能指标中要求存储系统中最多有12个存储盘同时处于上电状态,则可以将存储盘窗口的尺寸设置为6*2,则存储盘窗口滑动过程中,每次会对12个存储盘进行上电。
(3)存储盘窗口的尺寸可以根据存储系统中数据的存储方式确定。举例来说,可以根据EC条带中数据块的数量,设置存储盘窗口的尺寸。例如,假设EC条带中数据被划分为m个数据块,则存储盘窗口的尺寸可以设置为m的整数倍。
在一种可能的实现中,可以改变当前存储盘窗口在存储盘组中所处的位置,来实现切换存储盘窗口的功能。具体来说,在存储盘窗口的一个滑动周期中,起初当前存储盘窗口可以位于存储盘组中的第一个位置,当切换存储盘窗口一次或多次后,当前存储盘窗口会向存储盘组的最后一个位置滑动。随着存储盘窗口的滑动,位于当前存储盘窗口中的存储盘会不断变化,因此确定出的存储盘也会发生变化。示例性地,参见图10、图11和图12,在存储盘窗口的一个滑动周期中,起初当前存储盘窗口位于图10所示的位置,切换存储盘窗口后,当前存储盘窗口位于图11所示的位置,切换存储盘窗口后,当前存储盘窗口位于图12所示的位置。
其中,关于切换存储盘窗口的过程,可选地,可以将存储盘窗口的边界从上一个位置更新为该下一个位置,改变存储盘窗口的边界,存储盘窗口在存储器组中的位置会发生改变,从而实现存储盘窗口切换一次的效果。其中,存储盘窗口的边界可以包括左边界、右边界、上边界、下边界中的至少一项。
可选地,可以通过滑动存储盘窗口的机制,实现批量上电的功能。在一种可能的实现中,当切换存储盘窗口一次时,即可对当前存储盘窗口内的至少一个存储盘进行上电。示例性地,请参见图10、图11和图12,在存储盘窗口的一个滑动周期中,存储盘窗口可以起初位于图10所示的位置,当前存储盘窗口中具有存储盘1至存储盘12,则会对存储盘组中的存储盘1至存储盘12进行上电。切换存储盘窗口后,当前存储盘窗口为图11所示的位置,当前存储盘窗口中具有存储盘13至存储盘24,则会对存储盘组中的存储盘13至存储盘24进行上电。切换存储盘窗口后,当前存储盘窗口为图12所示的位置。当前存储盘窗口中具有存储盘25至存储盘36,则会对存储盘组中的存储盘25至存储盘36进行上电。
通过这种上电方式,可以将存储盘窗口作为对存储盘组一次上电的粒度,对存储盘组在当前存储盘窗口内的至少一个存储盘统一进行上电,实现分批上电的功能,相对于对各个存储盘分别进行上电处理的方式来说,可以一次对多个存储盘同时进行上电处理,上电效率较高,可以强化对存储系统中的存储盘进行上电的控制能力。
可选地,可以获取当前存储盘窗口中每个存储盘对应的存储盘的上下电状态,当任一存储盘处于下电状态时,则对该存储盘进行上电,当任一存储盘处于上电状态,则无需对该存储盘进行处理。可选地,可以确定当前存储盘窗口中每个存储盘的缓存的工作请求,如果该当前存储盘窗口中的存储盘具有缓存的工作请求,则对该存储盘进行上电,如果该当前存储盘窗口中的存储盘不具有缓存的工作请求,则无需对该存储盘进行处理。
可选地,可以实现定时对存储盘窗口进行滑动的功能。具体来说,可以在上电该当前存储盘窗口内的该至少一个存储盘之后,当经过滑动时延时,切换存储盘窗口。进一步地,在存储盘窗口的滑动过程中,可以每隔滑动时延,将存储盘窗口在存储盘标识上所处的位置从上一个位置切换为下一个位置,以实现存储盘窗口周期性滑动的功能。其中,该滑动时延为存储盘窗口在一个滑动周期中的滑动时延。滑动时延可以为上一次上电存储盘窗口中的存储盘的时间点与下一次上电存储盘窗口中的存储盘的时间点之间的时间间隔。滑动时延越短,则存储盘窗口在存储盘组中的滑动速度越快,滑动时延越长,则存储盘窗口在存储盘组中的滑动速度越慢。
可选地,可以对存储盘窗口进行循环滑动。具体来说,在当前存储盘窗口位于存储盘组中的最后一个位置时,可以切换存储窗口,将当前存储盘窗口从存储盘组的第一个位置,向存储盘组的最后一个位置滑动。其中,每当循环一次,则存储盘窗口会在存储盘组中滑动一个滑动周期,通过将循环的次数设置为多次,可以实现存储盘窗口在存储盘组中周期性滑动的效果。示例性地,参见图10、图11和图12,在一个滑动周期中,当存储盘窗口滑动至图12中所处的位置时,可以将存储盘窗口从图10中所处的位置开始,重新开始滑动。
可选地,采用存储盘窗口在该存储盘组中滑动,可以包括:采用存储盘窗口在该存储盘组包括的多个存储盘对应的存储盘标识中滑动。具体来说,存储盘组可以记录为多个存储盘对应的多个存储盘标识,可以采用存储盘窗口在多个存储盘标识中滑动,当存储盘窗口滑动一个步长时,当前存储盘窗口中会覆盖住至少一个存储盘标识,可以将当前存储盘窗口内的至少一个存储盘标识对应的至少一个存储盘,作为从存储盘组中确定出的至少一个存储盘。
其中,存储盘标识用于确定对应的存储盘,可以包括存储盘的ID、编号、名称、图标等。当前存储盘窗口内的存储盘标识为待上电的存储盘对应的存储盘标识,当前存储盘窗口外的存储盘标识为待下电的存储盘对应的存储盘标识。可选地,存储盘组对应的多个存储盘标识可以记录为矩阵,矩阵中的每个元素为存储盘标识,另外,存储盘组对应的多个存储盘标识可以记录为数组,数组中的元素具有下标。当然,还可以通过其它数据形式记录存储盘标识以及存储盘组,本实施例对此不做限定。
示例性地,参见图10,假设某个存储盘组包括36个存储盘,可以将存储盘组记录为2行18列的矩阵,将每个存储盘标识记录为矩阵中的每个元素,例如,可以将存储盘组中的存储盘20,记录为矩阵中的“20”。存储盘窗口可以在2行18列的矩阵中滑动,矩阵在当前存储盘窗口矩阵中的存储盘标识为确定出的存储盘标识。当然,图10仅是存储盘窗口滑动的示例,存储盘标识还可以具有其它数据结构或其他数据形式,例如4行9列的矩阵,又如36个元素的数组,在此不做赘述。
步骤二、上电当前存储盘窗口内的该至少一个存储盘。
可以根据当前存储盘窗口在存储盘组中所处的位置,获取当前存储盘窗口内的至少一个存储盘,上电该当前存储盘窗口内的至少一个存储盘。
举例来说,参见图11,对于存储盘1至存储盘36中的存储盘20来说,当存储盘20的标识“20”位于存储盘窗口内时,则存储盘管理设备会对存储盘20进行上电。
可选地,可以在该当前存储盘窗口内的每个存储盘的存储空间占用率达到阈值时,切换存储盘窗口。其中,确定当前存储盘窗口内的每个存储盘的存储空间占用率是否达到阈值的方式详见上文,在此不做赘述。
可选地,当存储盘窗口切换后,下电切换前的存储盘窗口内的至少一个存储盘。具体来说,当存储盘窗口切换后时,该切换前的存储盘窗口中的存储盘可以移出当前存储盘窗口的边界,因此该切换前的存储盘窗口中的存储盘会位于存储盘窗口外。此时,可以下电切换前的存储盘窗口内的至少一个存储盘,以使这些存储盘可以从上电状态切换为下电状态,从而节约耗费的电能。
举例来说,请参见图10、图11和图12,假设存储盘窗口从图10所示的位置切换为图11所示的位置,切换前的存储盘窗口内包括存储盘1至存储盘12,切换后的存储盘窗口内包括存储盘13至存储盘24,则存储盘窗口从图10所示的位置切换为图11所示的位置后,可以对存储盘1至存储盘12下电。同理地,存储盘窗口从图11所示的位置切换为图12所示的位置后,可以对存储盘13至存储盘24下电。
进一步地,可以下电存储盘组中除了当前存储盘窗口的存储盘以外的每个存储盘。也即是,下电当前存储盘窗口外的每个存储盘。举例来说,请参见图10、图11和图12,假设存储盘窗口从图10所示的位置切换为图11所示的位置,可以下电存储盘13至存储盘36。同理地,存储盘窗口从图11所示的位置切换为图12所示的位置后,可以下电存储盘1至存储盘12以及存储盘25至存储盘36。
通过这种下电方式,可以将存储盘窗口作为对逻辑存储盘分组一次下电的粒度,对当前存储盘窗口外的多个存储盘统一进行下电,以实现批量下电的功能,强化对存储系统中的存储盘进行下电的控制能力。可选地,对于当前存储盘窗口外的每个存储盘,可以获取存储盘的上下电状态,当存储盘处于上电状态时,则对该存储盘进行下电,当存储盘处于下电状态,则无需对该存储盘进行处理。可选地,可以确定是否缓存了目的存储盘为该存储盘的缓存的工作请求,当缓存了目的存储盘为该存储盘的缓存的工作请求,则下电该存储盘,当未缓存目的存储盘为该存储盘的缓存的工作请求,则可以继续处理该存储盘缓存的工作请求,当存储盘的工作请求处理完成后,下电该存储盘。
上述步骤是以存储盘窗口的一个滑动周期为例进行描述。可选地,随着存储盘窗口的滑动,可以重复执行上述步骤,即,当存储盘再次位于存储盘窗口外时,可以下电存储盘,重新缓存目的存储盘为该存储盘的工作请求,当存储盘再次位于存储盘窗口内时,则上电该存储盘,并处理重新缓存的工作请求。依次类推,存储盘窗口可以周期性地在存储盘组中进行滑动,每当经过存储盘窗口的一个滑动周期,即可对存储盘执行一次控制流程。由此可见,在存储盘窗口的一个滑动周期时,存储盘只需位于存储盘窗口内的时间段内进行上电,而无需为各个工作请求依次上电,减少上电的次数,降低上电频率。另外,在存储盘窗口的一个滑动周期时,存储盘可以在位于存储盘窗口外的时间段内均处于下电状态,而无需为处理工作请求结束的动作下电,也无需随着其他存储盘的上电而被淘汰,因此减少了下电的次数,降低下电频率。
702、存储盘管理设备接收工作请求,确定该工作请求的目的存储盘。
关于工作请求的类型,工作请求可以包括输入输出(英文:input output,缩写:IO)请求、存储盘检测请求、数据校验请求以及存储空间回收请求中的至少一项。该IO请求可以包括读请求以及写请求。该读请求用于指示从目的存储盘读取数据,该写请求用于指示向目的存储盘写入数据。存储盘检测请求用于检测目的存储盘的健康状况,例如可以用于检测目的存储盘是否存在坏道。数据校验请求用于对目的存储盘中存储的数据进行校验。例如,数据校验请求可以为数据一致性检查工作请求。存储空间回收请求用于回收目的存储盘中已占用的存储空间。
关于工作请求的来源,存储盘的工作请求可以由至少一个客户端、至少一个后台任务或至少一个前台任务生成,并由至少一个客户端、至少一个后台任务或至少一个前台任务发送给存储盘管理设备,存储盘管理设备可以接收至少一个客户端、至少一个后台任务或至少一个前台任务发送的工作请求,从而得到工作请求。
结合存储盘的工作请求的具体类型,可选地,本步骤可以包括以下(1)至(4)中任一项或多项的组合。
(1)客户端可以生成IO请求,向存储盘管理设备发送IO请求。存储盘管理设备可以接收该IO请求,对该IO请求进行解析,得到IO请求携带的数据的key,可以对数据的key进行哈希运算,得到数据的哈希值,确定该哈希值在哈希空间中所属的哈希值区间。可以根据哈希值区间与存储盘之间的对应关系,确定该哈希值区间对应的目的存储盘。
(2)后台任务可以生成存储盘检测请求,向存储盘管理设备发送存储盘检测请求,则存储盘管理设备可以接收该存储盘检测请求,可以解析该存储盘检测请求,得到存储盘检测请求携带的目的存储盘的存储盘标识,确定该存储盘标识对应的目的存储盘。
(3)后台任务可以生成数据校验请求,向存储盘管理设备发送数据校验请求,则存储盘管理设备可以接收该数据校验请求,确定该数据校验请求的目的存储盘,若该目的存储盘处于存储盘窗口外,对该数据校验请求进行缓存。其中,该数据校验请求可以携带目的存储盘的存储盘标识,可以解析该数据校验请求,得到数据校验请求携带的目的存储盘的存储盘标识,确定该存储盘标识对应的目的存储盘。
(4)后台任务可以生成存储空间回收请求,向存储盘管理设备发送存储空间回收请求,则存储盘管理设备可以接收该存储空间回收请求,确定该存储空间回收请求的目的存储盘,若该目的存储盘处于存储盘窗口外,对该存储空间回收请求进行缓存。其中,存储空间回收请求可以携带目的存储盘的存储盘标识,可以解析该存储空间回收请求,得到存储空间回收请求携带的存储盘标识,确定该存储盘标识对应的目的存储盘。
当存储盘管理设备确定工作请求的目的存储盘后,可以根据上述步骤701中确定出的至少一个存储盘,判断目的存储盘是否属于该至少一个存储盘,如果确定目的存储盘是否属于该至少一个存储盘,如果确定目的存储盘不属于该至少一个存储盘,则执行下述步骤703至步骤704,如果确定目的存储盘不属于该至少一个存储盘,则执行下述步骤705至步骤708。
703、存储盘管理设备确定该目的存储盘属于该至少一个存储盘。
在一种可能的实现中,本步骤703可以包括:确定目的存储盘属于当前存储盘窗口内的至少一个存储盘。具体来讲,存储盘在程序中可以记录为存储盘标识,则本步骤703可以包括:确定目的存储盘的存储盘标识属于当前存储盘窗口内的至少一个存储盘标识。
704、存储盘管理设备处理该工作请求。
通过上述701,已对确定出的至少一个存储盘进行了上电,而目的存储盘又属于该至少一个存储盘,处于活动状态,因此存储盘管理设备可以处理接收到的工作请求。在一种可能的实现中,存储盘管理设备可以向目的存储盘发送工作请求,目的存储盘可以接收该工作请求,处理该工作请求,向存储盘管理设备发送工作请求的处理结果。
可选地,该工作请求的数量可以为一个或多个,若该工作请求的数量为多个,存储盘管理设备可以向目的存储盘同时发送多个工作请求,目的存储盘可以接收该多个工作请求,处理该多个工作请求,向存储盘管理设备发送多个工作请求的处理结果,从而并发地对处理多个工作请求。
可选地,结合工作请求的具体类型,步骤704可以包括以下(1)至(3)中任一项或多项的组合。
(1)处理IO请求。
举例来说,若IO请求为读请求,可以从存储盘中读取数据,将读取的数据发送给客户端。若IO请求为写请求,可以解析IO请求,得到IO请求携带的数据,将该数据写入至存储盘,向客户端发送写完成消息。
(2)处理存储盘检测请求。
可以对存储盘的健康状态进行诊断,得到存储盘的健康状态信息,将该健康状态信息发送给客户端。
(3)处理数据校验请求。
具体来说,可以根据数据校验请求,对存储盘存储的数据进行校验。举例来说,可以对多个存储盘存储的数据备份的一致性进行检查,得到数据一致性检查结果,将该数据一致性检查结果发送给客户端。
(4)处理存储空间回收请求。
具体来说,可以根据存储空间回收请求,对存储盘的存储空间进行回收,从而释放存储盘中已经占用的存储空间。
705、存储盘管理设备确定该目的存储盘不属于该至少一个存储盘。
在一种可能的实现中,本步骤可以包括:确定目的存储盘不属于当前存储盘窗口内的至少一个存储盘。具体来讲,存储盘在程序中可以记录为存储盘标识,则本步骤可以包括:确定目的存储盘的存储盘标识不属于当前存储盘窗口内的至少一个存储盘标识。
706、存储盘管理设备缓存该工作请求。
如果确定目的存储盘不属于步骤701确定出的至少一个存储盘时,可以缓存接收到的工作请求,以便后续确定出目的存储盘并上电目的存储盘时,可以处理已缓存的工作请求。其中,结合存储盘的工作请求的具体类型,可选地,本步骤可以包括:缓存IO请求、缓存存储盘检测请求、缓存数据校验请求、缓存存储空间回收请求中任一项或多项的组合。
可选地,可以采用缓存队列来缓存工作请求。具体来讲,可以将该工作请求存入缓存队列。确定该工作请求的目的存储盘已经上电,从该缓存队列中获取该工作请求,处理该工作请求。其中,缓存队列可以位于存储盘管理设备的任一种存储空间中。缓存队列可以用于缓存存储盘待处理的工作请求。可以在存储盘窗口滑动前,预先生成缓存队列,以便在存储盘窗口滑动过程中,通过该缓存队列缓存工作请求。缓存队列的深度可以根据需求设置,例如,若业务压力越大,则缓存队列的深度越大。
在一个示例性场景中,缓存队列可以位于存储盘管理设备的内存中。参见图13,假设存储盘1位于当前存储盘窗口外,存储盘2位于当前存储盘窗口内,则存储盘管理设备会通过存储盘窗口,从存储器组中确定出存储盘2,上电该存储盘2。如果存储盘管理设备接收到目的存储盘为存储盘1的工作请求,会将该工作请求存入缓存队列,如果存储盘管理设备接收到目的存储盘为存储盘2的工作请求,会处理该工作请求,例如将该工作请求发送给存储盘2。
可选地,可以根据缓存队列中已存入的工作请求的总数量,设置存储盘窗口的滑动时延,滑动时延与工作请求的数量负相关。具体来说,缓存队列中工作请求的数量越多,则滑动时延越短,缓存队列中工作请求的数量越少,则滑动时延越长。在一种可能的实现中,可以存储工作请求的数量与存储盘窗口的滑动时延之间的映射关系,该映射关系包括工作请求的至少一种数量以及对应的至少一种滑动时延。在存储盘窗口滑动时,可以根据缓存队列中工作请求的数量,查询该映射关系,得到该工作请求的数量对应的存储盘窗口的滑动时延,将存储盘窗口的滑动时延设置为查询到的滑动时延。可选地,关于获取缓存队列中工作请求的数量的方式,可以实时检测缓存队列中工作请求的数量,也可以周期性地检测缓存队列中工作请求的数量,对此不做限定。
通过这种方式来设置存储盘窗口的滑动时延,达到的效果至少可以包括:若缓存队列中存入的工作请求的数量越多,表明存储系统越繁忙,存储系统的业务处理压力越大,则存储盘窗口的滑动时延可以设置的越短,以使存储盘窗口可以在存储盘组中快速滑动,从而保证每个存储盘的工作请求可以及时得到处理。同理地,若缓存队列中工作请求的数量越少,表明存储系统越空闲,存储系统的业务处理压力越小,则存储盘窗口的滑动时延可以设置的越长,以使存储盘窗口可以在存储盘组中较慢地滑动,从而减少每个存储盘的上电时长,节省存储系统的电力成本。也即是,可以保证存储盘窗口的滑动时间间隔与业务压力情况匹配,灵活性高。
707、存储盘管理设备确定该工作请求的目的存储盘已经上电。
缓存工作请求后,存储盘管理设备可以重新执行上述步骤701,重新从存储盘组中确定存储盘,上电存储盘。例如,可以切换存储盘窗口,上电当前存储盘窗口内的该至少一个存储盘。那么,如果当前窗口内包括该目的存储盘,则会上电该目的存储盘,此时可以确定目的存储盘已经上电。
708、存储盘管理设备从该缓存队列中获取该工作请求,处理该工作请求。
可以获取步骤706中缓存的工作请求,处理该工作请求。可选地,可以执行上述步骤702至步骤704一次或多次。若执行了多次上述步骤702至步骤704,则会缓存了多个目的存储盘的工作请求,则本步骤708中,可以从缓存队列中获取多个工作请求,处理多个工作请求。其中,可选地,可以同时处理多个工作请求,从而并发处理工作请求。
可选地,可以当处理缓存的工作请求完成时,切换存储盘窗口。另外,也可以在切换存储盘窗口一次时开始计时,当已经过滑动时延时,若对缓存的工作请求尚未处理完成,则切换存储盘窗口,并对尚未处理的剩余工作请求继续进行缓存。当存储盘再次位于存储盘窗口内时,可以处理该剩余工作请求以及重新缓存的工作请求。
需要说明的第一点是,本实施例可以循环执行。具体来说,上述步骤701至步骤708可以作为存储盘窗口的一个滑动周期。随着存储盘窗口的滑动,可以重复执行上述步骤701至步骤708。具体来说,当存储盘再次位于存储盘窗口内时,则上电存储盘,并处理缓存的工作请求以及接收工作请求。当存储盘再次位于存储盘窗口外时,可以下电存储盘,重新缓存接收到的目的存储盘为该存储盘的工作请求。依次类推,存储盘窗口可以周期性地在存储盘上进行滑动,每当经过存储盘窗口的一个滑动周期,即可对存储盘执行一次控制流程。由此可见,在存储盘窗口的一个滑动周期时,存储盘只需位于存储盘窗口内的时间段内进行上电,而无需为各个工作请求依次上电,减少上电的次数,降低上电频率。另外,在存储盘窗口的一个滑动周期时,存储盘可以在位于存储盘窗口外的时间段内均处于下电状态,而无需为处理工作请求结束的动作下电,也无需随着其他存储盘的上电而被淘汰,因此减少了下电的次数,降低下电频率。
需要说明的第二点是,本实施例仅是以对存储盘组中的任一存储盘进行控制的流程为例进行描述,可选地,对于存储盘组中的每个存储盘,均可以采用同理的方式,执行上述步骤701至步骤708。其中,可以对存储盘组的多个存储盘,同时执行上述步骤701至步骤708,从而实现对多个存储盘的并发控制,提高控制存储盘的效率。
需要说明的第三点是,本实施例仅是以对任一存储盘组中进行控制的流程为例进行描述,可选地,对于划分得到的每个存储盘组,均可以采用同理的方式,执行上述步骤701至步骤708。其中,可以对多个存储盘组,同时执行上述步骤701至步骤708,从而实现对多个存储盘组的并发控制,提高控制存储盘的效率。
可选地,参见图14,本实施例提供的方法可以分别由存储盘管理设备中的工作请求调度模块、存储盘窗口管理模块以及存储盘管理模块执行。该工作请求调度模块用于接收客户端发送的IO请求以及后台/前台任务发送的存储盘检测请求、数据校验请求以及存储空间回收请求,定时滑动存储盘窗口,当存储盘位于存储盘窗口内时,对目的存储盘为该存储盘的各个工作请求进行处理。该存储盘窗口管理模块用于划分存储盘组,当任一存储盘位于存储盘窗口内,可以生成上电指令,向存储盘管理模块发送上电指令,存储盘管理模块可以接收上电指令,对存储盘进行上电。同理地,当任一存储盘位于存储盘窗口外,可以生成下电指令,向存储盘管理模块发送下电指令,存储盘管理模块可以接收下电指令,对存储盘进行下电。可选地,参见图15,图15提供了工作请求调度模块、存储盘窗口管理模块以及存储盘管理模块之间的交互流程图。在图15中,该工作请求调度模块可以用于对存储盘窗口进行循环滑动,即重复执行图15中的步骤2至步骤5。
本实施例提供的方法,通过从存储盘组中确定一部分存储盘,上电一部分存储盘,处理这一部分存储盘的工作请求,可以避免其余存储盘处于上电状态时消耗的电能,相对于上电整个存储系统中所有存储盘来说,可以达到节约存储系统消耗的电能的效果,并且相对于处理整个存储系统中所有存储盘的工作请求来说,可以减轻存储系统的业务负载,节约存储系统的处理开销。
图16是本申请实施例提供的一种存储盘管理设备的结构示意图。参见图16,该存储盘管理设备包括:存储模块1601以及处理模块1602。
存储模块1601,用于存储存储盘组包括的多个存储盘对应的存储盘标识;
处理模块1602,用于执行上述步骤701至步骤704。
可选地,该处理模块1602,还用于执行上述步骤705至步骤706。
可选地,该处理模块1602,用于采用存储盘窗口在该存储盘组中滑动;上电当前存储盘窗口内的该至少一个存储盘。
可选地,该处理模块1602,用于采用存储盘窗口在该存储盘组包括的多个存储盘对应的存储盘标识中滑动;上电该当前存储盘窗口内的存储盘标识对应的该至少一个存储盘。
可选地,该存储模块1601,用于存储缓存队列;
该处理模块,用于将该工作请求存入该缓存队列;确定该工作请求的目的存储盘已经上电;从该缓存队列中获取该工作请求,处理该工作请求。
可选地,该处理模块1602,用于当经过滑动时延时,切换存储盘窗口。
可选地,该处理模块1602,用于在该当前存储盘窗口内的每个存储盘的存储空间占用率达到阈值时,切换存储盘窗口。
可选地,该处理模块1602,用于当存储盘窗口切换后,下电切换前的存储盘窗口内的至少一个存储盘。
可选地,该处理模块1602,用于执行上述步骤707至步骤708。
需要说明的第一点是:图16实施例中的各个模块具体可以是软件中执行相应功能的软件模块,即,“模块”可以是一组计算机程序构成的功能模块,该计算机程序可以是源程序或目标程序,该计算机程序可以通过任意编程语言实现。通过上述各个模块,存储盘管理设备可以基于处理器加存储器的硬件来实现存储数据的功能,也即是,可以通过存储盘管理设备的处理器,运行存储在存储盘管理设备的存储器中的软件代码,来执行相应的软件来实现存储数据的功能。
需要说明的第二点是,该存储盘管理设备可以包括存储盘组,也可以不包括存储盘组。即,该存储盘管理设备可以是用于管理其他设备中的存储盘组的独立的设备,也可以本身具有存储盘组的设备。无论该存储盘管理设备是否包括存储盘组,均可以具有上述图16实施例该的各个模块,且上述图16实施例中的各个模块均为软件模块。
需要说明的第三点是:图16实施例提供的存储盘管理设备在存储数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将存储盘管理设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的存储盘管理设备与存储盘的控制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请还提供了一种存储盘管理设备。如图17所示,存储盘管理设备1700包括总线1701、处理器1702、通信接口1703和存储器1704。处理器1702、存储器1704和通信接口1703之间通过总线1701通信。
其中,处理器可以为中央处理器(英文:central processing unit,缩写:CPU)。存储器可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:randomaccess memory,缩写:RAM)。存储器还可以包括非易失性存储器(英文:non-volatilememory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器,HDD或SSD。存储器中存储有可执行代码,处理器执行该可执行代码以执行前述存储盘的控制方法。存储器中还可以包括操作系统等其他运行进程所需的软件模块。操作系统可以为LINUXTM,UNIXTM,WINDOWSTM等。
存储盘管理设备1700的存储器1704中存储了图16实施例中各个模块对应的代码,处理器1702执行这些代码实现了图16实施例中的各个模块的功能,即执行了图7实施例所示的存储盘的控制方法。存储盘管理设备1700可以为云环境中的存储盘管理设备,或边缘环境中的存储盘管理设备,或终端环境中的存储盘管理设备。
本申请还提供了一种存储盘管理设备。如图18所示,存储盘管理设备1800包括总线1801、处理器1802、通信接口1803、存储器1804以及存储盘组1805。处理器1802、存储器1804和通信接口1803之间通过总线1801通信。存储盘组1805可以内置在存储盘管理设备1800中,当然也可以与存储盘管理设备1800进行连接。例如,存储盘组1805可以提供为存储盘管理设备1800的存储盘框,该存储盘框可以插入多个存储盘。举例来说,该存储盘框可以为高密存储盘框。又如,存储盘管理设备1800可以配置总线,存储盘组1805可以与该总线连接。该总线可以为高速串行计算机扩展总线标准(英文:peripheral componentinterconnect express,简称:PCIe)总线或外设部件互连标准(英文:peripheralcomponent interconnect,简称:PCI)总线。
其中,处理器可以为中央处理器(英文:central processing unit,缩写:CPU)。存储器可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:randomaccess memory,缩写:RAM)。存储器还可以包括非易失性存储器(英文:non-volatilememory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器,HDD或SSD。存储器中存储有可执行代码,处理器执行该可执行代码以执行前述存储盘的控制方法。存储器中还可以包括操作系统等其他运行进程所需的软件模块。操作系统可以为LINUXTM,UNIXTM,WINDOWSTM等。
存储盘管理设备1800的存储器1804中存储了图16实施例中各个模块对应的代码,处理器1802执行这些代码实现了图16实施例中的各个模块的功能,即执行了图7实施例所示的存储盘的控制方法。存储盘管理设备1800可以为云环境中的存储盘管理设备,或边缘环境中的存储盘管理设备,或终端环境中的存储盘管理设备。
本申请还提供了一种存储系统,如图19所示,该存储系统包括至少一台存储盘管理设备1900以及至少一个存储盘组1905。可选地,每个存储盘组1905可以位于不同的服务器上。每个存储盘管理设备1900可以执行图7实施例中的任一个或多个步骤,也即是,每个存储盘管理设备1900可以运行图16实施例中的任一个或多个模块。图16实施例中的不同模块可以在该存储系统中的不同存储盘管理设备1900上执行。其中,每个存储盘管理设备1900的结构与图17实施例中存储盘管理设备1700的结构相同。具体来说,每个存储盘管理设备1900包括总线1901、处理器1902、通信接口1903和存储器1904。处理器1902、存储器1904和通信接口1903之间通过总线1901通信。不同存储盘管理设备1900之间可以通过通信网络建立通信通路。每个存储盘管理设备1900上运行存储模块1601以及处理模块1602中的任意一个或多个。任一存储盘管理设备1900可以为云环境中的存储盘管理设备,或边缘环境中的存储盘管理设备,或终端环境中的存储盘管理设备。
本申请还提供了一种存储系统,如图20所示,该存储系统包括至少一台存储盘管理设备2000以及至少一个存储盘组2005。每个存储盘管理设备2000可以执行图7实施例中的任一个或多个步骤,也即是,每个存储盘管理设备2000可以运行图16实施例中的任一个或多个模块。图16实施例中的不同模块可以在该存储系统中的不同存储盘管理设备2000上执行。其中,每个存储盘管理设备2000的结构与图18实施例中存储盘管理设备1800的结构相同。具体来说,每个存储盘管理设备2000包括总线2001、处理器2002、通信接口2003、存储器2004和存储盘组2005。处理器2002、存储器2004和通信接口2003之间通过总线2001通信。每个存储盘组2005可以内置在对应的存储盘管理设备2000中,当然也可以与对应的存储盘管理设备2000进行连接。例如,存储盘组2005可以提供为存储盘管理设备2000的存储盘框,例如可以为高密存储盘框。又如,每个存储盘管理设备2000可以配置总线,每个存储盘组2005可以与对应的存储盘管理设备2000的总线连接。可选地,存储系统还可以包括除了存储盘管理设备以外的至少一个服务器,每个服务器中也可以包括存储盘组2005。
不同存储盘管理设备2000之间可以通过通信网络建立通信通路。每个存储盘管理设备2000上运行存储模块1601以及处理模块1602中的任意一个或多个。任一存储盘管理设备2000可以为云环境中的存储盘管理设备,或边缘环境中的存储盘管理设备,或终端环境中的存储盘管理设备。
进一步的,存储系统可以包括大量的存储盘,可以划分为大量的存储盘组,因此存储盘管理设备1900本身可能无法存储全部的存储盘组,有鉴于此,本申请还提出了一种存储系统。如图21所示,存储模块1601部署在云存储服务中(例如对象存储服务),用户在云存储服务中申请一定容量的存储空间作为存储模块1601,存储系统可以将存储盘组包括的多个存储盘对应的存储盘标识存入存储模块1601中。存储盘管理设备1900运行时,通过通信网络从远端的存储模块1601中获取所需的存储盘组中的存储盘标识。每个存储盘管理设备1900上运行处理模块1602。任一存储盘管理设备1900可以为云环境中的存储盘管理设备,或边缘环境中的存储盘管理设备,或终端环境中的存储盘管理设备。
进一步的,存储系统可以包括大量的存储盘,可以划分为大量的存储盘组,因此存储盘管理设备2000本身可能无法存储全部的存储盘组,有鉴于此,本申请还提出了一种存储系统。如图22所示,存储模块1601部署在云存储服务中(例如对象存储服务),用户在云存储服务中申请一定容量的存储空间作为存储模块1601,存储系统可以将存储盘组包括的多个存储盘对应的存储盘标识存入存储模块1601中。存储盘管理设备2000运行时,通过通信网络从远端的存储模块1601中获取所需的存储盘组中的多个存储盘的存储盘标识。每个存储盘管理设备2000上运行处理模块1602,并且每个存储盘管理设备2000包括存储盘组2005,任一存储盘管理设备2000可以为云环境中的存储盘管理设备,或边缘环境中的存储盘管理设备,或终端环境中的存储盘管理设备。
在一个示例性实施例中,本申请还提供一种非瞬态的可读存储介质,所述非瞬态的可读存储介质被存储系统中的至少一个存储盘管理设备执行时,所述至少一台存储盘管理设备执行上述存储盘的控制方法,所述存储系统包括所述至少一个存储盘管理设备以及至少一个存储盘组,每个存储盘组包括多个存储盘。所述存储介质中存储了程序。所述存储介质的类型包括但不限于易失性存储器,例如随机访问存储器,非易失性存储器,例如快闪存储器、硬盘(英文:hard disk drive,缩写:HDD)、固态硬盘(英文:solid state drive,缩写:SSD)。
在一个示例性实施例中,本申请还提供了一种包含指令的计算机程序产品,所述存储盘管理设备程序产品被存储系统中至少一台存储盘管理设备执行时,所述至少一台存储盘管理设备执行上述存储盘的控制方法,所述存储系统包括所述至少一个存储盘管理设备以及至少一个存储盘组,每个存储盘组包括多个存储盘。该计算机程序产品可以为一个软件安装包,在需要使用上述存储盘的控制方法的情况下,可以下载该计算机程序产品并在存储盘管理设备上执行该计算机程序产品。
在一个示例性实施例中,本申请还提供了一种芯片,该芯片包括处理器和/或程序指令,当该芯片运行时,实现上述实施例中存储盘的控制方法所执行的操作。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
上述各个附图对应的流程的描述各有侧重,某个流程中没有详述的部分,可以参见其他流程的相关描述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机程序指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digitalvideo disc,DVD)、或者半导体介质(例如固态硬盘)等。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
本申请中术语“多个”的含义是指两个或两个以上,例如,多个数据包是指两个或两个以上的数据包。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,本领域技术人员可以理解,“第一”“第二”等字样不对数量和执行顺序进行限定。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上该仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (14)

1.一种存储盘的控制方法,其特征在于,所述方法包括:
采用存储盘窗口在存储盘组中滑动,所述存储盘窗口的滑动时延与已缓存的工作请求数量负相关,所述存储盘组包括多个存储盘;
上电当前存储盘窗口内的至少一个存储盘,所述至少一个存储盘是所述多个存储盘中的一部分;
接收工作请求,确定所述工作请求的目的存储盘;
如果所述目的存储盘属于所述至少一个存储盘,通过所述目的存储盘处理接收的所述工作请求;
如果所述工作请求的目的存储盘不属于所述至少一个存储盘,缓存所述工作请求,当所述目的存储盘处于上电状态时,通过所述目的存储盘处理缓存的所述工作请求。
2.如权利要求1所述的方法,其特征在于,所述采用存储盘窗口在存储盘组中滑动,上电当前存储盘窗口内的至少一个存储盘,包括:
采用存储盘窗口在所述存储盘组包括的多个存储盘对应的存储盘标识中滑动;
上电所述当前存储盘窗口内的存储盘标识对应的所述至少一个存储盘。
3.根据权利要求1所述的方法,其特征在于,所述上电当前存储盘窗口内的至少一个存储盘之后,所述方法还包括:
当经过滑动时延时,切换存储盘窗口。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述当前存储盘窗口内的每个存储盘的存储空间占用率达到阈值时,切换存储盘窗口。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
切换存储盘窗口后,下电切换前的所述存储盘窗口内的至少一个存储盘。
6.根据权利要求1所述的方法,其特征在于,所述缓存所述工作请求,包括:
将所述工作请求存入缓存队列;
所述通过所述目的存储盘处理缓存的所述工作请求,包括:
从所述缓存队列中获取所述工作请求,处理所述工作请求。
7.一种存储盘管理设备,其特征在于,所述存储盘管理设备包括:
存储模块,用于存储存储盘组包括的多个存储盘对应的存储盘标识;
处理模块,用于采用存储盘窗口在所述存储盘组中滑动,所述存储盘窗口的滑动时延与已缓存的工作请求数量负相关,至少一个存储盘是所述多个存储盘中的一部分;上电当前存储盘窗口内的至少一个存储盘;接收工作请求,确定所述工作请求的目的存储盘;如果所述目的存储盘属于所述至少一个存储盘,通过所述目的存储盘处理接收的所述工作请求;如果所述工作请求的目的存储盘不属于所述至少一个存储盘,缓存所述工作请求,当所述目的存储盘处于上电状态时,通过所述目的存储盘处理缓存的所述工作请求。
8.根据权利要求7所述的存储盘管理设备,其特征在于,所述处理模块,用于采用存储盘窗口在所述存储盘组包括的多个存储盘对应的存储盘标识中滑动;上电所述当前存储盘窗口内的存储盘标识对应的所述至少一个存储盘。
9.根据权利要求7所述的存储盘管理设备,其特征在于,所述处理模块,用于当经过滑动时延时,切换存储盘窗口。
10.根据权利要求7所述的存储盘管理设备,其特征在于,所述处理模块,用于在所述当前存储盘窗口内的每个存储盘的存储空间占用率达到阈值时,切换存储盘窗口。
11.根据权利要求9或10所述的存储盘管理设备,其特征在于,所述处理模块,用于切换存储盘窗口后,下电切换前的所述存储盘窗口内的至少一个存储盘。
12.根据权利要求7所述的存储盘管理设备,其特征在于,所述存储模块,用于存储缓存队列;
所述处理模块,用于将所述工作请求存入所述缓存队列;从所述缓存队列中获取所述工作请求,处理所述工作请求。
13.一种存储系统,其特征在于,包括至少一个存储盘管理设备以及至少一个存储盘组,每个存储盘组包括多个存储盘,每个存储盘管理设备包括处理器和存储器,所述至少一个存储盘管理设备的处理器用于执行如权利要求1至权利要求6中任一项所述的存储盘的控制方法。
14.一种非瞬态的可读存储介质,其特征在于,所述非瞬态的可读存储介质被存储系统中的至少一个存储盘管理设备执行时,所述至少一个存储盘管理设备执行权利要求1至权利要求6中任一项所述的存储盘的控制方法,所述存储系统包括至少一个存储盘组,每个存储盘组包括多个存储盘。
CN201811161124.2A 2018-09-30 2018-09-30 存储盘的控制方法及设备 Active CN110968258B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811161124.2A CN110968258B (zh) 2018-09-30 2018-09-30 存储盘的控制方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811161124.2A CN110968258B (zh) 2018-09-30 2018-09-30 存储盘的控制方法及设备

Publications (2)

Publication Number Publication Date
CN110968258A CN110968258A (zh) 2020-04-07
CN110968258B true CN110968258B (zh) 2021-09-07

Family

ID=70029101

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811161124.2A Active CN110968258B (zh) 2018-09-30 2018-09-30 存储盘的控制方法及设备

Country Status (1)

Country Link
CN (1) CN110968258B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114489479B (zh) * 2021-12-23 2023-06-09 北京云宽志业网络技术有限公司 数据存储磁盘上下电的方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383179A (zh) * 2008-09-22 2009-03-11 成都市华为赛门铁克科技有限公司 存储系统及存储系统的供电方法
CN104598568A (zh) * 2015-01-12 2015-05-06 浪潮电子信息产业股份有限公司 一种高效、低功耗的离线存储系统及方法
CN107608824A (zh) * 2017-09-01 2018-01-19 中国科学院计算技术研究所 一种非易失性计算装置及其工作方法
CN108028664A (zh) * 2015-10-19 2018-05-11 英特尔公司 使用具有多个搜索引擎的加速器的数据压缩
CN108153491A (zh) * 2017-12-22 2018-06-12 深圳市瑞驰信息技术有限公司 一种可关闭部分服务器的存储方法及架构

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526887B (zh) * 2009-04-20 2013-06-05 成都市华为赛门铁克科技有限公司 将数据写入硬盘的方法、装置及系统
US20140095788A1 (en) * 2012-09-28 2014-04-03 Asustek Computer Inc. Method for virtualizing raid of computer system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383179A (zh) * 2008-09-22 2009-03-11 成都市华为赛门铁克科技有限公司 存储系统及存储系统的供电方法
CN104598568A (zh) * 2015-01-12 2015-05-06 浪潮电子信息产业股份有限公司 一种高效、低功耗的离线存储系统及方法
CN108028664A (zh) * 2015-10-19 2018-05-11 英特尔公司 使用具有多个搜索引擎的加速器的数据压缩
CN107608824A (zh) * 2017-09-01 2018-01-19 中国科学院计算技术研究所 一种非易失性计算装置及其工作方法
CN108153491A (zh) * 2017-12-22 2018-06-12 深圳市瑞驰信息技术有限公司 一种可关闭部分服务器的存储方法及架构

Also Published As

Publication number Publication date
CN110968258A (zh) 2020-04-07

Similar Documents

Publication Publication Date Title
US9916275B2 (en) Preventing input/output (I/O) traffic overloading of an interconnect channel in a distributed data storage system
US10585753B2 (en) Checkpoint triggering in a computer system
US9436571B2 (en) Estimating data storage device lifespan
US8498966B1 (en) Systems and methods for adaptively performing backup operations
US10241722B1 (en) Proactive scheduling of background operations for solid state drives
US9424156B2 (en) Identifying a potential failure event for a data storage device
US9557938B2 (en) Data retrieval based on storage device activation schedules
KR102513961B1 (ko) 멀티 운영시스템을 지닌 전자장치 및 이의 동적 메모리 관리 방법
US10346094B2 (en) Storage system, storage device, and hard disk drive scheduling method
CN109857239B (zh) 存储控制方法及装置
US9727252B2 (en) Methods and systems for optimal snapshot distribution within a protection schedule
EP3625683B1 (en) System and method for load balancing backup data
CN110968258B (zh) 存储盘的控制方法及设备
WO2015078193A1 (zh) 存储空间的管理方法和存储管理装置
CN107329801B (zh) 一种节点管理方法及装置、多子星服务器
US9430149B2 (en) Pipeline planning for low latency storage system
US20170123657A1 (en) Systems and methods for back up in scale-out storage area network
US10452553B1 (en) Systems and methods for distributing cache space
US10671307B2 (en) Storage system and operating method thereof
CN110750221A (zh) 卷克隆方法、装置、电子设备及机器可读存储介质
US10587527B1 (en) Systems and methods for apportioning bandwidth in storage systems
US20150331610A1 (en) Data device grouping across multiple-data-storage-devices enclosures for synchronized data maintenance
US10346193B1 (en) Efficient placement of virtual machines based on cache hit ratio
US11971771B2 (en) Peer storage device messaging for power management
US9354993B2 (en) System and method to reduce service disruption in a shared infrastructure node environment

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: 20220214

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

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

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

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.