CN113849124A - 一种磁盘阵列扩容方法及装置 - Google Patents
一种磁盘阵列扩容方法及装置 Download PDFInfo
- Publication number
- CN113849124A CN113849124A CN202110996041.0A CN202110996041A CN113849124A CN 113849124 A CN113849124 A CN 113849124A CN 202110996041 A CN202110996041 A CN 202110996041A CN 113849124 A CN113849124 A CN 113849124A
- Authority
- CN
- China
- Prior art keywords
- bit
- data storage
- state
- bitmap
- stripe
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000013500 data storage Methods 0.000 claims abstract description 126
- 238000006243 chemical reaction Methods 0.000 claims abstract description 49
- 230000004044 response Effects 0.000 claims description 15
- 238000013508 migration Methods 0.000 claims description 10
- 230000005012 migration Effects 0.000 claims description 10
- 238000003491 array Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本申请实施例公开了一种磁盘阵列扩容方法及装置,通过获取磁盘阵列中多个条带每个条带的数据存储状态,例如未初始化状态、未使用状态和已使用状态,当用户进行磁盘阵列的扩容时,根据每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换,也就是说,根据不同条带的数据存储状态进行对应的扩容转换,能够实现高效的有针对性的对每个条带内存储的数据进行扩容转换,而不是全部的条带都使用相同的扩容转换方法,缩短磁盘阵列扩容的时间,提高磁盘阵列扩容的效率。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种磁盘阵列扩容方法及装置。
背景技术
随着计算机技术的快速发展,计算机为用户提供的服务越来越多,例如数据存储服务。面对用户越来越多的数据存储需求,数据存储量越来越大,会进行存储设备的存储区域的扩容。
存储设备包括多个磁盘,磁盘用于向用户提供存储服务,多个磁盘构成磁盘阵列。在进行磁盘阵列的管理时,可以以条带为基准,一个条带包括多个磁盘阵列中的存储区域,即一个条带内存储的数据可能位于多个磁盘。
用户可以在存储设备中增加磁盘,以提供更多的存储空间,这个过程称为磁盘阵列扩容。在进行磁盘阵列的扩容时,如何高效的对每个条带内存储的数据进行扩容转换,是一个亟待解决的问题。
发明内容
为了解决现有技术中的问题,本申请实施例提供一种磁盘阵列扩容方法及装置。
本申请实施例提供一种磁盘阵列扩容方法,应用于存储设备,所述方法包括:
获取多个条带中每个条带的数据存储状态,所述数据存储状态包括未初始化状态、未使用状态和已使用状态;
响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换。
可选地,所述磁盘阵列包括N个磁盘,N为正整数;
所述响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换包括:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为已使用状态,利用迁移算法将所述条带内存储的数据进行从N个磁盘到N+X个磁盘的扩容转换,X为正整数。
可选地,所述磁盘阵列包括N个磁盘,N为正整数;
所述响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换包括:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为未使用状态,所述增加的X个磁盘存储的数据为0,X为正整数。
可选地,所述磁盘阵列包括N个磁盘,N为正整数;
所述响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换包括:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为未初始化状态,所述增加的X个磁盘处于未初始化状态,X为正整数。
可选地,所述获取多个条带中每个条带的数据存储状态包括:
获取第一位图和第二位图中每个位的数值,所述第一位图和第二位图中每个位对应一个条带;
其中,若所述第一位图中第一位的数值为1,则所述第一位对应的条带的数据存储状态为未使用状态,若所述第一位图中第一位的数值为0,则所述第一位对应的条带的数据存储状态为已使用状态,所述第一位图包括所述第一位;若所述第二位图中第二位的数值为1,则所述第二位对应的条带的数据存储状态为已使用状态,若所述第二位图中第二位的数值为0,则所述第二位对应的条带的数据存储状态为未初始化状态,所述第二位图包括所述第二位;
根据所述第一位图和所述第二位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
可选地,所述获取多个条带中每个条带的数据存储状态包括:
获取第三位图中每个位的数值,所述第三位图中每个位对应一个条带;
其中,所述第三位图中包括滑动窗口,所述滑动窗口用于划分第三位图中的不同区域;
若所述第三位图中第三位的数值为1,则所述第三位对应的条带的数据存储状态为未使用状态,若所述第三位图中第三位的数值为0,则所述第三位对应的条带的数据存储状态为已使用状态,所述第三位图包括所述第三位,所述第三位在所述第三位图中的位置位于所述滑动窗口之前;
若所述第三位图中第三位的数值为1,则所述第三位对应的条带的数据存储状态为已使用状态,若所述第三位图中第三位的数值为0,则所述第三位对应的条带的数据存储状态为未初始化状态,所述第三位图包括所述第三位,所述第三位在所述第三位图中的位置位于所述滑动窗口或位于所述滑动窗口之后;
根据所述第三位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
可选地,在响应于用户进行磁盘阵列扩容时,所述方法还包括:
响应于用户针对第一条带的写操作,所述N+X个磁盘包括第一条带;
在根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换之后,所述方法还包括:
执行所述用户针对第一条带的写操作,所述第一条带的数据存储状态更改为已使用状态。
可选地,在响应于用户进行磁盘阵列扩容时,所述方法还包括:
响应于用户针对第一条带的读操作,所述N+X个磁盘包括第一条带;
在根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换之后,所述方法还包括:
在N+X个磁盘中获取第一条带中存储的数据。
可选地,在响应于用户进行磁盘阵列扩容之后,所述方法还包括:
响应于用户针对第一条带的初始化操作,所述N+X个磁盘包括第一条带,所述第一条带的数据存储状态更改为未使用状态。
本申请实施例还提供一种磁盘阵列扩容装置,所述方法包括:
获取单元,用于获取多个条带中每个条带的数据存储状态,所述数据存储状态包括未初始化状态、未使用状态和已使用状态;
扩容转换单元,用于响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换。
本申请实施例提供一种磁盘阵列扩容方法,通过获取磁盘阵列中多个条带每个条带的数据存储状态,例如未初始化状态、未使用状态和已使用状态,当用户进行磁盘阵列的扩容时,根据每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换,也就是说,根据不同条带的数据存储状态进行对应的扩容转换,能够实现高效的有针对性的对每个条带内存储的数据进行扩容转换,而不是全部的条带都使用相同的扩容转换方法,缩短磁盘阵列扩容的时间,提高磁盘阵列扩容的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种磁盘阵列扩容方法的流程图;
图2为本申请实施例提供的一种磁盘阵列对应的位图示意图;
图3为本申请实施例提供的一种磁盘阵列扩容装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
正如背景技术所述,在存储设备中,通过向已有的磁盘阵列中添加磁盘扩展磁盘阵列容量,存储设备包括N个磁盘,N个磁盘构成磁盘阵列,此时磁盘阵列的空间结构标识为G(N),用户使用X块磁盘进行扩容,扩容后的磁盘阵列包括N+X块磁盘,此时的空间结构标识为G(N+X);其中G()算法是用于生成磁盘阵列的空间结构的任意算法。扩容就是指磁盘阵列的空间结构标识G(N)转变到G(N+X)的过程,即将原来存储在N个磁盘中的数据转变为存储在N+X个磁盘的过程。
随着磁盘技术的不断发展,单块磁盘的容量不断增大。标准空间分布的磁盘阵列在进行扩容时不可避免的数据迁移量也在不断增大,导致扩容需要的时间不断增长。
基于此,本申请实施例提供一种磁盘阵列扩容方法,通过获取磁盘阵列中多个条带每个条带的数据存储状态,例如未初始化状态、未使用状态和已使用状态,当用户进行磁盘阵列的扩容时,根据每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换,也就是说,根据不同条带的数据存储状态进行对应的扩容转换,能够实现高效的有针对性的对每个条带内存储的数据进行扩容转换,而不是全部的条带都使用相同的扩容转换方法,缩短磁盘阵列扩容的时间,提高磁盘阵列扩容的效率。
本申请实施例提供的磁盘阵列扩容方法,应用于存储设备,在进行存储设备中磁盘阵列的管理时,首先将磁盘的存储空间划分为多个存储块,多个存储块组合为条带,一个条带包括多个磁盘阵列中的存储块,即一个条带内存储的数据可能位于多个磁盘。条带是磁盘阵列的基本冗余单位,条带宽度是单个条带跨越的磁盘数目。
参见图1,该图为本申请实施例提供的一种磁盘阵列扩容方法的流程图。
本实施例提供的磁盘阵列扩容方法包括如下步骤:
S101,获取多个条带中每个条带的数据存储状态。
在本申请的实施例中,首先获取磁盘阵列中多个条带每个条带的数据存储状态,数据存储状态可以分为未初始化状态、未使用状态和已使用状态,其中未初始化状态指的是该条带还没有被用户触发初始化进程,未使用状态指的是该条带已经进行初始化,但是没有写入数据,条带的初始数据全部为0,已使用状态指的是该条带已经写入数据或已经存储数据。
未初始化状态的条带可以称为用户未使用区域,未使用状态的条带可以称为冷数据区域,已使用状态的条带可以称为热数据区域。在进行磁盘阵列的扩容时,可以采用根据不同条带的数据存储状态进行不同的扩容转换。
在本申请的实施例中,可以通过以下两种可能的实现方式获取多个条带中每个条带的数据存储状态:
第一种可能的实现方式为首先根据磁盘阵列的存储空间创建第一位图和第二位图,第一位图和第二位图中包括的位的数量与磁盘阵列中包括的条带的数量相同,即第一位图和第二位图中每个位都对应一个条带。
第一位图和第二位图中每个位的数值代表对应条带的数据存储状态:
若第一位图中第一位的数值为1,则第一位对应的条带的数据存储状态为未使用状态,若第一位图中第一位的数值为0,则第一位对应的条带的数据存储状态为已使用状态,其中,第一位图包括第一位,即第一位为第一位图中多个位的任意一位。
若第二位图中第二位的数值为1,则第二位对应的条带的数据存储状态为已使用状态,若第二位图中第二位的数值为0,则第二位对应的条带的数据存储状态为未初始化状态,其中,第二位图包括第二位,即第二位为第二位图中多个位的任意一位。
存储设备根据第一位图和第二位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
第二种可能的实现方式为首先根据磁盘阵列的存储空间创建第三位图,第三位图中包括的位的数量与磁盘阵列中包括的条带的数量相同,即第三位图中每个位都对应一个条带。第三位图中还可以包括滑动窗口,滑动窗口用于划分第三位图中的不同区域。
参考图2所示,以单线程滑动窗口为例,介绍获取每个条带的数据存储状态的过程。图2中滑动窗口以后台初始化游标为例进行示出,在实际应用中,滑动窗口不限于单线程游标的形式,可以是多线程窗口的形式。
第三位图中每个位的数值代表对应条带的数据存储状态,第三位图包括第三位,即第三位为第三位图中多个位的任意一位:
若第三位在第三位图中的位置位于滑动窗口之前,第三位图中第三位的数值为1,则第三位对应的条带的数据存储状态为未使用状态,第三位图中第三位的数值为0,则第三位对应的条带的数据存储状态为已使用状态。
第三位在第三位图中的位置位于滑动窗口或位于滑动窗口之后,第三位图中第三位的数值为1,则第三位对应的条带的数据存储状态为已使用状态,若第三位图中第三位的数值为0,则第三位对应的条带的数据存储状态为未初始化状态。
存储设备根据第三位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
上述两种实现方式,都可以使得存储设备获取每个条带的存储状态,相较于第一种实现方式,第二种实现方式仅需要一个位图和滑动窗口,就能够实现对于条带的3种存储状态的描述,效率较高,位图占用存储空间较少。
S102,响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换。
在本申请的实施例中,在用户触发磁盘阵列扩容的进程后,可以根据获取到的每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换。
在进行扩容之前,存储设备包括N个磁盘,在响应于用户进行操盘阵列扩容后,增加X个磁盘,其中,N和X都是正整数。在将磁盘阵列的空间结构标识由G(N)转变到G(N+X)的过程中,可以根据N个磁盘中每个条带的数据存储状态进行相应的扩容转换。
若条带的数据存储状态为已使用状态,利用迁移算法将条带内存储的数据进行从N个磁盘到N+X个磁盘的扩容转换,迁移算法利用现有的将G(N)转变到G(N+X)的算法即可。
若条带的数据存储状态为未使用状态,增加的X个磁盘存储的数据为0。
若条带的数据存储状态为未初始化状态,增加的X个磁盘处于未初始化状态,即不进行实际的数据迁移,直接视为该条带的数据迁移以完成。
在实际应用中,磁盘阵列的存储空间可能没有被全部使用,磁盘阵列的部分存储空间可能一直被使用,对于用户未使用区域,经过磁盘阵列的初始化进程后,存储的数据为全0,此时并不需要真正的进行数据迁移。
因此针对不同数据存储状态的条带,也可以进行不同的扩容转换,即针对热数据区域优先扩容,冷数据区域和用户未使用区域数据不迁移,以降低扩容过程中的数据迁移量,缩短磁盘阵列扩容的时间,提高磁盘阵列扩容的效率。
在实际应用中,在用户进行磁盘阵列扩容时,存储设备还可以接收用户对数据的写操作、读操作以及删除操作。
若存储设备在响应于用户进行磁盘阵列扩容时,响应于用户针对第一条带的写操作,其中,扩容后的N+X个磁盘包括第一条带,在根据每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换之后,再执行用户针对第一条带的写操作,第一条带的数据存储状态更改为已使用状态。
也就是说,在接收到用户针对第一条带的写操作时,存储设备检测是否处于磁盘阵列扩容期间,若在扩容期间,则首先进行扩容,在扩容之后继续进行写操作,并将写操作后的条带的数据存储状态变更为已使用状态。
在执行第一条带的写操作之前,还可以检测第一条带的数据存储状态是否为未初始化状态,若为未初始化状态,首先进行初始化操作,之后再执行第一条带的写操作。
若存储设备在响应于用户进行磁盘阵列扩容时,响应于用户针对第一条带的读操作,其中,扩容后的N+X个磁盘包括第一条带,若此时存储设备已经完成扩容操作,则在N+X个磁盘中获取第一条带中存储的数据,若此时存储设备还没有完成扩容操作,则在N个磁盘中获取第一条带中存储的数据。
也就是说,在完成扩容操作后,以G(N+X)的空间结构读取数据,在没有完成扩容操作之前,以G(N)的空间结构读取数据。
若存储设备在响应于用户进行磁盘阵列扩容时,响应于用户针对第一条带内存储的数据的删除操作,其中,扩容后的N+X个磁盘包括第一条带,在根据每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换之后,再执行用户针对第一条带的删除操作,第一条带的数据存储状态更改为未使用状态。
也就是说,在接收到用户针对第一条带内存储的数据的删除操作时,存储设备检测是否处于磁盘阵列扩容期间,若在扩容期间,则首先进行扩容,在扩容之后继续进行删除操作,并将删除操作后的第一条带进行初始化操作,并将第一条带的数据存储状态变更为未使用状态。
在本申请的实施例中,为了提高用户的体验,对用户存储的数据进行的操作优先级高于其他操作,例如,响应于用户进行的磁盘阵列扩容操作的优先级高于对某个条带的初始化操作,即在响应于用户进行磁盘阵列扩容之后,再执行用户针对第一条带的初始化操作,并将第一条带的数据存储状态更改为未使用状态。
在进行数据存储状态变更时,对应的位图中的数值直接取反即可。
作为一种示例,在对第一条带进行读操作和写操作之后,第一条带的数据存储状态由未使用状态更改为已使用状态,第一条带对应的位图中的位由1变为0。
作为另一种示例,在对第一条带进行初始化操作之后,第一条带的数据存储状态由未初始化状态更改为未使用状态,第一条带对应的位图中的位由0变为1。
作为又一种示例,在对第一条带进行数据的删除操作之后,第一条带又进行了初始化操作,第一条带的数据存储状态由已使用状态更改为未使用状态,第一条带对应的位图中的位由0变为1。
在实际应用中,本申请实施例提供的磁盘阵列扩容方法可以采用编程语言进行算法描述,采用编译器程序进行编译,生成可在存储服务器或其他可运行冗余磁盘阵列逻辑的设备上执行的可执行程序文件或程序模块,通过替换源程序或作为程序部分内容的方式完成程序的部署。
本申请实施例提供的磁盘阵列扩容方法包括多个条带对齐的分布式磁盘阵列,能够在扩容时可以正常使用并有较低的读写性能影响,即本申请实施例提供的磁盘阵列扩容方法属于在线扩容,在扩容完成后仍符合标准空间分布,且扩容前后条带宽度不变。
本申请实施例提供一种磁盘阵列扩容方法,通过获取磁盘阵列中多个条带每个条带的数据存储状态,例如未初始化状态、未使用状态和已使用状态,当用户进行磁盘阵列的扩容时,根据每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换,也就是说,根据不同条带的数据存储状态进行对应的扩容转换,能够实现高效的有针对性的对每个条带内存储的数据进行扩容转换,而不是全部的条带都使用相同的扩容转换方法,缩短磁盘阵列扩容的时间,提高磁盘阵列扩容的效率。
基于以上实施例提供的一种磁盘阵列扩容方法,本申请实施例还提供了一种磁盘阵列扩容装置,下面结合附图来详细说明其工作原理。
参见图3,该图为本申请实施例提供的一种磁盘阵列扩容装置的结构框图。
本实施例提供的磁盘阵列扩容装置300包括:
获取单元310,用于获取多个条带中每个条带的数据存储状态,所述数据存储状态包括未初始化状态、未使用状态和已使用状态;
扩容转换单元320,用于响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换。
可选地,所述磁盘阵列包括N个磁盘,N为正整数;
所述扩容转换单元320,用于:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为已使用状态,利用迁移算法将所述条带内存储的数据进行从N个磁盘到N+X个磁盘的扩容转换,X为正整数。
可选地,所述磁盘阵列包括N个磁盘,N为正整数;
所述扩容转换单元320,用于:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为未使用状态,所述增加的X个磁盘存储的数据为0,X为正整数。
可选地,所述磁盘阵列包括N个磁盘,N为正整数;
所述扩容转换单元320,用于:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为未初始化状态,所述增加的X个磁盘处于未初始化状态,X为正整数。
可选地,所述获取单元310,用于:
获取第一位图和第二位图中每个位的数值,所述第一位图和第二位图中每个位对应一个条带;
其中,若所述第一位图中第一位的数值为1,则所述第一位对应的条带的数据存储状态为未使用状态,若所述第一位图中第一位的数值为0,则所述第一位对应的条带的数据存储状态为已使用状态,所述第一位图包括所述第一位;若所述第二位图中第二位的数值为1,则所述第二位对应的条带的数据存储状态为已使用状态,若所述第二位图中第二位的数值为0,则所述第二位对应的条带的数据存储状态为未初始化状态,所述第二位图包括所述第二位;
根据所述第一位图和所述第二位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
可选地,所述获取单元310,用于:
获取第三位图中每个位的数值,所述第三位图中每个位对应一个条带;
其中,所述第三位图中包括滑动窗口,所述滑动窗口用于划分第三位图中的不同区域;
若所述第三位图中第三位的数值为1,则所述第三位对应的条带的数据存储状态为未使用状态,若所述第三位图中第三位的数值为0,则所述第三位对应的条带的数据存储状态为已使用状态,所述第三位图包括所述第三位,所述第三位在所述第三位图中的位置位于所述滑动窗口之前;
若所述第三位图中第三位的数值为1,则所述第三位对应的条带的数据存储状态为已使用状态,若所述第三位图中第三位的数值为0,则所述第三位对应的条带的数据存储状态为未初始化状态,所述第三位图包括所述第三位,所述第三位在所述第三位图中的位置位于所述滑动窗口或位于所述滑动窗口之后;
根据所述第三位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
可选地,所述装置还包括:
写操作单元,用于响应于用户针对第一条带的写操作,所述N+X个磁盘包括第一条带;
写操作执行单元,用于执行所述用户针对第一条带的写操作,所述第一条带的数据存储状态更改为已使用状态。
可选地,所述装置还包括:
读操作单元,用于响应于用户针对第一条带的读操作,所述N+X个磁盘包括第一条带;
读操作执行单元,用于在N+X个磁盘中获取第一条带中存储的数据。
可选地,所述装置还包括:
初始化操作执行单元,用于响应于用户针对第一条带的初始化操作,所述N+X个磁盘包括第一条带,所述第一条带的数据存储状态更改为未使用状态。
当介绍本申请的各种实施例的元件时,冠词“一”、“一个”、“这个”和“所述”都意图表示有一个或多个元件。词语“包括”、“包含”和“具有”都是包括性的并意味着除了列出的元件之外,还可以有其它元件。
需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种磁盘阵列扩容方法,其特征在于,应用于存储设备,所述方法包括:
获取多个条带中每个条带的数据存储状态,所述数据存储状态包括未初始化状态、未使用状态和已使用状态;
响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换。
2.根据权利要求1所述的方法,其特征在于,所述磁盘阵列包括N个磁盘,N为正整数;
所述响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换包括:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为已使用状态,利用迁移算法将所述条带内存储的数据进行从N个磁盘到N+X个磁盘的扩容转换,X为正整数。
3.根据权利要求1所述的方法,其特征在于,所述磁盘阵列包括N个磁盘,N为正整数;
所述响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换包括:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为未使用状态,所述增加的X个磁盘存储的数据为0,X为正整数。
4.根据权利要求1所述的方法,其特征在于,所述磁盘阵列包括N个磁盘,N为正整数;
所述响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行相应的扩容转换包括:
响应于所述用户增加X个磁盘,以进行磁盘阵列扩容,若条带的数据存储状态为未初始化状态,所述增加的X个磁盘处于未初始化状态,X为正整数。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述获取多个条带中每个条带的数据存储状态包括:
获取第一位图和第二位图中每个位的数值,所述第一位图和第二位图中每个位对应一个条带;
其中,若所述第一位图中第一位的数值为1,则所述第一位对应的条带的数据存储状态为未使用状态,若所述第一位图中第一位的数值为0,则所述第一位对应的条带的数据存储状态为已使用状态,所述第一位图包括所述第一位;若所述第二位图中第二位的数值为1,则所述第二位对应的条带的数据存储状态为已使用状态,若所述第二位图中第二位的数值为0,则所述第二位对应的条带的数据存储状态为未初始化状态,所述第二位图包括所述第二位;
根据所述第一位图和所述第二位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
6.根据权利要求1-4任意一项所述的方法,其特征在于,所述获取多个条带中每个条带的数据存储状态包括:
获取第三位图中每个位的数值,所述第三位图中每个位对应一个条带;
其中,所述第三位图中包括滑动窗口,所述滑动窗口用于划分第三位图中的不同区域;
若所述第三位图中第三位的数值为1,则所述第三位对应的条带的数据存储状态为未使用状态,若所述第三位图中第三位的数值为0,则所述第三位对应的条带的数据存储状态为已使用状态,所述第三位图包括所述第三位,所述第三位在所述第三位图中的位置位于所述滑动窗口之前;
若所述第三位图中第三位的数值为1,则所述第三位对应的条带的数据存储状态为已使用状态,若所述第三位图中第三位的数值为0,则所述第三位对应的条带的数据存储状态为未初始化状态,所述第三位图包括所述第三位,所述第三位在所述第三位图中的位置位于所述滑动窗口或位于所述滑动窗口之后;
根据所述第三位图中每个位的数值,获取多个条带中每个条带的数据存储状态。
7.根据权利要求2-4任意一项所述的方法,其特征在于,在响应于用户进行磁盘阵列扩容时,所述方法还包括:
响应于用户针对第一条带的写操作,所述N+X个磁盘包括第一条带;
在根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换之后,所述方法还包括:
执行所述用户针对第一条带的写操作,所述第一条带的数据存储状态更改为已使用状态。
8.根据权利要求2-4任意一项所述的方法,其特征在于,在响应于用户进行磁盘阵列扩容时,所述方法还包括:
响应于用户针对第一条带的读操作,所述N+X个磁盘包括第一条带;
在根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换之后,所述方法还包括:
在N+X个磁盘中获取第一条带中存储的数据。
9.根据权利要求2-4任意一项所述的方法,其特征在于,在响应于用户进行磁盘阵列扩容之后,所述方法还包括:
响应于用户针对第一条带的初始化操作,所述N+X个磁盘包括第一条带,所述第一条带的数据存储状态更改为未使用状态。
10.一种磁盘阵列扩容装置,其特征在于,所述方法包括:
获取单元,用于获取多个条带中每个条带的数据存储状态,所述数据存储状态包括未初始化状态、未使用状态和已使用状态;
扩容转换单元,用于响应于用户进行磁盘阵列扩容,根据所述每个条带的数据存储状态,对每个条带内存储的数据进行扩容转换。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110996041.0A CN113849124B (zh) | 2021-08-27 | 2021-08-27 | 一种磁盘阵列扩容方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110996041.0A CN113849124B (zh) | 2021-08-27 | 2021-08-27 | 一种磁盘阵列扩容方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113849124A true CN113849124A (zh) | 2021-12-28 |
CN113849124B CN113849124B (zh) | 2023-08-04 |
Family
ID=78976403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110996041.0A Active CN113849124B (zh) | 2021-08-27 | 2021-08-27 | 一种磁盘阵列扩容方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113849124B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115657960A (zh) * | 2022-11-11 | 2023-01-31 | 苏州浪潮智能科技有限公司 | 一种磁盘阵列初始化方法、装置、设备及可读存储介质 |
CN117234433A (zh) * | 2023-11-14 | 2023-12-15 | 苏州元脑智能科技有限公司 | 数据迁移方法和装置、raid存储设备、存储介质及电子装置 |
WO2024040857A1 (zh) * | 2022-08-26 | 2024-02-29 | 苏州元脑智能科技有限公司 | 磁盘阵列初始化方法、系统、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5615352A (en) * | 1994-10-05 | 1997-03-25 | Hewlett-Packard Company | Methods for adding storage disks to a hierarchic disk array while maintaining data availability |
CN112114758A (zh) * | 2020-10-12 | 2020-12-22 | 苏州浪潮智能科技有限公司 | 一种独立冗余磁盘阵列扩容的方法、装置及介质 |
CN112130768A (zh) * | 2020-09-18 | 2020-12-25 | 苏州浪潮智能科技有限公司 | 磁盘阵列在线扩容方法、装置及计算机可读存储介质 |
CN113296702A (zh) * | 2021-05-20 | 2021-08-24 | 山东云海国创云计算装备产业创新中心有限公司 | 一种磁盘阵列扩容方法、装置、设备及存储介质 |
-
2021
- 2021-08-27 CN CN202110996041.0A patent/CN113849124B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5615352A (en) * | 1994-10-05 | 1997-03-25 | Hewlett-Packard Company | Methods for adding storage disks to a hierarchic disk array while maintaining data availability |
CN112130768A (zh) * | 2020-09-18 | 2020-12-25 | 苏州浪潮智能科技有限公司 | 磁盘阵列在线扩容方法、装置及计算机可读存储介质 |
CN112114758A (zh) * | 2020-10-12 | 2020-12-22 | 苏州浪潮智能科技有限公司 | 一种独立冗余磁盘阵列扩容的方法、装置及介质 |
CN113296702A (zh) * | 2021-05-20 | 2021-08-24 | 山东云海国创云计算装备产业创新中心有限公司 | 一种磁盘阵列扩容方法、装置、设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024040857A1 (zh) * | 2022-08-26 | 2024-02-29 | 苏州元脑智能科技有限公司 | 磁盘阵列初始化方法、系统、电子设备及存储介质 |
CN115657960A (zh) * | 2022-11-11 | 2023-01-31 | 苏州浪潮智能科技有限公司 | 一种磁盘阵列初始化方法、装置、设备及可读存储介质 |
WO2024098698A1 (zh) * | 2022-11-11 | 2024-05-16 | 苏州元脑智能科技有限公司 | 一种磁盘阵列初始化方法、装置、设备及可读存储介质 |
CN117234433A (zh) * | 2023-11-14 | 2023-12-15 | 苏州元脑智能科技有限公司 | 数据迁移方法和装置、raid存储设备、存储介质及电子装置 |
CN117234433B (zh) * | 2023-11-14 | 2024-02-20 | 苏州元脑智能科技有限公司 | 数据迁移方法和装置、raid存储设备、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113849124B (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113849124A (zh) | 一种磁盘阵列扩容方法及装置 | |
CN107844268B (zh) | 一种数据分发方法、数据存储方法、相关装置以及系统 | |
CN103810058B (zh) | 虚拟机备份方法、设备及系统 | |
CN103064765B (zh) | 数据恢复方法、装置及集群存储系统 | |
US7610465B2 (en) | Method and related apparatus for data migration utilizing disk arrays | |
US11226861B1 (en) | Systems and methods for distributing information across failure domains in servers | |
US9354826B2 (en) | Capacity expansion method and device | |
CN105224444A (zh) | 日志生成方法及装置 | |
CN101482802A (zh) | 独立磁盘冗余阵列5扩展方法及装置 | |
CN104407933A (zh) | 一种数据的备份方法及装置 | |
CN115098046B (zh) | 磁盘阵列初始化方法、系统、电子设备及存储介质 | |
CN110704161A (zh) | 虚拟机创建方法、装置及计算机设备 | |
CN110737402B (zh) | 管理存储系统的方法、设备和计算机存储介质 | |
CN102662796B (zh) | 一种数据恢复的方法及系统 | |
CN111722800A (zh) | 一种分布式存储系统row快照实现方法及相关组件 | |
EP3989069B1 (en) | Data reconstruction method and apparatus, computer device, storage medium, and system | |
CN105373450A (zh) | 数据备份的方法及装置 | |
CN107451070B (zh) | 一种数据的处理方法和服务器 | |
CN113190241B (zh) | 数据分区的容量扩充方法、装置、电子设备、存储介质 | |
CN103744751A (zh) | 存储设备配置信息连续优化备份系统及其使用方法 | |
CN105242941A (zh) | 烧录方法及装置 | |
CN113835637B (zh) | 一种数据的写入方法、装置以及设备 | |
CN111966644A (zh) | 超级计算机数据存储方法、装置、系统及存储介质 | |
CN111897495B (zh) | 提高ssd写性能的实现方法、装置、计算机设备及存储介质 | |
CN113485713A (zh) | 快速编译程序的方法及装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |