CN103036930B - 用于管理存储设备的方法和设备 - Google Patents

用于管理存储设备的方法和设备 Download PDF

Info

Publication number
CN103036930B
CN103036930B CN201110305476.2A CN201110305476A CN103036930B CN 103036930 B CN103036930 B CN 103036930B CN 201110305476 A CN201110305476 A CN 201110305476A CN 103036930 B CN103036930 B CN 103036930B
Authority
CN
China
Prior art keywords
storage resources
volume
requirement
logical volume
memory device
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.)
Expired - Fee Related
Application number
CN201110305476.2A
Other languages
English (en)
Other versions
CN103036930A (zh
Inventor
姜鹏
张昕
张融
M·S·弗勒明
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN201110305476.2A priority Critical patent/CN103036930B/zh
Priority to US13/602,051 priority patent/US8924666B2/en
Publication of CN103036930A publication Critical patent/CN103036930A/zh
Application granted granted Critical
Publication of CN103036930B publication Critical patent/CN103036930B/zh
Expired - Fee Related 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
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • 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/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

根据本发明实施例的一种管理多台存储设备的方法,其中将各台存储设备提供的存储资源分别虚拟化整合为对应的中间卷,并且将多个中间卷虚拟化整合成单独的逻辑卷,该方法包括:获取向所述逻辑卷提出的对存储资源的要求,所述要求至少包括冗余度;获得各个中间卷所能提供的存储资源;根据所述对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述冗余度确定;以及根据冗余度的要求将用户数据存储到所选择的中间卷中。根据本发明实施例,可以在云存储的环境中对存储设备进行有效的管理。

Description

用于管理存储设备的方法和设备
·技术领域
本发明涉及存储技术,更具体地说,涉及管理存储设备的方法和设备。
·背景技术
在云存储环境中,即在作为服务的存储(storage-as-a-service)环境中,存储服务提供者按照用户应用程序的要求提供一定的存储资源,并且根据所要求的存储资源进行计费。一般来说,对存储资源的要求是通过对存储资源的性能指标的要求来描述的。所述性能指标例如存储容量、访问速率和存储冗余度等。对于用户应用程序而言,实际存储设备是完全透明的。对于服务提供者来说,则需要进行复杂的管理。
在传统的存储环境中已经提出了若干对存储设备进行管理的方法。这些方法可以分为两种思路:简化容量分配和对容量分配进行自动决策。按照简化容量分配的思路,使用脚本等预定义的标准来简化存储设备的分配、映射等过程。但是这种方法只能针对存储设备的容量进行静态的管理。按照对容量分配进行自动决策的思路,通过监视存储设备的实际运行状况来将能够提供用户应用程序所要求的存储资源的存储设备分配给用户应用程序。这种方法通常假设用户应用程序对存储资源的要求可以被一台单独的存储设备所满足。
但是,上述方法无法直接应用于作为云存储环境。在云存储环境下,用户应用程序所要求的存储资源可能由多个存储设备来提供。例如,由多个存储设备提供用户应用程序所要求的存储容量,通过将访问请求分配到多个存储设备而实现用户应用程序所要求的访问速率,通过提供额外的存储设备而提供用户应用程序所要求的冗余度。而提供者所采用的实际存储设备是不同型号的设备,从而具有不同的能力,有的设备本身可能没有容错能力。在这种情况下,如何将用户数据分配到实际存储设备,如何在用户应用程序要求的要求改变时进行动态地调整,如何保证用户应用程序所要求的冗余度,如何在错误发生时进行数据恢复和重新分配等,都与传统的存储环境有很大的不同。
因此,需要一种针对云存储环境的对存储设备进行管理的方法。
·发明内容
本发明提供了管理存储设备的方法和装置。
根据本发明实施例的一种管理多台存储设备的方法,其中将各台存储设备提供的存储资源分别虚拟化整合为对应的中间卷,并且将多个中间卷虚拟化整合成单独的逻辑卷,该方法包括:获取向所述逻辑卷提出的对存储资源的要求,所述要求至少包括冗余度;获得各个中间卷所能提供的存储资源;根据所述对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述冗余度确定;以及根据冗余度的要求将用户数据存储到所选择的中间卷中。
根据本发明实施例的一种管理多台存储设备的装置,其中将各台存储设备提供的存储资源分别虚拟化整合为对应的中间卷,并且将多个中间卷虚拟化整合成单独的逻辑卷,该装置包括:要求获取模块,配置为获取向所述逻辑卷提出的对存储资源的要求,所述要求至少包括冗余度;存储资源获取模块,配置为获得各个中间卷所能提供的存储资源;中间卷选择模块,配置为根据所述对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述冗余度确定;以及用户数据存储模块,配置为根据冗余度的要求将用户数据存储到所选择的中间卷中。
根据本发明实施例,可以在云存储环境下对存储设备进行有效的管理。
·附图说明
图1是适于用来实现本发明实施方式的示例性计算系统100的框图。
图2是根据本发明实施例的组织存储设备的层次示意图。
图3是建立如图2所示的层次结构的流程图。
图4是选择存储资源来满足用户应用程序对存储资源的要求的流程图。
图5和图6是在存储设备状态变化时的操作流程图。
图7是用户应用程序增加对性能指标的要求时的操作流程图。
图8是根据本发明实施例的管理存储设备的装置的框图
·具体实施方式
所属技术领域的技术人员知道,本发明的多个方面可以体现为系统、方法或计算机程序产品。因此,本发明的多个方面可以具体实现为以下形式,即,可以是完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、或者本文一般称为“电路”、“模块”或“系统”的软件部分与硬件部分的组合。此外,本发明的多个方面还可以采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可用的程序码。
可以使用一个或多个计算机可读的介质的任何组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电的、磁的、光的、电磁的、红外线的、或半导体的系统、装置、器件或任何以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括以下:有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任何合适的组合。在本文件的语境中,计算机可读存储介质可以是任何包含或存储程序的有形的介质,该程序被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可包括在基带中或者作为载波一部分传播的、其中体现计算机可读的程序码的传播的数据信号。这种传播的信号可以采用多种形式,包括——但不限于——电磁信号、光信号或任何以上合适的组合。计算机可读的信号介质可以是并非为计算机可读存储介质、但是能发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序的任何计算机可读介质。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者任何合适的上述组合。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者任何合适的上述组合。
用于执行本发明的操作的计算机程序码,可以以一种或多种程序设计语言的任何组合来编写,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++之类,还包括常规的过程式程序设计语言-诸如“C”程序设计语言或类似的程序设计语言。程序码可以完全地在用户的计算上执行、部分地在用户的计算机上执行、作为一个独立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何种类的网络——包括局域网(LAN)或广域网(WAN)-连接到用户的计算机,或者,可以(例如利用因特网服务提供商来通过因特网)连接到外部计算机。
以下参照按照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的多个方面。要明白的是,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得通过计算机或其它可编程数据处理装置执行的这些指令,产生实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能指令计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令产生一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品。
也可以把计算机程序指令加载到计算机或其它可编程数据处理装置上,使得在计算机或其它可编程数据处理装置上执行一系列操作步骤,以产生计算机实现的过程,从而在计算机或其它可编程装置上执行的指令就提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
下面参照附图,结合具体实施例对本发明进行描述。这样的描述仅仅出于说明目的,而不意图对本发明的范围进行限制。
图1示出了适于用来实现本发明实施方式的示例性计算系统100的框图。如所示,计算机系统100可以包括:CPU(中央处理单元)101、RAM(随机存取存储器)102、ROM(只读存储器)103、系统总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和显示器114。在这些设备中,与系统总线104耦合的有CPU 101、RAM 102、ROM 103、硬盘控制器105、键盘控制器106、串行控制器107、并行控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及显示器114与显示控制器109耦合。应当理解,图1所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
本发明是一种自动进行存储设备供应的方法,其可以利用低端存储设备的能力组合满足用户对存储资源的性能指标的高要求。一般来说,低端存储设备比较容易发生物理故障,导致整台存储设备无法工作。
图2是根据本发明实施例的组织存储设备的层次示意图。
如图2所示,该层次的最底层是物理卷层。物理卷对应于存储介质上的物理存储资源。一台存储设备上可能有多个存储介质,例如有多个磁盘。根据本发明的一个实施例,将每个磁盘作为一个物理卷。本领域技术人员可以理解,每一个磁盘也可能被划分为多个物理卷。
物理卷层之上是低级别虚拟化整合层,其对存储设备上的多个存储介质上的存储资源进行虚拟化整合,从而形成中间卷层。如何进行虚拟化整合是本领域的常用技术,在此不再赘述。
以下举例说明以便更好地理解物理卷和中间卷的概念。假设一台存储设备有五块磁盘,每个磁盘的存储容量均为1000GB。如果每10GB为一个物理卷,则每个磁盘对应于100个物理卷,从而该存储设备对应于500个物理卷。如果该存储设备要提供一个存储容量为50GB的中间卷,则对应于这个中间卷的50GB的存储资源可能以多种方式分布在各个物理卷中。低级别虚拟化整合层按照一定的方法对物理卷进行管理,使得物理卷对于中间卷来说是完全透明的。因此,对于中间卷来说,其并不需要关心具体的存储资源是由哪个磁盘提供的。此外,如果一个中间卷所对应的物理卷发生故障,通过低级别虚拟化整合层的冗余机制,还可以使得对该中间卷所存储的数据的访问不会受到所述故障的影响。
本领域技术人员可以理解,如果存在多台存储设备,则所述中间卷对应的物理卷可能分布在多台存储设备中。但是,在根据本发明实施例的存储设备组织结构中,中间卷层的每一个中间卷只对应于一个存储设备,并且该中间卷对应于该存储设备的所有物理卷。换句话说,中间卷和存储设备是一一对应的关系。
中间卷层之上是高级别虚拟化整合层。高级别虚拟化整合层对整个云存储系统内所有中间卷进行虚拟化整合,从而形成逻辑卷层。
仍然举例说明以便更好地理解中间卷和逻辑卷的关系。在云存储系统中,每一个逻辑卷对应于一个用户应用程序。在下面的描述中,除非特别说明,否则逻辑卷和用户应用程序具有相同的指代对象。比如说,某个用户应用程序需要100GB的存储资源,则云存储系统将一个100GB的逻辑卷分配给这个用户应用程序。这100GB的逻辑卷可能以各种方式对应到中间卷。也可以对应于中间卷#1上的50GB,中间卷#2上的10GB,中间卷#3上的40GB。换句话说,这100GB的逻辑卷可能以各种方式对应到存储设备。例如,可以对应于中间卷#1上的20GB,中间卷#2上的50GB,中间卷#3上的30GB。
高级别虚拟化整合层按照一定的方法对中间卷进行管理,使得中间卷对于逻辑卷来说是完全透明的,从而使得物理卷对于逻辑卷来讲也是完全透明的。比如说,如果一个逻辑卷所对应的中间卷发生故障,通过高级别虚拟化整合层的冗余机制,可以使得对该逻辑卷所存储的数据的访问不会受到所述故障的影响。
下面参照图3描述如何建立如图2所示的层次结构。
步骤301,识别各存储设备。
步骤302,对于各存储设备中的每一个,将该存储设备所提供的存储资源虚拟化整合成一个中间卷。
步骤303,将对应于各存储设备的中间卷虚拟化整合成逻辑卷。
之所以使用“卷”而不是“池”,是因为卷管理设备会将系统中记录的关于各个卷的元数据信息在各个卷中复制一份。这样,即使卷管理设备故障,也可以由新的卷管理设备来恢复所管理的卷。
下面参照图4描述在收到用户应用程序的要求时如何选择存储资源来满足用户应用程序的要求。
步骤401,获取用户应用程序对存储资源的要求,所述要求至少包括冗余度。
根据本发明的一个实施例,可以由用户直接指定对存储资源的性能指标的要求。根据本发明的另一个实施例,可以向用户提供若干应用模板,然后根据用户对这些模板的选择以及对所选择的模板的参数设置,推导出用户应用程序对存储资源的性能指标的要求。如何进行所述推导是本领域的常用手段,在此不再赘述。
步骤402,获得各个中间卷所能提供的存储资源。
可以使用现有工具来监控和得到存储云中各中间卷的实时使用状况,并计算得到各中间卷当前空闲存储容量,空闲访问速率的具体数值。
如上所述,在根据本发明的实施例中,中间卷和存储设备是一一对应的关系。因此在下面的描述中,中间卷和存储设备具有相同的指代对象。
步骤403,根据用户应用程序对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述冗余度确定。
举例而言,比如某用户应用程序对存储资源的要求是:
冗余度:RAID5(4+P)
存储容量:800GB
访问速率:10000IPOS
首先,根据所述冗余度确定存储设备的最小数目。冗余度为RAID5(4+P)表示在实际分配给用户应用程序的存储容量中,有五分之一即20%是用来进行冗余存储的,其余五分之四即80%是用来满足用户应用程序对存储容量的要求的。根据这一性能指标,确定所选择的存储设备的最小数目为5。本领域技术人员可以理解,冗余度还可以用其他方式表示,但都可以转换为以上关系。
其次,根据步骤402所得到的各存储设备所能提供的存储资源确定是否存在5个分别可以提供200GB,2000IOPS的存储资源,且这些存储资源来自不同的存储设备。如上所述,这5个存储资源中只有4个是用来满足用户应用程序对存储容量的要求的。如果存在,则称这5个存储资源分别为A,B,C,D,E。
如果在整个存储云中都找不到如上所述的存储资源时,则将所有指标同时减半进行第二次搜索。比如说,只找到了4个分别可以提供200GB,2000IOPS的且来自不同存储设备的存储资源A、B、C和D;在第二次搜索中又找到了2个分别可以提供100GB,1000IOPS的存储资源E1,E2,从而将其合并为一个存储资源E。可以理解,E1和E2不会与A、B、C或D中的任意一个位于同一个存储设备。还可以理解,E1和E2也不会位于同一个存储设备,因为如果E1和E2位于同一个存储设备的话,在第一次搜索中就可以找到E。由于E1,E2将以strip(RAID0)的方式协同工作,所以他们的合并空间也正好具有200GB,2000IOPS的性能指标。如果这样的存储资源还找不到,则将所有指标再次同时减半进行第三次搜索。
如果存储云中满足上述条件的存储资源超过所需数目,则可以进行进一步的筛选。根据本发明的一个实施例,选择已经被启用的存储设备上的存储资源,而不是启用新的存储设备,从而节省启用新的存储设备带来的额外能耗。根据本发明的另一个实施例,选择已经被占用的存储资源较少的存储设备上的存储资源,从而保证各存储设备的负载平行。根据本发明的再一个实施例,将不同用户应用程序的用户数据尽可能分配到不同的存储设备上的存储资源,从而使得某一用户应用程序对存储资源的性能指标的要求变化不会影响到其他用户应用程序,并且由于用户数据的物理隔绝而增强了安全性。可以由用户指定上述筛选方法。
需要注意的是,针对访问速率这一指标,根据本发明一个实施例,采用的是thin-provision的策略。根据这种策略,虽然系统在名义上成功为用户应用程序分配一块符合用户应用程序所要求的访问速率的存储资源,但并不实际完全占据所述访问速率。例如,如果在最大访问速率为10000IOPS的存储设备上为用户应用程序分配了一块存储资源来向用户应用程序提供2000IOPS的访问速率,则所述存储设备的空闲访问速率并非简单地用10000减去2000,而是根据如步骤402所得到的实际被占用的访问速率来计算该存储设备的空闲访问速率。这样可以做到使存储设备的访问速率得以最大的发挥。为了避免由于实际被占用的访问速率随时间的起伏过大导致在该存储设备上分配了过多的访问速率,上述实际被占用的访问速率通常取一段时间内的平均值。
步骤404,根据冗余度的要求将用户数据存储到所选择的中间卷中。
仍然以上述冗余度RAID5(4+P)为例。假设当前的用户数据被按照最小单位分成16个用户数据块,则根据冗余度的要求,每4个用户数据块需要配以1个冗余数据块。因此,可以将用户数据分成4个块组,如下所述:
根据本发明的一个实施例,所述1个冗余数据块是通过对所述4个用户数据块进行奇偶校验运算而得到的。这样,从所述1个冗余数据块和4个用户数据块中的任意4个数据块就可以推导出另外1个数据块。
然后将属于同一块组的用户数据块和冗余数据块分别分配到所选择的5个存储资源中。根据本发明的一个实施例,按照轮替的方法分配每个块组的冗余数据块。例如,冗余数据块1分配到第一个存储资源中,冗余数据块2分配到第二个存储资源中,冗余数据块3分配到第三个存储资源中......冗余数据块6分配到第一个存储资源中。这样可以进一步提高系统的可靠性。
本领域技术人员可以理解,在将数据块分配到某个存储资源后,该存储资源所在的存储设备可以按照自身具备的容错机制对所述数据块进行恰当地存储。
在参照图2进行的描述中提到,中间卷层的每一个中间卷只对应于一个存储设备,并且该中间卷对应于该存储设备上的所有物理卷。在步骤403和404提到,同一块组的冗余数据块和用户数据块分别分配到不同的中间卷,也就是分配到不同的存储设备。因此,即使某个存储设备完全无法工作,对于一个块组来说,只有一个数据块受到影响,而这种影响是可以通过所述冗余度来消除的。又如前所述,如果一个逻辑卷所对应的中间卷发生故障,通过高级别虚拟化整合层的冗余机制,对该逻辑卷所存储的数据的访问不会受到所述故障的影响。但是,通过冗余机制来进行对数据的访问需要额外的计算量,因此仍然需要寻找替代的存储资源。
下面参照图5和图6描述在存储设备状态变化时,根据本发明实施例的操作过程。
简而言之,根据本发明实施例的供应系统监视各存储设备上的访问速率情况,包括实际访问速率和空闲访问速率等。如果存储设备的访问速率不能满足用户应用程序的要求,或者供应系统监视到存储设备发生其他非关键性错误,则供应系统可以通过进行主动的数据迁移来纠正这些非关键性错误。如果存储设备发生关键性错误使得存储设备完全无法工作,则供应系统进行被动的重构。
存储设备的状态变化可以分为四种情况,一种是一台存储设备的存储资源减少,例如移除物理卷等。一种是减少现有的存储设备,例如存储设备由于故障而完全无法工作。一种是一台存储设备的存储资源增加,例如增加磁盘等。一种是增加新的存储设备。对于第三种和第四种情况,只需要按照图3所示的步骤,将新增加的存储资源或者新增加的存储设备虚拟化整合到云存储系统中,并且更新相关的元数据信息即可。
图5是从一台存储设备中移除存储资源时的操作过程。
移除一台存储设备中的存储资源可以是云存储系统的管理员主动发起的,例如需要检查或更换磁盘;也可以是在诸如磁盘故障等情况下被动地进行的。
步骤501,获取该存储设备上空闲存储容量和待移除存储资源的存储容量。
步骤502,判断空闲存储容量是否多于待移除存储资源的存储容量,如果是则进入步骤503,否则进入步骤506。
根据本发明的一个实施例,如果存储资源的移除是由管理员主动发起的,那么在空闲存储容量小于待移除存储资源的存储容量的情况下,也可以拒绝进行所述存储资源的移除,并且向管理员发出错误提示信息。
步骤503,获取待移除存储资源所涉及的用户应用程序。
如果空闲存储容量少于待移除存储资源的存储容量,说明将待移除存储资源移除后,该存储设备无法提供足够的存储容量,从而需要将存储在待移除存储资源上的用户数据迁移到其他存储设备。
如前所述,用户应用程序对应于一个虚拟卷,而虚拟卷对应于若干中间卷,中间卷又对应于若干物理卷,物理卷又对应于实际的存储资源。因此,可以很容易地获得待移除存储资源所涉及的用户应用程序。
步骤504,针对所获取的每个用户应用程序,在其他存储设备上选择目标存储资源,其中所述目标存储资源与源存储资源具有相同的性能指标,所述源存储资源是待移除存储资源所在的存储设备上对应于该用户应用程序的存储资源。
在其他存储设备上选择目标存储资源的过程与步骤403所描述的过程类似。简而言之,首先判断是否能在其他存储设备中的单台存储设备上找到具有所述相同性能指标的目标存储资源;如果不能找到,则将对应于该用户应用程序的存储资源具有的性能指标减半,然后进行第二次搜索,判断是否能够在其他存储设备中的两台存储设备上分别找到具有所述减半后的性能指标的目标存储资源。以此类推。如果在不同的存储设备上找到多个具有所述相同性能指标的目标存储资源,则可以按照前面已经阐述的标准进行筛选。
步骤505,将所述目标存储资源分配给对应的用户应用程序。
可选地,如果待移除存储资源所在的存储设备上对应于该用户应用程序的存储资源中,存储有用户数据,则将该待移除存储资源所存储的用户数据迁移到所选择的目标存储资源。对于原先存储在待移除存储资源中的部分,可以从待移除存储资源中直接复制,也可以通过冗余机制来进行恢复。
在将目标存储资源分配给对应的用户应用程序并且完成用户数据的迁移后,取消源存储资源与该用户应用程序的对应关系。
步骤506,从该存储设备上分配其他存储资源以代替所述待移除存储资源。
可选地,如果待移除存储资源中存储有用户数据,则将该用户数据迁移到所述其他存储资源。可以从待移除存储资源中直接复制用户数据,也可以通过冗余机制恢复所述用户数据。
步骤507,更新所记录的元数据信息。
由于存储资源的移除,该存储设备所对应的中间卷的元数据信息相应地发生变化。根据系统实现不同,可能还会有其他元数据信息需要更新。卷管理设备将更新后的元数据信息同步到各个中间卷。
如前所述,如果空闲存储容量大于待移除存储资源的存储容量,可以直接从该存储设备上分配其他存储资源以代替所述待移除存储资源。在这种情况下,访问速率和冗余度都不会受到影响。如果空闲存储容量小于待移除存储资源的存储容量,则需要在其他存储设备上寻找替代的存储资源,此时除了需要考虑存储容量以外,还需要考虑访问速率和冗余度。所谓具有相同性能指标,除了具有相同的存储容量以外,还需要具有相同的访问速率和冗余度。对于访问速率,目标存储资源所在的存储设备上的空闲存储访问速率必须不小于与待移除存储资源所在的存储设备上对应于该用户应用程序的存储资源所具有的访问速率。对于冗余度,目标存储资源所在的存储设备必须不同于与该用户应用程序有关的任何存储设备。
图6是从系统中移除一台存储设备时的操作过程。
移除一台存储设备可以是云存储系统的管理员主动发起的,例如对存储设备进行检查或维修;也可以是在存储设备由于诸如掉电的故障而完全无法工作时被动地进行的。如前所述,本发明尤其适用于采用低端存储设备来组成云存储系统的场合。单台低端存储设备的可靠性较低,可能由于故障而完全无法工作。通过利用根据本发明的供应系统,可以消除单台低端存储设备的低可靠性对云存储的高可靠性的影响。
步骤601,获取待移除存储设备所涉及的用户应用程序。
待移除存储设备对应于一个中间卷,能够很容易地获取该中间卷所涉及的用户应用程序。
步骤602,针对所获取的每个用户应用程序,在其他存储设备上选择目标存储资源,其中所述目标存储资源与待移除存储设备上对应于该用户应用程序的存储资源具有相同的性能指标。
在其他存储设备上选择目标存储资源的过程与步骤403所描述的过程类似。简而言之,首先判断是否能在其他存储设备中的单台存储设备上找到具有所述相同性能指标的目标存储资源;如果不能找到,则将对应于该用户应用程序的存储资源具有的性能指标减半,然后进行第二次搜索,判断是否能够在其他存储设备中的两台存储设备上分别找到具有所述减半后的性能指标的目标存储资源。以此类推。如果在不同的存储设备上找到多个具有所述相同性能指标的目标存储资源,则可以按照前面已经阐述的标准进行筛选。
需要注意的是,由于这里涉及到在其他存储设备上分配存储资源,因此需要保证目标存储资源与待移除存储设备上对应于该用户应用程序的存储资源具有相同的性能指标。对于存储容量,目标存储资源所在的存储设备上的空闲存储容量必须不小于待移除存储设备上对应于该用户应用程序的存储资源所具有的存储容量。对于访问速率,目标存储资源所在的存储设备上的空闲存储访问速率必须不小于与待移除存储存储设备上对应于该用户应用程序的存储资源所具有的访问速率。对于冗余度,目标存储资源所在的存储设备必须不同于与该用户应用程序有关的任何存储设备。
步骤603,将目标存储资源分配给对应的用户应用程序。
可选地,如果待移除存储设备中存储有用户数据,则将该用户数据迁移到所述目标存储资源。可以从待移除存储设备中直接复制用户数据,也可以通过冗余机制恢复所述用户数据。
在将目标存储资源分配给对应的用户应用程序并且完成用户数据的迁移后,,并且取消源存储资源与该用户应用程序的对应关系。
步骤604,更新所记录的元数据信息。
由于存储设备的移除,云存储系统的结构发生较大变化,卷管理设备需要更新元数据信息。卷管理设备将更新后的元数据信息同步到各个中间卷。
对于云存储系统而言,除了存储设备状态变化以外,用户应用程序对存储资源的要求也可能发生变化。比如说,用户应用程序可能增加或者减小对存储容量的要求,可能增加或者减小对访问速率的要求,可能要求改变冗余度。
对于冗余度变化,例如如果用户应用程序将对冗余度的要求从RAID5变为Mirror,则供应系统创建镜像的服务请求,然后将用户数据从当前的RAID5服务请求迁移到Mirror服务请求。如何改变冗余度是本领域的公知技术,在此不再赘述。
如果用户应用程序减小对存储容量或访问速率的要求,只需要从已经分配给该用户应用程序的存储资源中回收相应的存储容量或访问速率即可。需要注意的是,这种回收是针对该用户对应的各存储设备,或者说各中间卷平均进行的。在前面的例子中,假设某用户应用程序对存储资源的要求是:
冗余度:RAID5(4+P)
存储容量:800GB
访问速率:10000IPOS
实际分配给该用户应用程序的存储资源是4个分别可以提供200GB,2000IOPS的存储资源A、B、C和D和2个分别可以提供100GB,1000IOPS的存储资源E1,E2。如果现在该用户应用程序对存储资源的要求变为:
冗余度:RAID5(4+P)
存储容量:400GB
访问速率:5000IPOS
则通过回收以后分配给该用户应用程序的存储资源是4个分别可以提供100GB,1000IOPS的存储资源A、B、C和D和2个分别可以提供50GB,500IOPS的存储资源E1,E2。
如果用户应用程序增加对存储容量或访问速率等性能指标的要求,则按照图7所示的流程图进行处理。在图7中,以用户应用程序增加对存储容量的要求为例进行说明。对访问速率的增加按照类似的方式进行处理。
步骤701,计算用户应用程序所要求的存储资源性能指标的增量在与该用户程序相关的各存储设备上的分量。
仍然针对上述例子进行讨论,当前分配给该用户应用程序的存储资源是4个分别可以提供200GB,2000IOPS的存储资源A、B、C和D和2个分别可以提供100GB,1000IOPS的存储资源E1,E2。如果用户应用程序对存储容量的要求变为1600G,则将该增量平均分布到与该应用程序相关的各存储设备上。具体而言,在存储资源A、B、C和D所在的存储设备上分布200GB的增量分量,在E1,E2所在的存储设备上分布100GB的增量分量。
步骤702,针对每个与该用户程序相关的各存储设备,判断所述增量分量是否能够由该存储设备的空闲存储资源中进行分配。如果能够则进入步骤703,否则进入步骤704。
这里判断增量分量是否能够从存储设备的空闲存储资源中进行分配,实际上就是判断所述增量分量是否不大于从该存储设备的空闲存储资源。
根据本发明的一个实施例,当所述增量分量无法从存储设备的空闲存储资源中进行分配时,可以拒绝所述请求并返回错误提示信息。
步骤703,从存储设备的空闲存储资源中分配所述增量分量给该用户应用程序。
步骤704,在其他存储设备上选择目标存储资源,所述目标存储资源具有增加后的性能指标。
在其他存储设备上选择目标存储资源的过程与步骤403所描述的过程类似。简而言之,首先判断是否能在其他存储设备中的单台存储设备上找到具有所述增加后的性能指标的目标存储资源;如果不能找到,则将所述增加后的性能指标减半,然后进行第二次搜索,判断是否能够在其他存储设备中的两台存储设备上分别找到具有所述减半后的性能指标的目标存储资源。以此类推。如果在不同的存储设备上找到多个具有所述增加后的性能指标的目标存储资源,则可以按照前面已经阐述的标准进行筛选。
为了保证冗余度,目标存储资源所在的存储设备必须不同于当前与该用户应用程序有关的任何存储设备。
步骤705,将所述目标存储资源分配给所述用户应用程序。
这里的源存储资源指的是:空闲存储资源小于所述增量分量的存储设备上与该用户应用程序对应的存储资源。
可选地,将源存储资源中存储的用户数据迁移到目标存储资源。
在将目标存储资源分配给所述用户应用程序并且完成数据迁移之后,可以取消源存储资源与所述用户应用程序的对应关系
步骤706,更新所记录的元数据信息。
利用根据本发明的供应系统(provisioning system),一方面可以以更加简单的方式对云存储环境进行管理。云存储的管理员只需要向供应系统提供存储设备的信息,然后所述供应系统就可以如上所述地监控存储设备所能提供的存储资源。另一方面,可以向用户提供更好的服务。对于用户来说,只需要向供应系统提供对存储资源的性能指标的要求。
由于将用户数据分配到多个存储设备上,使得云存储中的存储设备得到充分的利用。用户的应用程序所称获得的存储资源的最大量远远超过仅仅使用一台存储设备的情况。此外,由于有多个存储设备的参与,因此当用户对存储设备的性能指标的要求发生变化时,或者当所选择的存储设备之一发生故障时,可以很快地进行重新分配。
一般来说,低端存储设备能够通过RAID处理磁盘故障,但是却无法处理整台存储设备的物理故障例如掉电。根据本发明实施例的供应系统考虑到整台存储设备故障的情况,即便低端存储设备不支持RAS或者复制功能,用户数据也可以被分配到多个存储设备上从而实现用户所要求的冗余度。如上所述,针对用户数据块进行奇偶校验运算从而得到冗余数据块,并且对应的用户数据块和冗余数据块分别存放在不同的存储设备上。因此当一台存储设备故障时,并不影响对用户数据的访问。在发现故障后,通过很快地进行重新分配,就能够恢复到故障之前的状态。
根据传统的供应系统,存储容量是由一台存储设备提供的。当存储容量的要求大于该存储设备的最大存储容量时,用户对存储容量的要求就无法得到满足。根据本发明实施例,用户数据被分配到多个存储设备上,从而可以保证满足用户对存储容量的要求。
附图8是根据本发明实施例的管理存储设备的装置的框图。其中将各台存储设备提供的存储资源分别虚拟化整合为对应的中间卷,并且将多个中间卷虚拟化整合成单独的逻辑卷,该装置包括:
要求获取模块,配置为获取向所述逻辑卷提出的对存储资源的要求,所述要求至少包括冗余度;
存储资源获取模块,配置为获得各个中间卷所能提供的存储资源;
中间卷选择模块,配置为根据所述对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述冗余度确定;以及
用户数据存储模块,配置为根据冗余度的要求将用户数据存储到所选择的中间卷中。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑卷功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
虽然以上结合具体实施例,对本发明的各个装置和方法进行了详细描述,但本发明并不限于此。本领域普通技术人员能够在说明书教导之下对本发明进行多种变换、替换和修改而不偏离本发明的精神和范围。应该理解,所有这样的变化、替换、修改仍然落入本发明的保护范围之内。本发明的保护范围由所附权利要求来限定。

Claims (10)

1.一种管理多台存储设备的方法,其中将各台存储设备提供的存储资源分别虚拟化整合为对应的中间卷,并且将多个中间卷虚拟化整合成单独的逻辑卷,该方法包括:
获取向所述逻辑卷提出的对存储资源的要求,所述要求至少包括对冗余度的要求;
获得各个中间卷所能提供的存储资源;
根据所述对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述对冗余度的要求确定;
根据所述对冗余度的要求将用户数据存储到所选择的中间卷中;
接收对逻辑卷增加存储资源的指令,所述指令包含存储资源性能指标的增量;
计算所述增量在与该逻辑卷相关的各中间卷上的分量;以及
在所述增量可以在所述各中间卷的空闲存储资源中进行分配的情况下,从所述各中间卷的空闲存储资源中分配所述增量分量给该逻辑卷。
2.如权利要求1所述的方法,进一步包括:
接收从中间卷中移除存储资源的指令;
获取该中间卷上的空闲存储容量和待移除存储资源的存储容量;
在该中间卷上的空闲存储容量大于待移除存储资源的存储容量的情况下,从该中间卷上分配其他存储资源以代替所述待移除存储资源。
3.如权利要求2所述的方法,进一步包括:
在该中间卷上的空闲存储容量小于待移除存储资源的存储容量的情况下,获取待移除存储资源所对应的逻辑卷;
针对所获取的每个逻辑卷,在其他中间卷上选择目标存储资源,其中所述目标存储资源与源存储资源具有相同的性能指标,所述源存储资源是待移除存储资源所在的中间卷上对应于该逻辑卷的存储资源;
将所述目标存储资源分配给对应的逻辑卷。
4.如权利要求1所述的方法,进一步包括:
接收移除中间卷的指令;
获取待移除中间卷所涉及的逻辑卷;
针对所获取的每个逻辑卷,在其他中间卷上选择目标存储资源,其中所述目标存储资源与源存储资源具有相同的性能指标,所述源存储资源是待移除中间卷上对应于该逻辑卷的存储资源;
将所述目标存储资源分配给对应的逻辑卷。
5.如权利要求1所述的方法,进一步包括:
在所述增量无法在所述中间卷的空闲存储资源中进行分配的情况下,在其他中间卷上选择目标存储资源,所述目标存储资源具有增加后的性能指标;
将所述目标存储资源分配给所述逻辑卷。
6.一种管理多台存储设备的装置,其中将各台存储设备提供的存储资源分别虚拟化整合为对应的中间卷,并且将多个中间卷虚拟化整合成单独的逻辑卷,该装置包括:
要求获取模块,配置为获取向所述逻辑卷提出的对存储资源的要求,所述要求至少包括对冗余度的要求;
存储资源获取模块,配置为获得各个中间卷所能提供的存储资源;
中间卷选择模块,配置为根据所述对存储资源的要求和各个中间卷所能提供的存储资源,选择中间卷以满足所述对存储资源的要求,其中所述中间卷的最小数目根据所述对冗余度的要求确定;
用户数据存储模块,配置为根据所述对冗余度的要求将用户数据存储到所选择的中间卷中;
配置为接收对逻辑卷增加存储资源的指令的模块,所述指令包含存储资源性能指标的增量;
配置为计算所述增量在与该逻辑卷相关的各中间卷上的分量的模块;以及
配置为在所述增量可以在所述各中间卷的空闲存储资源中进行分配的情况下,从所述各中间卷的空闲存储资源中分配所述增量分量给该逻辑卷的模块。
7.如权利要求6所述的装置,进一步包括:
配置为接收从中间卷中移除存储资源的指令的模块;
配置为获取该中间卷上的空闲存储容量和待移除存储资源的存储容量的模块;
配置为在该中间卷上的空闲存储容量大于待移除存储资源的存储容量的情况下,从该中间卷上分配其他存储资源以代替所述待移除存储资源的模块。
8.如权利要求7所述的装置,进一步包括:
配置为在该中间卷上的空闲存储容量小于待移除存储资源的存储容量的情况下,获取待移除存储资源所对应的逻辑卷的模块;
配置为针对所获取的每个逻辑卷,在其他中间卷上选择目标存储资源的模块,其中所述目标存储资源与源存储资源具有相同的性能指标,所述源存储资源是待移除存储资源所在的中间卷上对应于该逻辑卷的存储资源;
配置为将所述目标存储资源分配给对应的逻辑卷的模块。
9.如权利要求6所述的装置,进一步包括:
配置为接收移除中间卷的指令的模块;
配置为获取待移除中间卷所涉及的逻辑卷的模块;
配置为针对所获取的每个逻辑卷,在其他中间卷上选择目标存储资源的模块,其中所述目标存储资源与源存储资源具有相同的性能指标,所述源存储资源是待移除中间卷上对应于该逻辑卷的存储资源;
配置为将所述目标存储资源分配给对应的逻辑卷的模块。
10.如权利要求6所述的装置,进一步包括:
配置为在所述增量无法在所述中间卷的空闲存储资源中进行分配的情况下,在其他中间卷上选择目标存储资源的模块,所述目标存储资源具有增加后的性能指标;
配置为将所述目标存储资源分配给所述逻辑卷的模块。
CN201110305476.2A 2011-09-30 2011-09-30 用于管理存储设备的方法和设备 Expired - Fee Related CN103036930B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110305476.2A CN103036930B (zh) 2011-09-30 2011-09-30 用于管理存储设备的方法和设备
US13/602,051 US8924666B2 (en) 2011-09-30 2012-08-31 Managing storage devices in a cloud storage environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110305476.2A CN103036930B (zh) 2011-09-30 2011-09-30 用于管理存储设备的方法和设备

Publications (2)

Publication Number Publication Date
CN103036930A CN103036930A (zh) 2013-04-10
CN103036930B true CN103036930B (zh) 2015-06-03

Family

ID=47993779

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110305476.2A Expired - Fee Related CN103036930B (zh) 2011-09-30 2011-09-30 用于管理存储设备的方法和设备

Country Status (2)

Country Link
US (1) US8924666B2 (zh)
CN (1) CN103036930B (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9864517B2 (en) 2013-09-17 2018-01-09 Netapp, Inc. Actively responding to data storage traffic
US9763518B2 (en) 2014-08-29 2017-09-19 Cisco Technology, Inc. Systems and methods for damping a storage system
CN105893170A (zh) * 2015-01-04 2016-08-24 伊姆西公司 用于提供对资源的访问的方法和系统
US9853873B2 (en) 2015-01-10 2017-12-26 Cisco Technology, Inc. Diagnosis and throughput measurement of fibre channel ports in a storage area network environment
US9900250B2 (en) 2015-03-26 2018-02-20 Cisco Technology, Inc. Scalable handling of BGP route information in VXLAN with EVPN control plane
CN106155764A (zh) * 2015-04-23 2016-11-23 阿里巴巴集团控股有限公司 调度虚拟机输入输出资源的方法及装置
CN106201839B (zh) 2015-04-30 2020-02-14 阿里巴巴集团控股有限公司 一种业务对象的信息加载方法和装置
CN106209741B (zh) 2015-05-06 2020-01-03 阿里巴巴集团控股有限公司 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
US10222986B2 (en) 2015-05-15 2019-03-05 Cisco Technology, Inc. Tenant-level sharding of disks with tenant-specific storage modules to enable policies per tenant in a distributed storage system
US11588783B2 (en) 2015-06-10 2023-02-21 Cisco Technology, Inc. Techniques for implementing IPV6-based distributed storage space
US10778765B2 (en) 2015-07-15 2020-09-15 Cisco Technology, Inc. Bid/ask protocol in scale-out NVMe storage
US9892075B2 (en) 2015-12-10 2018-02-13 Cisco Technology, Inc. Policy driven storage in a microserver computing environment
US10379742B2 (en) 2015-12-28 2019-08-13 Netapp, Inc. Storage zone set membership
US10514984B2 (en) 2016-02-26 2019-12-24 Netapp, Inc. Risk based rebuild of data objects in an erasure coded storage system
US10055317B2 (en) * 2016-03-22 2018-08-21 Netapp, Inc. Deferred, bulk maintenance in a distributed storage system
US10140172B2 (en) 2016-05-18 2018-11-27 Cisco Technology, Inc. Network-aware storage repairs
US10437486B2 (en) * 2016-05-24 2019-10-08 Samsung Electronics Co., Ltd. Method and apparatus for tenant-aware storage sharing platform
US20170351639A1 (en) 2016-06-06 2017-12-07 Cisco Technology, Inc. Remote memory access using memory mapped addressing among multiple compute nodes
US10664169B2 (en) 2016-06-24 2020-05-26 Cisco Technology, Inc. Performance of object storage system by reconfiguring storage devices based on latency that includes identifying a number of fragments that has a particular storage device as its primary storage device and another number of fragments that has said particular storage device as its replica storage device
US11563695B2 (en) 2016-08-29 2023-01-24 Cisco Technology, Inc. Queue protection using a shared global memory reserve
US10545914B2 (en) 2017-01-17 2020-01-28 Cisco Technology, Inc. Distributed object storage
US10243823B1 (en) 2017-02-24 2019-03-26 Cisco Technology, Inc. Techniques for using frame deep loopback capabilities for extended link diagnostics in fibre channel storage area networks
US10713203B2 (en) 2017-02-28 2020-07-14 Cisco Technology, Inc. Dynamic partition of PCIe disk arrays based on software configuration / policy distribution
US10254991B2 (en) 2017-03-06 2019-04-09 Cisco Technology, Inc. Storage area network based extended I/O metrics computation for deep insight into application performance
US10303534B2 (en) 2017-07-20 2019-05-28 Cisco Technology, Inc. System and method for self-healing of application centric infrastructure fabric memory
US10404596B2 (en) 2017-10-03 2019-09-03 Cisco Technology, Inc. Dynamic route profile storage in a hardware trie routing table
US10942666B2 (en) 2017-10-13 2021-03-09 Cisco Technology, Inc. Using network device replication in distributed storage clusters
US11153215B1 (en) * 2018-11-19 2021-10-19 Cvs Pharmacy, Inc. Asynchronous high throughput inbound messages with throttled outbound messages to safeguard enterprise backend systems
US10983885B2 (en) * 2018-11-29 2021-04-20 International Business Machines Corporation Recovering storage devices in a storage array having errors

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101997918A (zh) * 2010-11-11 2011-03-30 清华大学 异构san环境中的海量存储资源按需分配的实现方法
CN102147770A (zh) * 2011-03-28 2011-08-10 杭州电子科技大学 一种存储资源管理系统及方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060136525A1 (en) * 2004-12-21 2006-06-22 Jens-Peter Akelbein Method, computer program product and mass storage device for dynamically managing a mass storage device
US20100011368A1 (en) 2008-07-09 2010-01-14 Hiroshi Arakawa Methods, systems and programs for partitioned storage resources and services in dynamically reorganized storage platforms
US20100153482A1 (en) 2008-12-10 2010-06-17 Full Armor Corporation Cloud-Based Automation of Resources
US9344401B2 (en) 2009-02-04 2016-05-17 Citrix Systems, Inc. Methods and systems for providing translations of data retrieved from a storage system in a cloud computing environment
US20100217944A1 (en) 2009-02-26 2010-08-26 Dehaan Michael Paul Systems and methods for managing configurations of storage devices in a software provisioning environment
US9207984B2 (en) 2009-03-31 2015-12-08 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US8799322B2 (en) 2009-07-24 2014-08-05 Cisco Technology, Inc. Policy driven cloud storage management and cloud storage policy router
US20110029729A1 (en) * 2009-07-30 2011-02-03 Lsi Corporation Erasure coded data storage capacity and power management
US9329951B2 (en) 2009-07-31 2016-05-03 Paypal, Inc. System and method to uniformly manage operational life cycles and service levels
US20110035248A1 (en) 2009-08-07 2011-02-10 Loic Juillard Distributed Service Platform Computing with a Guaranteed Quality of Service

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101997918A (zh) * 2010-11-11 2011-03-30 清华大学 异构san环境中的海量存储资源按需分配的实现方法
CN102147770A (zh) * 2011-03-28 2011-08-10 杭州电子科技大学 一种存储资源管理系统及方法

Also Published As

Publication number Publication date
CN103036930A (zh) 2013-04-10
US20130086340A1 (en) 2013-04-04
US8924666B2 (en) 2014-12-30

Similar Documents

Publication Publication Date Title
CN103036930B (zh) 用于管理存储设备的方法和设备
US11132256B2 (en) RAID storage system with logical data group rebuild
US9690663B2 (en) Allocation of replica-sets in a storage cluster
US9541978B2 (en) Redundancies for reconstruction in mass data storage systems
CN102652423B (zh) 用于集群选择和协作复制的方法和系统
US8429449B2 (en) Optimized placement of virtual machines in a network environment
CN103970481B (zh) 重建存储器阵列的方法和装置
US20200043524A1 (en) RAID Storage System with Logical Data Group Priority
CN109725831B (zh) 管理存储系统的方法、系统和计算机可读介质
CN102981929B (zh) 磁盘镜像的管理方法和系统
CN103946846A (zh) 使用虚拟驱动作为用于raid组的热备用
CN104281468A (zh) 分布式虚拟机图像管理的方法和系统
CN103098014A (zh) 存储系统
CN103189847A (zh) 集群式数据处理系统中的存储装置管理
US10180871B2 (en) Storage failure processing in a shared storage architecture
CN109725827B (zh) 管理存储系统的方法、系统和计算机程序产品
CN107665154A (zh) 基于rdma与消息传递的可靠数据分析方法
CN110389858A (zh) 存储设备的故障恢复方法和设备
US20170123915A1 (en) Methods and systems for repurposing system-level over provisioned space into a temporary hot spare
CN106104460A (zh) 分布式存储系统中的可靠性增强
JP2007156679A (ja) サーバの障害回復方法及びデータベースシステム
CN114003350B (zh) 超融合系统的数据分配方法和系统
CN113552998A (zh) 用于管理存储系统中的条带的方法、设备和程序产品
CN108733307B (zh) 存储管理方法、设备以及计算机可读介质
CN116974489A (zh) 一种数据处理方法、装置、系统、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150603

Termination date: 20200930

CF01 Termination of patent right due to non-payment of annual fee