存储资源处理装置及方法与流程

文档序号:27316215发布日期:2021-11-09 23:55阅读:82来源:国知局
存储资源处理装置及方法与流程

1.本技术涉及一种数据存储领域,尤其涉及一种存储资源处理装置及方法。


背景技术:

2.由于近年来大量增加的存储需求,许多储存装置,如小型的nas(network attached storage、网络附加存储)受限于缺乏足够的横向可扩充性,已经无法满足如此大的数据储存量,因而大家逐渐将研究焦点转移到分布式储存系统。分布式储存系统可以透过网络将为数众多的服务器上之硬盘装置彼此串接,形成一大型的储存系统。透过分布式储存系统的处理,可以容易的通过增加服务器与硬盘的数量来增加整个系统的储存容量与i/o吞吐量,而不用受限于传统储存装置的容量与i/o上限。
3.现有技术中,数据分散在多台服务器中,为了维持数据的高可用性或是为了避免硬盘损毁,会将一份数据复制并存放在不同服务器的硬盘上。当这些硬盘或者服务器毁损时,会使得某些数据的复本数减少,分布式数据储存系统当侦测到此情形时,便会触发数据回填(backfill)的动作。然而随着储存的数据量增加以及硬盘的大小持续扩展到万亿字节等级,由于硬盘天生物理速度上的限制,以及大量数据需要回填使得硬盘需要长时间来消化这些回填的数据,如此回填的动作,将会使得系统的数据不安全且花费时间长,进而影响用户的体验度。


技术实现要素:

4.有鉴于此,有必要提供一种存储资源处理装置及方法,本技术实施方式提供的存储资源处理装置及方法,可以极大地降低数据在回填过程中的风险,提高数据的安全性,并提升用户的体验度。
5.本技术的实施方式提供一种存储资源处理装置,包括处理器,所述存储资源处理装置与多个服务器通信连接,所述处理器包括:
6.设置模块,所述设置模块用于将每一服务器中的多个第一存储装置形成一个仿真硬盘;
7.第一建立模块,所述第一建立模块用于将每一服务器中所形成的仿真硬盘之间进行配对并建立成一个虚拟硬盘;
8.第二建立模块,当所述服务器的多个第二存储装置中的任一个第二存储装置损坏时,所述第二建立模块用于将所述虚拟硬盘与新的第二存储装置作配对并建立成一逻辑存储装置,以对所述逻辑存储装置进行数据存取操作。
9.本技术的实施方式还提供一种存储资源处理方法,应用于一存储资源装置中,所述存储资源处理装置与多个服务器通信连接,所述存储资源处理方法包括以下步骤:
10.将每一服务器中的多个第一存储装置形成一个仿真硬盘;
11.将每一服务器中所形成的仿真硬盘之间进行配对并建立成一个虚拟硬盘;
12.当所述服务器的多个第二存储装置中的任一个第二存储装置损坏时,将所述虚拟
硬盘与新的第二存储装置作配对并建立成一逻辑存储装置,以对所述逻辑存储装置进行数据存取操作。
13.本技术实施方式提供的存储资源处理装置及方法,通过将每一服务器中的多个第一存储装置形成仿真硬盘,将每一服务器中所形成的仿真硬盘之间进行配对并建立成具有第二容量的虚拟硬盘,将所述虚拟硬盘与新的第二存储装置作配对并建立成一逻辑存储装置,以对所述逻辑存储装置进行数据存取操作。由此,本技术实施方式提供的存储资源处理装置及方法,极大地降低数据在回填过程中的风险,提升数据的安全性。
附图说明
14.图1为根据本技术存储资源处理装置的较佳实施方式的方框图。
15.图2为图1中处理器的较佳实施方式的方框图。
16.图3为本技术存储资源处理装置的较佳实施方式的示意图。
17.图4为本技术存储资源处理装置的另一较佳实施方式的示意图。
18.图5为根据本技术存储资源处理方法的较佳实施方式的流程图。
19.主要元件符号说明
20.存储资源处理装置
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
100
21.处理器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
10
22.设置模块
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
101
23.第一建立模块
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
102
24.第二建立模块
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
103
25.检测模块
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
104
26.闪存缓存模块
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
105
27.调整模块
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
106
28.存储器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
20
29.服务器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
200
30.第一存储装置
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
210
31.第二存储装置
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
220
32.虚拟硬盘
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
230
33.逻辑存储装置
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
300
34.缓存设备
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
310
35.后台设备
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
320
36.分布式数据存取系统
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
400
37.如下具体实施方式将结合上述附图进一步详细说明本技术。
具体实施方式
38.下面将结合本技术实施方式中的附图,对本技术实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本技术一部分实施方式,而不是全部的实施方式。
39.基于本技术中的实施方式,本领域普通技术人员在没有付出创造性劳动前提下所
获得的所有其他实施方式,都是属于本技术保护的范围。
40.请参阅图1,本技术的一较佳实施方式提供一种存储资源处理装置100。所述存储资源处理装置100与多个服务器200通信连接,用于对所述多个服务器200的存储资源进行管理。在本实施方式中,所述存储资源处理装置100为管理服务器。
41.所述存储资源处理装置100包括处理器10及存储器20。所述存储资源处理装置100可以通过有线或无线的方式与所述服务器200通信连接。
42.请参阅图2至图4,本技术的实施方式中,所述服务器200之间也互相通信连接。每一服务器200包括多个第一存储装置210及多个第二存储装置220,用于存储数据。优选地,所述第一存储装置210为内存,所述第二存储装置220为hdd(hard disk drive,硬盘),存储的数据为程序代码及/或软件资料。由此,所述存储资源处理装置100可以通过网络将所述服务器上的hdd彼此串接,以形成一个大型的储存系统,也即,所述服务器上的hdd彼此串接,以形成分布式数据存取系统400。
43.如图2所示,所述存储资源处理装置100可以至少包括设置模块101、第一建立模块102、第二建立模块103、检测模块104、闪存缓存模块105、调整模块106。可以理解,本技术实施方式中,上述模块为存储于所述存储器20中且可被所述处理器10调用执行的可程序化软件指令。可以理解的是,在其他实施方式中,上述模块也可为固化于所述处理器10中的程序指令或固件(firmware)。
44.所述设置模块101用于将每一服务器200中的多个第一存储装置210形成一个仿真硬盘(图中未示出)。
45.本技术实施方式中,以20存储资源处理装置且每存储资源处理装置中具有10个hdd为例进行说明,所述服务器及hdd的数量可以根据实际需要进行调整,本技术对此不作具体限制。
46.例如,存储服务器通常并不需要使用太多的内存空间,服务器200上总共有16个内存插槽,通常只会插上4条32gb的内存(总共128gb)来节省硬件成本。其余12个内存插槽也插满32gb的内存(总共384gb),这384gb的内存空间将会被保留下来供后续数据回填时使用。假设有20台服务器,每台服务器200上面有10个10tb硬盘供储存系统使用。由于每台服务器200的内存都插满,因此每台服务器200都多了384gb的内存空间。由此所述设置模块101可以将这些内存空间建成一个存储容量为384gb的内存仿真硬盘(ram disk)。因此这20台服务器200总共有20个384gb的内存仿真硬盘。
47.所述第一建立模块102用于将每一服务器200中所形成的仿真硬盘之间进行配对并建立成一个虚拟硬盘230。
48.例如,所述存储资源处理装置100可以使用分散式储存工具将保留下来的20个384gb大小的内存仿真硬盘建立成一个分布式储存系统。即,所述第一建立模块102再从系统中建立一个存储容量大小为7680gb的虚拟硬盘230。
49.当所述服务器200的多个第二存储装置220中的任一个第二存储装置220损坏时,所述第二建立模块103用于将所述虚拟硬盘230与新的第二存储装置220作配对,并建立成一逻辑存储装置(device mapper device)300,以对新建立的逻辑存储装置300进行数据存取操作。由于新建立的逻辑存储装置会使用虚拟硬盘当成读写快取空间。并使用这些新建立的逻辑存储装置代替hdd当成分布式数据存取系统的基本储存装置,所述逻辑存储装置
300可以大幅提升访问速度。
50.本技术实施方式中,当每一服务器中的多个第一存储装置处于空闲状态时,可将每一服务器中的多个第一存储装置形成所述仿真硬盘。
51.本技术实施方式中,所述第二建立模块103优选通过一闪存缓存模块105将虚拟硬盘230与新的第二存储装置220作配对,从而完成建立逻辑存储装置300。所述闪存缓存模块105可以包含有bcache或者flashcache软件包。
52.若有一个硬盘损毁而替换成新硬盘时,可通过所述第一建立模块102及所述第二建立模块103来执行数据回填。
53.具体地,所述逻辑存储装置300中会使用虚拟硬盘230作为新硬盘的快取装置,也就是虚拟硬盘230即为逻辑存储装置300中的缓存设备(cache device)310,而新硬盘即为逻辑存储装置300中的后台设备(backing device)320。在建立逻辑存储装置300时,所述调整模块106将缓存模式(cache mode)调整成写回(writeback)模式,也就是当有数据写到此逻辑存储装置300时,只要数据写入到缓存设备310上就算完成写的动作。
54.其余硬盘回填的数据会开始写到逻辑存储装置300中的缓存设备310,也就是由所有服务器所保留的内存空间所虚拟出来的虚拟硬盘中。当所有需要回填到新硬盘的数据都写入到缓存设备310后,数据回填动作便会结束。
55.当回填动作结束后,所述调整模块106将缓存模式转换为写环绕(write around)模式,也就是新写入需求都直接写到后台设备320中,并从所述逻辑存储装置300中解除缓存设备的存储功能,只留下原本的后台设备来提供分布式数据存取系统的存储服务。解除所述缓存设备310的存储时,会把存在缓存设备310中的数据清空(flush)到所述后台设备320之中,然而此动作会在后台设备320所属服务器的操作系统背景中执行,当flush完成后后台设备320便可独立运作于分布式储存系统中。
56.本技术实施方式中,所有服务器200保留下来的内存空间作为新替换硬盘的快取空间,并将快取的模式设为写回模式,因此来自其他硬盘的回填数据可以先储存到这个由内存虚拟出来的快取空间。由于内存的数据传输是透过电子信号,而并不是同硬盘一般受限于物理硬盘转动的速度限制,因此这个由内存虚拟出来的快取空间速度上至少比硬盘快了100倍以上。
57.举例而言,若仅是依靠新硬盘的io效能,则大致需要167个小时的时间才能够使所有数据回填到新硬盘,使分布式储存系统的数据回填动作结束。若使用本技术实施方式中的方案,则大致只要1.67个小时的时间,便可将数据写到由内存虚拟出来的快取空间中,此时分布式储存系统的数据回填动作便可结束,剩下从缓存设备310中把数据写回后台设备320的部分就由新硬盘所属服务器的操作系统来执行,可对新硬盘达到100mb/s以上的写入速度。
58.在实验过程中,记录对比例和本技术实施方式的回填数据的参数,并把结果记录在下表1中。
59.表1对比例和实施例的回填数据的参数
[0060][0061]
由上表可知,本技术实施方式的方法可以使得所需数据回填的时间比起现有技术中的数据回填方法快了9倍以上。
[0062]
可以理解,本技术实施方式中的20台服务器所保留的内存空间(7680gb)刚好够大可以完全储存由其他199个硬盘数据回填所写入的数据6tb。当分布式储存系统丛集够大时,其余留下来的空的内存插槽是相当惊人的(每台服务器有12个空插槽),若能将所有插槽都插满内存并将其用作数据回填的快取使用,则可以使服务器的使用率更高,使机房的使用更有效率。
[0063]
本技术实施方式中,若服务器200的第一存储装置210(即内存)毁损,存储资源处理装置100可以依据以下的操作来对服务器进行修复。
[0064]
首先,所述检测模块104检测出损坏的第一存储装置210,并确认其在服务器200上的位置,然后使用新的第一存储装置210替换损毁的第一存储装置210。其中,所述检测模块104可以包括memory test软件包。接着,所述设置模块101将使用新的第一存储装置210与未损坏的第一存储装置210重新建立一个仿真硬盘。进一步,所述第一建立模块102再重新建立一个虚拟硬盘,并加回到分布式数据存取系统中。接着,所述第二建立模块103将会再使用bcache或是flashcache等工具与要回填数据的新硬盘重新建立逻辑存储装置,最后再加回原来的分布式数据存取系统中,重新执行数据回填的动作。
[0065]
本技术实施方式中,若是新硬盘毁损,存储资源处理装置100可以依据以下的操作来对服务器进行修复。
[0066]
首先使用新硬盘替换损毁硬盘,所述检测模块104并对其执行smart control检查,确认此新硬盘没问题。接着,所述第二建立模块103将使用bcache或flashcache与虚拟硬盘重新建立逻辑存储装置,然后再加回分布式数据存取系统400,并重新执行数据回填的动作。
[0067]
本技术实施方式中,若是新硬盘所在的服务器损毁,存储资源处理装置100可以依据以下的操作来对服务器进行修复。
[0068]
先关机后,所述检测模块104检测服务器的损坏组件,并替换相关组件,然后开机确认其正常。所述第一建立模块102将服务器的保留内存空间再重新建立一个虚拟硬盘,并加回到分布式数据存取系统中。接着,所述第二建立模块103将会再使用bcache或是flashcache等工具与要回填数据的新硬盘重新建立逻辑存储装置,最后再加回原来的分布式数据存取系统中,重新执行数据回填的动作。
[0069]
本技术实施方式中提供的存储资源处理装置100可以降低数据在回填过程中的风险,提升数据的安全性。
[0070]
请参阅图5,本技术的一较佳实施方式提供一存储资源处理方法,本存储资源处理方法可以使用在图1或者图2中的存储资源处理装置100中。存储资源处理方法包括以下步骤:
[0071]
步骤s501:将每一服务器中的多个第一存储装置形成一个仿真硬盘。
[0072]
步骤s502:将每一服务器中所形成的仿真硬盘之间进行配对,并建立成一个虚拟硬盘。
[0073]
步骤s503:将所述虚拟硬盘与新的第二存储装置作配对并建立成一逻辑存储装置,以对所述逻辑存储装置进行数据存取操作。
[0074]
本技术实施方式中,当所述服务器200的多个第二存储装置中的任一个第二存储装置损坏时,将所述虚拟硬盘与新的第二存储装置作配对并建立成一逻辑存储装置,以对所述逻辑存储装置进行数据存取操作。
[0075]
本技术实施方式提供的存储资源处理装置及方法,通过将每一服务器中的多个第一存储装置形成仿真硬盘,将每一服务器中所形成的仿真硬盘之间进行配对并建立成具有第二容量的虚拟硬盘,将所述虚拟硬盘与新的第二存储装置作配对并建立成一逻辑存储装置,以对所述逻辑存储装置进行数据存取操作。由此,本技术实施方式提供的存储资源处理装置及方法,极大地降低数据在回填过程中的风险,提升数据的安全性。
[0076]
本技术领域的普通技术人员应当认识到,以上的实施方式仅是用来说明本技术,而并非用作为对本技术的限定,只要在本技术的实质精神范围之内,对以上实施例所作的适当改变和变化都落在本技术要求保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1