CN107515726A - 用于管理存储设备的方法和系统 - Google Patents

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

Info

Publication number
CN107515726A
CN107515726A CN201610431451.XA CN201610431451A CN107515726A CN 107515726 A CN107515726 A CN 107515726A CN 201610431451 A CN201610431451 A CN 201610431451A CN 107515726 A CN107515726 A CN 107515726A
Authority
CN
China
Prior art keywords
storage
storage region
status identifier
response
state
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.)
Granted
Application number
CN201610431451.XA
Other languages
English (en)
Other versions
CN107515726B (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.)
EMC Corp
Original Assignee
EMC 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 EMC Corp filed Critical EMC Corp
Priority to CN201610431451.XA priority Critical patent/CN107515726B/zh
Priority to US15/623,636 priority patent/US10572163B2/en
Publication of CN107515726A publication Critical patent/CN107515726A/zh
Priority to US16/798,217 priority patent/US11327662B2/en
Application granted granted Critical
Publication of CN107515726B publication Critical patent/CN107515726B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明的实施方式涉及用于管理存储区域的方法和系统。在一个实施方式中,提供了一种用于管理存储区域的方法,包括:基于预定划分规则,获取存储系统中的存储区域;确定关于所述存储区域是否已经被使用的使用状态;基于所述使用状态,为所述存储区域设置状态标识符;以及基于所述状态标识符来管理所述存储区域。在另一实施方式中,提出了一种用于管理存储区域的系统,包括:一个或者多个处理器;耦合至所述一个或者多个处理器中的至少一个处理器的存储器;在所述存储器中存储的计算机程序指令,当由所述至少一个处理器执行所述计算机程序指令时,使得所述系统执行用于管理存储区域的方法。

Description

用于管理存储设备的方法和系统
技术领域
本发明的各实施方式涉及存储管理,更具体地,涉及用于在存储系统(例如,独立磁盘冗余阵列(Redundant Array of Independent Disks,RAID)中管理存储设备的方法和系统。
背景技术
随着数据存储技术的发展,各种数据存储设备已经能够向用户提供越来越高的数据存储能力,并且数据访问速度也有了很大程度的提高。在提高数据存储能力的同时,用户对于数据可靠性和存储系统的响应时间也提出了越来越高的需求。
目前,已经开发出了基于冗余磁盘阵列的多种数据存储系统来提高数据的可靠性。当存储系统中的一个或者多个磁盘出现故障时,可以从其他正常操作的磁盘上的数据来恢复出故障磁盘中的数据。然而,由于这种存储系统包括多个磁盘,在存储系统的初始化期间不得不对多个磁盘进行初始化,造成了初始化效率较低、存储系统的响应效率不理想的问题。
发明内容
因而,期望能够开发并实现一种能够降低存储系统的响应时间,进而提高存储系统的访问性能的技术方案。期望该技术方案能够与现有的存储系统相兼容,并且在无需针对现有存储系统增加额外硬件设备的情况下以更高的效率来管理存储系统中的存储区域。
在本发明的一个实施方式中,提供了一种用于管理存储区域的方法,包括:基于预定划分规则,获取存储系统中的存储区域;确定关于所述存储区域是否已经被使用的使用状态;基于所述使用状态,为所述存储区域设置状态标识符;以及基于所述状态标识符来管理所述存储区域。
在本发明的一个实施方式中,提供了一种用于管理存储区域的系统,包括:一个或者多个处理器;耦合至所述一个或者多个处理器中的至少一个处理器的存储器;在所述存储器中存储的计算机程序指令,当由所述至少一个处理器执行所述计算机程序指令时,使得所述系统:基于预定划分规则,获取存储系统中的存储区域;确定关于所述存储区域是否已经被使用的使用状态;基于所述使用状态,为所述存储区域设置状态标识符;以及基于所述状态标识符来管理所述存储区域。
提出了一种用于管理存储区域的装置,包括:获取模块,配置用于基于预定划分规则,获取存储系统中的存储区域;确定模块,配置用于确定关于所述存储区域是否已经被使用的使用状态;设置模块,配置用于基于所述使用状态,为所述存储区域设置状态标识符;以及管理模块,配置用于基于所述状态标识符来管理所述存储区域。
采用本发明的技术方案,可以降低存储系统的响应时间,进而以更高的效率来管理存储系统中的存储区域。
附图说明
结合附图并参考以下详细说明,本发明各实施方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本发明的若干实施方式。在附图中:
图1示意性示出了适于实现本发明实施方式的示例性计算系统的框图;
图2A示意性示出了根据一个技术方案的独立磁盘冗余阵列的结构的示意图,图2B示意性示出了根据一个技术方案的独立磁盘冗余阵列的重建过程的示意图;
图3示意性示出了根据本发明的一个实施方式的用于管理存储区域的示例的示意图;
图4示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的流程图;
图5示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的初始化操作的流程图;
图6示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的写入操作的流程图;
图7示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的读取操作的流程图;
图8示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的重建操作的流程图;以及
图9示意性示出了根据本发明的一个实施方式的用于管理存储区域的装置的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了适于用来实现本发明实施方式的示例性计算系统100的框图。如图1所示,计算机系统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所示的结构框图仅仅是为了示例的目的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。
所属技术领域的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施方式中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供者来通过因特网连接)。
下面将参照本发明实施方式的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其他可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instructionmeans)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
独立磁盘冗余阵列(Redundant Array of Independent Disks,RAID)可以将多个存储设备组合起来,成为一个磁盘阵列。通过提供冗余的存储设备,可以使得整个磁盘组的可靠性大大超过单一的存储设备。RAID可以提供优于单一的存储设备的各种优势,例如,增强数据整合度,增强容错功能,增加吞吐量或容量,等等。RAID存在多个标准,例如RAID-1,RAID-2,RAID-3,RAID-4,RAID-5,RAID-6,RAID-10,RAID-50等等。关于RAID级别的更多细节,本领域技术人员例如可以参见https://en.wikipedia.org/wiki/Standard_RAID_levels、以及https://en.wikipedia.org/wiki/Nested_RAID_levels等。操作系统可以把由多个存储设备构成的磁盘阵列视为单一的逻辑存储单元或磁盘。通过将磁盘阵列划分为多个条带(strip),可以将数据分布到多个存储设备,从而实现低延迟、高带宽,并且其中的部分磁盘毁坏后可以在一定程度上恢复数据。
图2A示意性示出了根据一个技术方案的独立磁盘冗余阵列的结构的示意图220A。在图2A中,以包括五个独立存储设备(210A、212A、214A、216A以及218A)的RAID-5阵列为示例,来说明RAID的工作原理。应当注意,尽管图2A中示意性示出了五个存储设备,在其他的实施方式中,根据RAID的版本不同,还可以包括更多或者更少的存储设备。尽管图2A中示出了条带220A、222A和224A,在其他的示例中,RAID系统还可以包括不同数量的条带。
在RAID中,条带跨越多个物理存储设备(例如,条带220A跨越了存储设备210A、212A、214A、216A以及218A)。可以简单地将条带理解为多个存储设备中的满足一定地址范围的存储区域。在条带220中存储的数据包括多个部分:存储在存储设备210A上的数据块D11、存储在存储设备212A上的数据块D12、存储在存储设备214A上的数据块D13、存储在存储设备216A上的数据块D14、以及存储在存储设备218A上的数据块P1。在此示例中,数据块D11、D12、D13、以及D14是被存储的数据,而数据块P1是被存储数据的校验值。
在其他条带中存储数据的方式也类似于条带220A,不同之处在于,有关其他数据块的校验值可以存储在不同于存储设备218A的存储设备上。以此方式,当多个存储设备210A、212A、214A、216A以及218A中的一个存储设备出现故障时,可以从其他的正常的存储设备中恢复出故障设备中的数据。
图2B示意性示出了根据一个技术方案的独立磁盘冗余阵列的重建过程的示意图220B。如图2B所示,当一个存储设备(例如,以阴影示出的存储设备218A)出现故障时,可以从其余的正常操作的多个存储设备210A、212A、214A、216A中恢复数据。此时,可以向RAID中加入新的后备存储设备218B来替代存储设备218A,以此方式,可以将恢复的数据写入218B并实现系统的重建。
RAID可以提供更可靠的数据存储,然而,由于RAID中提供了大量的冗余存储,因而在RAID的初始化操作中导致需要花费大量的时间来对这些冗余存储进行初始化,这导致了初始化效率较低。另一方面,如果RAID中仅有少部分存储空间被使用,则在RAID的重建阶段,对于新加入的后备存储设备,也可能会花费较多的时间来在后备存储设备中对与未被使用的RAID的部分相关联的存储区域进行初始化操作。
在针对RAID设备的典型初始化阶段中,需要针对RAID中的每个存储设备进行初始化。具体而言,可以通过向存储设备中写入“0”来清空存储设备中的数据,进而实现初始化操作。例如对于图2A所示的RAID,根据RAID算法原理,全0数据的校验值也为0。初始化可以通过向每个存储设备的存储区域写入“0”来实现。尽管可以对多个存储设备210A、212A、214A、216A以及218A并行地进行写0操作,然而,当存储设备中包括较大存储空间时,写0操作将会占用大量时间。
基于RAID中的上述缺陷,本发明的实施方式提供了一种高效的用于管理RAID中的存储区域的方法。具体地,根据本发明的一个实施方式的用于管理存储区域的方法包括:基于预定划分规则,获取存储系统中的存储区域;确定关于所述存储区域是否已经被使用的使用状态;基于所述使用状态,为所述存储区域设置状态标识符;以及基于所述状态标识符来管理所述存储区域。
在下文中将参见图3详细说明本发明的各个实施方式的原理。图3示意性示出了根据本发明的一个实施方式的用于管理存储区域的示例的示意图300。如图3所示,可以提供标识区310来记录RAID中的数据区320是否已经被使用的状态。应当注意,在本发明的不同实施方式中可以将标识区310设置在不同的存储空间。例如,可以在RAID中的某个存储设备中分配专用存储空间用于标识区310,或者,还可以在单独的专用存储设备中为标识区310分配存储空间。
具体地,可以在标识区310中设置多个标识符312、314、316以及318来分别用于表示数据区320中的每个存储区域322、324、326以及328是否已经被使用的状态。例如,标识符可以占用一个比特的存储空间,例如可以将“1”定义为“使用中”而将“0”定义为“未使用”。本领域技术人员还可以根据在此描述的本发明的原理,采用其他数据结构来存储各个存储区域的使用状态。
采用如图3所示的结构,在RAID的初始化阶段,不必在物理上逐一清除每个物理存储区域中的数据,而是仅需将与每个物理存储区域相关联的标识符的状态设置为“未使用”即可。在后续的写入操作时,可以改变标识符的状态,继而,在针对RAID进行的其他读写操作和重建操作中,可以基于标识符的状态来进行相应的处理。以此方式,可以大大降低初始化操作的时间,并且在一定程度上降低重建操作的时间。
图4示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的流程图400。首先,在步骤S410中,基于预定划分规则,获取存储系统中的存储区域。在此步骤中,可以基于不同规则来将存储系统的存储空间划分为不同的存储区域。应当注意,在本发明的上下文中,存储系统可以是独立磁盘冗余阵列,还可以是其他类型的存储系统。
在步骤S420中,确定关于所述存储区域是否已经被使用的使用状态。在此步骤中,可以基于针对该存储区域所进行的历史操作来确定该存储区域是否已经被使用。例如,在初始化阶段,存储系统中的存储空间被初始化,此时存储空间是“未使用”状态。在初始化阶段之后,当已经向存储空间执行了写入操作后,则该存储空间是“使用中”状态。
在步骤S430中,基于所述使用状态,为所述存储区域设置状态标识符。在此步骤中,可以基于在步骤S420中确定的“未使用”/“使用中”的状态,来设置状态标识符。例如,在上文图3的示例中,以标识符312来表示存储区域322的使用状态时,则在初始化阶段可以将标识符312设置为“未使用”。应当注意,此时标识符312中的“未使用”即表示存储区域322此时处于未使用状态。尽管此时存储区域322中可能会存储有数据(即,存储区域322中的数据并没有被物理地清除),由于此时标识符312指示该存储区域322处于“未使用”状态,因而其中的数据对于外界而言全部都是数据0。
在步骤S440中,基于所述状态标识符来管理所述存储区域。在针对存储系统进行操作时,可以基于标识符所指示的“未使用”或者“使用中”,来确定后续的操作步骤以便管理存储区域。
在本发明的一个实施方式中,确定关于所述存储区域是否已经被使用的使用状态包括:响应于接收到针对所述存储系统进行初始化的初始化操作,将状态标识符设置为“未使用”状态。
具体地,图5示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的初始化操作的流程图500。如图5所示,在步骤S510中,接收针对存储系统进行初始化的初始化操作。在本发明的各个实施方式中,初始化操作可以来自于存储系统的管理员所发出的命令,或者可以来自于存储系统中的其他设置而自动地被触发。接着,在步骤S520中,将存储区域的状态标识符设置为“未使用”状态。在上文图3的示例中,当标识符312用于指示存储区域322的状态时,则在此步骤中可以将标识符312设置为“未使用”。
应当注意,在上文描述的步骤S510和S520中仅示出了针对存储系统中的一个存储区域的操作,在其他实施方式中,在初始化阶段还可以将存储系统中的其他存储区域的标识符设置为“未使用”,以便完成针对存储系统中的每个存储区域的初始化操作。
具体地,在本发明的一个实施方式中,进一步包括:响应于接收到针对所述存储系统进行初始化的所述初始化操作,将存储系统中的其他存储区域的状态标识符设置为“未使用”状态。继续参见图5,在步骤S530中示出了操作的具体步骤。具体地,当采用上文图3中的数据结构时,还可以将分别用于指示存储区域324、326和328的状态的标识符314、316和318设置为“未使用”。以此方式,可以完成针对存储系统中的每个存储区域的初始化操作。
应当注意,在常规的初始化操作中,需要在物理上将存储区域中的各个比特位逐一写0。不同于常规的初始化操作,本发明提出了针对存储区域进行“逻辑地”初始化的技术方案。通过将存储区域的状态标识符设置为“未使用”状态,则可以实现表示此存储区域中的数据全部为0的目的,进而实现“逻辑地”初始化。以此方式,可以将针对各个存储区域进行物理地初始化的操作分散地移动至针对各个存储区域进行访问期间,防止在存储系统启动时针对每个存储区域逐一执行物理地初始化进而占用大量初始化时间的情况。
应当注意,在本发明的各个实施方式中并不要求针对存储系统中的每个存储区域均使用状态标识符来表示该存储区域是否被使用的状态。而是,在存储系统中,可以针对一个或者多个存储区域来式设置状态标识符,并且基于该状态标识符的状态来管理该存储区域。尽管仅针对存储系统中的一部分存储区域来应用本发明的技术方案并不能最大程度地改善初始化阶段和重建阶段的效率,然而,以此方式可以针对存储系统中的至少一个存储区域进行优化,并且可以在一定程度上有助于提高存储系统的操作效率。
当针对存储系统进行写入操作时,存储系统可以基于写入操作中的相关地址的信息来确定针对存储系统中的哪个存储区域执行写入。如果与写入操作相关联的存储区域是基于本发明的方法来进行管理的,则可以基于存储区域的状态标识符来执行进一步的操作。
在本发明的一个实施方式中,基于所述状态标识符来管理所述存储区域包括:响应于接收到针对所述存储区域进行写入的写入操作,确定所述状态标识符的状态;响应于所述状态标识符为“未使用”:清除所述存储区域中的数据;向所述目标地址处写入数据;以及将所述状态标识符设置为“使用中”。在本发明的一个实施方式中,进一步包括:响应于所述状态标识符为“使用中”,向由所述写入操作指示的目标地址处写入与所述写入操作相关联的目标数据。
具体地,图6示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的写入操作的流程图600。如图6所示,当状态标识符的状态不同时,则执行不同的操作。首先,在步骤S610中,接收针对存储区域进行写入的写入操作。接着,在步骤S620中确定于该存储区域相关联的状态标识符的内容。如果状态标识符指示“未使用”,则操作流程前进至步骤S630,并且在此步骤中针对存储区域执行清空操作,继而向其中写入数据。应当注意,存储区域在初始化阶段并未被物理地清空,因而在向该存储区域实际写入数据之前,需要首先清除存储区域中的数据,即,在此步骤中在物理上执行写0操作。
继而,可以将待写入的数据写入到与写入操作相关联的地址,并将状态标识符修改为“使用中”的状态。应当理解,在此步骤中可以首先修改标识符的状态再向存储区域中写入数据,或者,还可以首先写入数据再修改标识符的状态。应当注意,在本发明的上下文中所描述的读写操作可以与现有技术中的锁定操作配合使用,以便防止出现读写冲突等问题。
在步骤S620中,当状态标识符指示“使用中”时,则表示此时存储区域的物理初始化已经完成,并且可以如同普通存储区域那样被使用。此时,操作流程前进至步骤S630,并且向由所述写入操作指示的目标地址处写入与所述写入操作相关联的目标数据。
在写入操作中有可能会改变状态标识符的状态,而在读入操作中并不会改变状态标识符的状态。在本发明的一个实施方式中,基于所述状态标识符来管理所述存储区域包括:响应于接收到针对所述存储区域进行读取的读取操作,确定所述状态标识符的状态;以及响应于所述状态标识符为“未使用”,返回数据0;否则从所述存储区域中的由所述读取操作指示的目标地址处返回目标数据。
图7示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的读取操作的流程图700。具体地,在步骤S710中,首先接收针对存储系统中的存储区域进行读取的读取操作。接着在步骤S720中,确定与存储区域相关联的状态标识符的状态。当状态标识符指示“未使用”时,则表示该存储区域目前并没有可用数据供外界访问,因而操作流程前进至步骤S730,并且返回数据0。
进一步,当在步骤S720中确定状态指示符为“使用中”时,则操作流程前进至步骤S730。在此步骤S730中,从所述存储区域中的由所述读取操作指示的目标地址处返回目标数据。应当注意,状态指示符指示“使用中”表示,与读取操作相关联的存储区域已经存储有可供外界访问的数据,因而后续操作流程类似于常规的数据读取操作。
根据本发明的各个实施方式,通过使用状态标识符来指示存储系统中的存储区域的状态,在存储系统的初始化操作期间可以简单地将状态指示符的状态设置为“未使用”来指示存储区域已经被“逻辑地”初始化,而不必逐一针对存储区域中的每个比特来执行物理地初始化操作。类似于初始化过程,在重建过程中,对于处于“未使用”状态的存储区域,也可以采用类似的方式进行重建操作,进而达到缩短重建时间的目的。
在本发明的一个实施方式中,基于所述状态标识符来管理所述存储区域包括:响应于接收到针对所述存储系统进行重建的重建操作,确定状态标识符的状态;响应于所述状态标识符为“未使用”,跳过针对所述存储区域的处理。
图8示意性示出了根据本发明的一个实施方式的用于管理存储区域的方法的重建操作的流程图800。如图8所示,在步骤S810中,接收针对存储系统进行重建的重建请求。应当注意,在此步骤中的重建请求可以是基于存储系统的管理员的手工操作而触发的,或者,重建请求还可以基于存储系统的配置信息而自动地发送。接着,在步骤S820中,确定状态标识符的状态,当状态标识符指示“未使用”时,则操作流程前进至S830以进行后续处理步骤。
在此步骤中,“未使用”状态表示出现故障的存储区域在初始化之后并未被使用过,并且其中存储的是什么数据对于存储系统而言无关紧要,存储系统将认为在此故障的存储区域中存储的数据是无效的。换言之,无论其中存储了什么数据,在存储系统的重建过程中不需要针对这些数据进行任何恢复操作,而是仅需跳过该存储区域并且处理下一存储区域。
按照传统的存储系统管理技术,在存储系统的初始化阶段物理地清除各个存储区域中的数据。由于在针对存储系统的数据读取操作期间并不记录哪个存储区域已经被使用而哪个存储区域并未给使用,因而,对于已经被使用或者根本没有被使用的存储区域中的数据,都需要进行恢复处理,并将恢复的数据存储值后备存储设备。因而传统存储系统在重建时将占用较长的时间。相比于传统技术而言,采用本发明的技术方案,可以仅针对存储系统中已经被使用的存储区域进行恢复,而对于未被使用的区域而言,不需要进行恢复处理。当存储系统中存在较多的存储区域没有被使用时(例如,在存储系统初始化之后不久的时间),一个存储设备的故障并不会导致较长的重建时间。
具体而言,假设存储系统中包括10个存储区域,而仅有一个存储区域为“使用中”状态而其他的9个存储区域均未“未使用”状态,则采用本发明的技术方案,在重建中仅需要恢复状态为“使用中”的一个存储区域中的数据。然而基于传统的技术方案,则在重建中需要恢复全部10个存储区域中的数据。
在本发明的一个实施方式中,进一步包括:响应于所述状态标识符为“使用中”,从与所述存储区域相关联的在线存储设备中恢复数据,用于写入用于替换所述存储区域的后备存储区域。
对于存储系统中已经被使用的存储区域而言,则重建操作类似于现有的过程。具体地,当在步骤S820中确定状态标识符为“使用中”时,则操作流程前进至步骤S840。在此步骤S840中,从与存储区域相关联的在线存储设备中恢复数据,用于写入用于替换存储区域的后备存储区域。在此的在线存储设备是指存储系统中的没有出现故障的正常存储设备。
例如返回图2,当图2中以阴影示出的存储设备218A出现故障时,其他的没有出现故障的存储设备210A、212A、214A和216A即为在线存储设备。在此示例中,将从在线存储设备210A、212A、214A和216A中恢复出原本存储在故障存储设备218A中的数据P1,并将所恢复的数据P1写入用于替换所述故障存储区域218A的后备存储区域218B。
在本发明的一个实施方式中,进一步包括:在针对所述存储系统进行初始化的所述初始化操作期间,禁止针对所述存储系统中的存储区域执行读取操作以及写入操作。为了更好地满足存储系统的数据一致性,可以在初始化期间锁定存储系统中的存储区域。当初始化操作完成之后,则可以解除锁定并恢复对存储区域的数据访问。
在上文中,将RAID作为存储系统的具体示例来描述了本发明的各个实施方式。应当注意,当采用其他存储系统时,例如,常规的不存在冗余的普通磁盘阵列作为存储系统时,通过将磁盘阵列划分为多个存储区域,并且利用相应的状态标识符来表示每个存储区域的状态,同样可以在初始化操作期间大大降低存储系统初始化的时间开销。
在本发明的一个实施方式中,基于预定划分规则,获取存储系统中的存储区域包括:将所述存储区域是所述存储系统中的一个或者多个条带,作为所述存储区域。在上文中,以RAID中的一个条带来作为存储区域的示例,具体描述本发明的各个实施方式。应当注意,在其他实施方式中,还可以将RAID中的多个条带作为一个存储区域。
本领域技术人员可以根据本发明的各个实施方式的原理来设置在一个存储区域中包括多少个条带。当一个存储区域包括的条带数量较大时,可以降低状态标识符本身所占用的数据存储空间。而当一个存储区域包括的条带数量较少(例如,仅一个)时,可以以更精细的粒度来操作存储系统中的每个条带。本领域技术人员可以从以上两方面之间进行考虑,并且设置由一个标识符来表示多少个条带的使用状态。
采用本发明所述的技术方案,可以大大提高初始化操作期间的效率。具体地,假设采用RAID 5类型的存储系统,存储系统中包括Ndisk个磁盘,每个磁盘的大小为Sdisk,并且磁盘中的区块(chunk)的大小为Schunk时,以一个比特来表示Nstrip/bit个条带的使用状态,则用于存储状态标识符的大小可以计算如下:
RAID分组大小:SRG=(Ndisk-1)*Sdisk
条带大小:Sstrip=(Ndisk-1)*Schunk
每个RAID分组中的条带数目:Nstrip=SRG/Sstrip
用于存储状态标识符的比特数:Nbit=Nstrip/Nstrip/bit
用于存储状态标识符的字节数:
Sbitmap
=Nbit/8
=Nstrip/Nstrip/bit/8
=SRG/Sstripe/Nstripe/bit/8
=[(Ndisk-1)*Sdisk]/[(Ndisk-1)*Schunk]/Nstrip/bit/8
=Sdisk/Schunk/Nstripe/bit/8
因而,用于存储状态标识符的字节数与RAID分组大小的比例为:
Sbitmap/SRG
=Sdisk/Schunk/Nstripe/bit/8/[(Ndisk-1)*Sdisk]
=1/[Schunk*Nstripe/bit*8*(Ndisk-1)*Sdisk]
当RAID分组区块大小为4KB至512KB时,假设Nstrip/ebit=1,Ndisk=5,Sdisk=1TB,则用于存储状态标识符的字节数Sbitmap将占用32MB至256KB的存储空间,即,仅占用RAID分组空间的0.0007629%至0.0000060%。
在进行初始化操作时,由于仅针对用于存储状态标识符的区域Sbitmap来进行写入,而不必针对整个RAID的分组空间进行写入,因而可以大大提高初始化的效率。根据上文的计算公式,初始化操作占用的时间将减小到原来时间的大约0.0007629%至0.0000060%。
图9示意性示出了根据本发明的一个实施方式的用于管理存储区域的装置的框图900。如图9所示,提出了一种用于管理存储区域的装置,包括:获取模块910,配置用于基于预定划分规则,获取存储系统中的存储区域;确定模块920,配置用于确定关于所述存储区域是否已经被使用的使用状态;设置模块930,配置用于基于所述使用状态,为所述存储区域设置状态标识符;以及管理模块940,配置用于基于所述状态标识符来管理所述存储区域。
在本发明的一个实施方式中,所述确定模块920包括:状态设置模块,配置用于响应于接收到针对所述存储系统进行初始化的初始化操作,将所述状态标识符设置为“未使用”状态。
在本发明的一个实施方式中,所述状态设置模块进一步配置用于:响应于接收到针对所述存储系统进行初始化的所述初始化操作,将所述存储系统中的其他存储区域的状态标识符设置为“未使用”状态。
在本发明的一个实施方式中,所述管理模块940包括:第一写入管理模块,配置用于响应于接收到针对所述存储区域进行写入的写入操作,确定所述状态标识符的状态;以及第二写入管理模块,配置用于响应于所述状态标识符为“未使用”:清除所述存储区域中的数据;向所述目标地址处写入数据;以及将所述状态标识符设置为“使用中”。
在本发明的一个实施方式中,进一步包括:第三写入管理模块,配置用于响应于所述状态标识符为“使用中”,向由所述写入操作指示的目标地址处写入与所述写入操作相关联的目标数据。
在本发明的一个实施方式中,所述管理模块940包括:第一读取管理模块,配置用于响应于接收到针对所述存储区域进行读取的读取操作,确定所述状态标识符的状态;以及第二读取管理模块,配置用于响应于所述状态标识符为“未使用”,返回“空”;否则从所述存储区域中的由所述读取操作指示的目标地址处返回目标数据。
在本发明的一个实施方式中,所述管理模块940包括:第一重建管理模块,配置用于响应于接收到针对所述存储系统进行重建的重建操作,确定所述状态标识符的状态;以及第二重建管理模块,配置用于响应于所述状态标识符为“未使用”,跳过针对所述存储区域的处理。
在本发明的一个实施方式中,所述管理模块940进一步包括:第三重建管理模块,配置用于响应于所述状态标识符为“使用中”,从与所述存储区域相关联的在线存储设备中恢复数据,用于写入用于替换所述存储区域的后备存储区域。
在本发明的一个实施方式中,进一步包括:锁定模块,配置用于在针对所述存储系统进行初始化的所述初始化操作期间,禁止针对所述存储系统中的存储区域执行读取操作以及写入操作。
在本发明的一个实施方式中,所述获取模块进一步配置用于:将所述存储区域是所述存储系统中的一个或者多个条带,作为所述存储区域。
在本发明的一个实施方式中,提供了一种用于管理存储区域的系统,包括:一个或者多个处理器;耦合至所述一个或者多个处理器中的至少一个处理器的存储器;在所述存储器中存储的计算机程序指令,当由所述至少一个处理器执行所述计算机程序指令时,使得所述系统:基于预定划分规则,获取存储系统中的存储区域;确定关于所述存储区域是否已经被使用的使用状态;基于所述使用状态,为所述存储区域设置状态标识符;以及基于所述状态标识符来管理所述存储区域。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于接收到针对所述存储系统进行初始化的初始化操作,将所述状态标识符设置为“未使用”状态。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于接收到针对所述存储系统进行初始化的所述初始化操作,将所述存储系统中的其他存储区域的状态标识符设置为“未使用”状态。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于接收到针对所述存储区域进行写入的写入操作,确定所述状态标识符的状态;以及响应于所述状态标识符为“未使用”:清除所述存储区域中的数据;向所述目标地址处写入数据;以及将所述状态标识符设置为“使用中”。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于所述状态标识符为“使用中”,向由所述写入操作指示的目标地址处写入与所述写入操作相关联的目标数据。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于接收到针对所述存储区域进行读取的读取操作,确定所述状态标识符的状态;以及响应于所述状态标识符为“未使用”,返回“空”;否则从所述存储区域中的由所述读取操作指示的目标地址处返回目标数据。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于接收到针对所述存储系统进行重建的重建操作,确定所述状态标识符的状态;以及响应于所述状态标识符为“未使用”,跳过针对所述存储区域的处理。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:响应于所述状态标识符为“使用中”,从与所述存储区域相关联的在线存储设备中恢复数据,用于写入用于替换所述存储区域的后备存储区域。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:在针对所述存储系统进行初始化的所述初始化操作期间,禁止针对所述存储系统中的存储区域执行读取操作以及写入操作。
在本发明的一个实施方式中,当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:将所述存储区域是所述存储系统中的一个或者多个条带,作为所述存储区域。
附图中的流程图和框图显示了根据本发明的多个实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施方式。

Claims (20)

1.一种用于管理存储区域的方法,包括:
基于预定划分规则,获取存储系统中的存储区域;
确定关于所述存储区域是否已经被使用的使用状态;
基于所述使用状态,为所述存储区域设置状态标识符;以及
基于所述状态标识符来管理所述存储区域。
2.根据权利要求1所述的方法,其中确定关于所述存储区域是否已经被使用的使用状态包括:
响应于接收到针对所述存储系统进行初始化的初始化操作,将所述状态标识符设置为“未使用”状态。
3.根据权利要求2所述的方法,进一步包括:
响应于接收到针对所述存储系统进行初始化的所述初始化操作,将所述存储系统中的其他存储区域的状态标识符设置为“未使用”状态。
4.根据权利要求1-3中的任一项所述的方法,其中基于所述状态标识符来管理所述存储区域包括:
响应于接收到针对所述存储区域进行写入的写入操作,确定所述状态标识符的状态;以及
响应于所述状态标识符为“未使用”:清除所述存储区域中的数据;向所述目标地址处写入数据;以及将所述状态标识符设置为“使用中”。
5.根据权利要求4所述的方法,进一步包括:
响应于所述状态标识符为“使用中”,向由所述写入操作指示的目标地址处写入与所述写入操作相关联的目标数据。
6.根据权利要求1-3中的任一项所述的方法,其中基于所述状态标识符来管理所述存储区域包括:
响应于接收到针对所述存储区域进行读取的读取操作,确定所述状态标识符的状态;以及
响应于所述状态标识符为“未使用”,返回“空”;否则从所述存储区域中的由所述读取操作指示的目标地址处返回目标数据。
7.根据权利要求1-3中的任一项所述的方法,其中基于所述状态标识符来管理所述存储区域包括:
响应于接收到针对所述存储系统进行重建的重建操作,确定所述状态标识符的状态;以及
响应于所述状态标识符为“未使用”,跳过针对所述存储区域的处理。
8.根据权利要求7所述的方法,进一步包括:
响应于所述状态标识符为“使用中”,从与所述存储区域相关联的在线存储设备中恢复数据,用于写入用于替换所述存储区域的后备存储区域。
9.根据权利要求1-3中的任一项所述的方法,进一步包括:
在针对所述存储系统进行初始化的所述初始化操作期间,禁止针对所述存储系统中的存储区域执行读取操作以及写入操作。
10.根据权利要求1-3中的任一项所述的方法,其中基于预定划分规则,获取存储系统中的存储区域包括:
将所述存储区域是所述存储系统中的一个或者多个条带,作为所述存储区域。
11.一种用于管理存储区域的系统,包括:
一个或者多个处理器;
耦合至所述一个或者多个处理器中的至少一个处理器的存储器;
在所述存储器中存储的计算机程序指令,当由所述至少一个处理器执行所述计算机程序指令时,使得所述系统:
基于预定划分规则,获取存储系统中的存储区域;
确定关于所述存储区域是否已经被使用的使用状态;
基于所述使用状态,为所述存储区域设置状态标识符;以及
基于所述状态标识符来管理所述存储区域。
12.根据权利要求11所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于接收到针对所述存储系统进行初始化的初始化操作,将所述状态标识符设置为“未使用”状态。
13.根据权利要求12所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于接收到针对所述存储系统进行初始化的所述初始化操作,将所述存储系统中的其他存储区域的状态标识符设置为“未使用”状态。
14.根据权利要求11-13中的任一项所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于接收到针对所述存储区域进行写入的写入操作,确定所述状态标识符的状态;以及
响应于所述状态标识符为“未使用”:清除所述存储区域中的数据;向所述目标地址处写入数据;以及将所述状态标识符设置为“使用中”。
15.根据权利要求14所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于所述状态标识符为“使用中”,向由所述写入操作指示的目标地址处写入与所述写入操作相关联的目标数据。
16.根据权利要求11-13中的任一项所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于接收到针对所述存储区域进行读取的读取操作,确定所述状态标识符的状态;以及
响应于所述状态标识符为“未使用”,返回“空”;否则从所述存储区域中的由所述读取操作指示的目标地址处返回目标数据。
17.根据权利要求11-13中的任一项所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于接收到针对所述存储系统进行重建的重建操作,确定所述状态标识符的状态;以及
响应于所述状态标识符为“未使用”,跳过针对所述存储区域的处理。
18.根据权利要求17所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
响应于所述状态标识符为“使用中”,从与所述存储区域相关联的在线存储设备中恢复数据,用于写入用于替换所述存储区域的后备存储区域。
19.根据权利要求11-13中的任一项所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
在针对所述存储系统进行初始化的所述初始化操作期间,禁止针对所述存储系统中的存储区域执行读取操作以及写入操作。
20.根据权利要求11-13中的任一项所述的系统,其中当由所述至少一个处理器执行所述计算机程序指令时,进一步使得所述系统:
将所述存储区域是所述存储系统中的一个或者多个条带,作为所述存储区域。
CN201610431451.XA 2016-06-16 2016-06-16 用于管理存储设备的方法和系统 Active CN107515726B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201610431451.XA CN107515726B (zh) 2016-06-16 2016-06-16 用于管理存储设备的方法和系统
US15/623,636 US10572163B2 (en) 2016-06-16 2017-06-15 Method and system for managing storage device
US16/798,217 US11327662B2 (en) 2016-06-16 2020-02-21 Method and system for managing storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610431451.XA CN107515726B (zh) 2016-06-16 2016-06-16 用于管理存储设备的方法和系统

Publications (2)

Publication Number Publication Date
CN107515726A true CN107515726A (zh) 2017-12-26
CN107515726B CN107515726B (zh) 2020-05-19

Family

ID=60660157

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610431451.XA Active CN107515726B (zh) 2016-06-16 2016-06-16 用于管理存储设备的方法和系统

Country Status (2)

Country Link
US (2) US10572163B2 (zh)
CN (1) CN107515726B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844536A (zh) * 2016-12-30 2017-06-13 深圳市新产业生物医学工程股份有限公司 体外诊断试剂的定标数据处理方法和装置及体外诊断设备
CN111104244A (zh) * 2018-10-29 2020-05-05 伊姆西Ip控股有限责任公司 用于在存储阵列组中重建数据的方法和设备
CN111399926A (zh) * 2018-12-13 2020-07-10 北汽福田汽车股份有限公司 下载启动程序的方法和装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107515726B (zh) 2016-06-16 2020-05-19 伊姆西Ip控股有限责任公司 用于管理存储设备的方法和系统
CN108733314B (zh) * 2017-04-17 2021-06-29 伊姆西Ip控股有限责任公司 用于独立冗余阵列(raid)重建的方法、设备和计算机可读存储介质
CN110058785B (zh) * 2018-01-18 2022-07-05 伊姆西Ip控股有限责任公司 用于管理存储系统的方法和设备
US20190317889A1 (en) * 2018-04-15 2019-10-17 Synology Inc. Apparatuses and methods and computer program products for a redundant array of independent disk (raid) reconstruction
CN111104051B (zh) * 2018-10-26 2023-08-22 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机程序产品
CN112463051B (zh) * 2020-11-26 2023-12-29 苏州精控能源科技股份有限公司 一种电池存储系统的管理方法及数据存储方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040103246A1 (en) * 2002-11-26 2004-05-27 Paresh Chatterjee Increased data availability with SMART drives
US20130086394A1 (en) * 2011-09-30 2013-04-04 Fujitsu Limited Storage system, storage control apparatus, and storage control method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933847A (en) * 1995-09-28 1999-08-03 Canon Kabushiki Kaisha Selecting erase method based on type of power supply for flash EEPROM
KR100670723B1 (ko) * 2003-02-21 2007-01-19 리서치 인 모션 리미티드 전자 장치들의 다중-레벨 제어 시스템 및 방법
JP5721344B2 (ja) * 2010-05-07 2015-05-20 キヤノン株式会社 システム、システムの制御方法、及び、プログラム
US9923970B2 (en) * 2014-08-22 2018-03-20 Nexenta Systems, Inc. Multicast collaborative erasure encoding and distributed parity protection
JP6450598B2 (ja) * 2015-01-19 2019-01-09 東芝メモリ株式会社 情報処理装置、情報処理方法およびプログラム
CN107515726B (zh) 2016-06-16 2020-05-19 伊姆西Ip控股有限责任公司 用于管理存储设备的方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040103246A1 (en) * 2002-11-26 2004-05-27 Paresh Chatterjee Increased data availability with SMART drives
US20130086394A1 (en) * 2011-09-30 2013-04-04 Fujitsu Limited Storage system, storage control apparatus, and storage control method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844536A (zh) * 2016-12-30 2017-06-13 深圳市新产业生物医学工程股份有限公司 体外诊断试剂的定标数据处理方法和装置及体外诊断设备
CN111104244A (zh) * 2018-10-29 2020-05-05 伊姆西Ip控股有限责任公司 用于在存储阵列组中重建数据的方法和设备
CN111104244B (zh) * 2018-10-29 2023-08-29 伊姆西Ip控股有限责任公司 用于在存储阵列组中重建数据的方法和设备
CN111399926A (zh) * 2018-12-13 2020-07-10 北汽福田汽车股份有限公司 下载启动程序的方法和装置

Also Published As

Publication number Publication date
US10572163B2 (en) 2020-02-25
US20200264785A1 (en) 2020-08-20
US20170364289A1 (en) 2017-12-21
CN107515726B (zh) 2020-05-19
US11327662B2 (en) 2022-05-10

Similar Documents

Publication Publication Date Title
CN107515726A (zh) 用于管理存储设备的方法和系统
US11934260B2 (en) Problem signature-based corrective measure deployment
US10585733B1 (en) Determining active membership among storage systems synchronously replicating a dataset
CN107870730A (zh) 用于管理存储系统的方法和系统
US20210383878A1 (en) Conserving bandwidth using efficient relocation of data between storage devices
US11281394B2 (en) Replication across partitioning schemes in a distributed storage system
CN110413201B (zh) 用于管理存储系统的方法、设备和计算机程序产品
US20200045111A1 (en) Storage system communication for data resiliency
US11614880B2 (en) Storage system with selectable write paths
US10852966B1 (en) System and method for creating mapped RAID group during expansion of extent pool
US20200327953A1 (en) Adaptive threshold for bad flash memory blocks
US20190238412A1 (en) Policy based path management
US11899582B2 (en) Efficient memory dump
CN107526535A (zh) 用于管理存储系统的方法和系统
US11442645B2 (en) Distributed storage system expansion mechanism
US20190272215A1 (en) System and method for supporting data protection across fpga ssds
CN107526537A (zh) 用于锁定存储系统中的存储区域的方法和系统
US20190179564A1 (en) Safe destructive actions on drives
CN103197924A (zh) 用于实时选择压缩操作的方法和系统
US20210232323A1 (en) Managing voltage threshold shifts
US20210240346A1 (en) Dynamic use of segment or zone power loss protection in a flash device
CN108228084A (zh) 用于管理存储系统的方法和设备
CN107729536A (zh) 一种数据存储方法和装置
US11416338B2 (en) Resiliency scheme to enhance storage performance
CN108228085A (zh) 用于管理存储系统的方法和设备

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200408

Address after: Massachusetts, USA

Applicant after: EMC IP Holding Company LLC

Address before: Massachusetts, USA

Applicant before: EMC Corp.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant