一种异构存储优化方法及装置制造方法及图纸

技术编号:15070296 阅读:103 留言:0更新日期:2017-04-06 17:26
本发明专利技术公开了一种异构存储优化方法及装置,用以解决现有技术中存在的对后端存储设备进行虚拟化后,降低了读写性能,以及浪费Cache资源的问题,该方法为:将Cache资源池中的至少一个Cache块分配给一个后端存储设备;确定主机预设时长内,基于分配的Cache块读写该后端存储设备的数据的读写任务的第一总延迟时间,以及确定在未给该后端存储设备分配Cache块的情况下,主机处理上述读写任务的第二总延迟时间;根据第一总延迟时间和第二总延迟时间对分配的Cache块的数目进行调整。这样,针对具有不同性能参数的后端存储设备,对分配的Cache资源进行调整,合理利用Cache资源,提高了主机处理读写任务的效率。

【技术实现步骤摘要】

本专利技术涉及数据存储
,尤其涉及一种异构存储优化方法及装置
技术介绍
目前,在虚拟化网关或软件定义存储(SoftwareDefinedStorage,SDS)设备中,通常将物理存储设备虚拟化或封装成为更需要的存储资源类型来整合存储资源以及提供存储服务,用来虚拟化或封装的物理存储设备称为后端存储设备。将不同性能、结构的后端存储设备应用虚拟化技术集中管理起来,使所有的存储子系统在一个存储池中得到统一的管理,以集中存储资源,提供存储服务,降低维护投入,称为异构存储虚拟化。由于虚拟化网关或SDS设备中的这些后端存储设备是来自于不同的存储设备厂商,且规格也不尽相同,因此,每个后端存储设备的属性和性能参数差异较大,其中,性能参数包括每秒读写次数(Input/OutputOperationsPerSecond,IOPS)与延迟时间等。但是虚拟化网关或SDS设备通常在对不同的后端存储设备进行虚拟化的过程中,对不同的后端存储设备采用相同的处理策略,即虚拟化网关或SDS设备在本地的高速缓冲存储器(Cache)为对接的每一个后端存储设备采用同样的策略分配Cache资源,然而,由于不同的后端存储设备的性能参数不同,针对性能参数较低的慢阵列和中端阵列,通过虚拟化网关或SDS设备分配的对应的Cache资源,可以明显提高慢阵列和中端阵列的读写性能;针对性能参数较高的快阵列,如某全闪存存储阵列性能参数很高,在经过虚拟化网关或<br>SDS设备虚拟化过后,该全闪存存储阵列的读写性能远低于该全闪存存储阵列未虚拟化的读写性能,虚拟化网关或SDS设备中的Cache拖慢了该全闪存存储阵列的访问速度,进而降低了该存储系统的读写性能,同时,也导致虚拟化网关或SDS设备中Cache资源的浪费,不能充分提高其它后端存储设备读写速度。
技术实现思路
本专利技术实施例提供一种异构存储优化方法及装置,用以解决现有技术中存在的对不同性能参数的后端存储设备进行虚拟化后,降低了后端存储设备的性能参数,以及浪费Cache资源的问题。本专利技术实施例提供的具体技术方案如下:第一方面,一种异构存储优化方法,包括:针对一个后端存储设备,将高速缓冲存储器Cache资源池中的至少一个Cache块分配给所述后端存储设备;并将所述Cache资源池中分配给所述后端存储设备的Cache块删除;在一个预设时长结束后,确定主机在所述时长内,基于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时间,以及确定在未给所述后端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所述读写任务的第二总延迟时间;根据所述第一总延迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量进行调整。结合第一方面,在第一种可能的实现方式中,将Cache资源池中的至少一个Cache块分配给所述后端存储设备,包括:将Cache资源池中设定比例的Cache块分配给所述后端存储设备;或将Cache资源池中设定数目的Cache块分配给所述后端存储设备。结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,确定主机在所述时长内,基于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时间,包括:获取主机在所述时长内,基于分配的Cache块的读任务的总数目和写任务的总数目;并获取分配的Cache块的击中率,所述Cache块的击中率指针对分配的Cache块的读任务中,使分配的Cache块击中的读任务的数目与所述读任务的总数目的比值,所述Cache块击中指针对任意读任务,在Cache块中读取到对应数据;分别获取主机基于分配的Cache块进行的写任务的第一平均延迟时间、主机在所述分配的Cache块击中时进行的读任务的第二平均延迟时间,以及主机在所述分配的Cache块未击中时进行的读任务的第三平均延迟时间;根据获取的所述读任务的总数目、所述写任务的总数目、分配的Cache块的击中率、所述第一平均延迟时间、所述第二平均延迟时间以及所述第三平均延迟时间,确定主机在所述时长内,基于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时间。结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,确定主机在所述时长内,基于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时间,所述第一总延迟时间满足下述公式的条件:TCache=TWC*NWrite+TRA’*NRead*PCache+TRA*NRead*(1-PCache)其中,TCache为第一总延迟时间;NWrite为写任务的总数目,NRead为读任务的总数目;PCache为分配的Cache块的击中率;TWC为第一平均延迟时间,TRA’为第二平均延迟时间,TRA为第三平均延迟时间。结合第一方面或第一方面的第一种可能的实现方式,在第四种可能的实现方式中,确定在未给所述后端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所述读写任务的第二总延迟时间,包括:获取主机在所述时长内,针对所述后端存储设备的读任务的总数目和写任务的总数目;分别获取在未给所述后端存储设备分配Cache块的情况下,主机针对所述后端存储设备进行的写任务的第四平均延迟时间和主机针对所述后端存储设备进行的读任务的第五平均延迟时间;根据获取的所述读任务的总数目、所述写任务的总数目、所述第四平均延迟时间以及所述第五平均延迟时间,确定在未给所述后端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所述读写任务的第二总延迟时间。结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,确定在未给所述后端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所述读写任务的第二总延迟时间,所述第二总延迟时间满足下述公式的条件:TNoCache=TW*N‘Write+TR*N’Read其中,TNoCache为第二总延迟时间;N‘Write为写任务的总数目,N’Read为读任务的总数目,TW为第四平均延迟时间,TR为第五平均延迟时间。结合第一方面或第一方面的第一至第五任意一种可能的实现方式,在第六种可能的实现方式中,根据所述第一总延迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量进行调整,包括:当所述第一总延迟本文档来自技高网
...

【技术保护点】
一种异构存储优化方法,其特征在于,包括:针对一个后端存储设备,将高速缓冲存储器Cache资源池中的至少一个Cache块分配给所述后端存储设备;并将所述Cache资源池中分配给所述后端存储设备的Cache块删除;在一个预设时长结束后,确定主机在所述时长内,基于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时间,以及确定在未给所述后端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所述读写任务的第二总延迟时间;根据所述第一总延迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量进行调整。

【技术特征摘要】
1.一种异构存储优化方法,其特征在于,包括:
针对一个后端存储设备,将高速缓冲存储器Cache资源池中的至少一个
Cache块分配给所述后端存储设备;并
将所述Cache资源池中分配给所述后端存储设备的Cache块删除;
在一个预设时长结束后,确定主机在所述时长内,基于分配的Cache块读
写所述后端存储设备的数据的读写任务的第一总延迟时间,以及确定在未给所
述后端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,
处理所述读写任务的第二总延迟时间;
根据所述第一总延迟时间和所述第二总延迟时间对已分配给所述后端存
储设备的Cache块的数量进行调整。
2.如权利要求1所述的方法,其特征在于,将Cache资源池中的至少一
个Cache块分配给所述后端存储设备,包括:
将Cache资源池中设定比例的Cache块分配给所述后端存储设备;或
将Cache资源池中设定数目的Cache块分配给所述后端存储设备。
3.如权利要求1或2所述的方法,其特征在于,确定主机在所述时长内,
基于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时
间,包括:
获取主机在所述时长内,基于分配的Cache块的读任务的总数目和写任务
的总数目;并
获取分配的Cache块的击中率,所述Cache块的击中率指针对分配的Cache
块的读任务中,使分配的Cache块击中的读任务的数目与所述读任务的总数目
的比值,所述Cache块击中指针对任意读任务,在Cache块中读取到对应数据;
分别获取主机基于分配的Cache块进行的写任务的第一平均延迟时间、主
机在所述分配的Cache块击中时进行的读任务的第二平均延迟时间,以及主机
在所述分配的Cache块未击中时进行的读任务的第三平均延迟时间;
根据获取的所述读任务的总数目、所述写任务的总数目、分配的Cache块
的击中率、所述第一平均延迟时间、所述第二平均延迟时间以及所述第三平均
延迟时间,确定主机在所述时长内,基于分配的Cache块读写所述后端存储设
备的数据的读写任务的第一总延迟时间。
4.如权利要求3所述的方法,其特征在于,确定主机在所述时长内,基
于分配的Cache块读写所述后端存储设备的数据的读写任务的第一总延迟时
间,所述第一总延迟时间满足下述公式的条件:
TCache=TWC*NWrite+TRA’*NRead*PCache+TRA*NRead*(1-PCache)
其中,TCache为第一总延迟时间;
NWrite为写任务的总数目,NRead为读任务的总数目;
PCache为分配的Cache块的击中率;
TWC为第一平均延迟时间,TRA’为第二平均延迟时间,TRA为第三平均延迟
时间。
5.如权利要求1或2所述的方法,其特征在于,确定在未给所述后端存
储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所
述读写任务的第二总延迟时间,包括:
获取主机在所述时长内,针对所述后端存储设备的读任务的总数目和写任
务的总数目;
分别获取在未给所述后端存储设备分配Cache块的情况下,主机针对所述
后端存储设备进行的写任务的第四平均延迟时间和主机针对所述后端存储设
备进行的读任务的第五平均延迟时间;
根据获取的所述读任务的总数目、所述写任务的总数目、所述第四平均延
迟时间以及所述第五平均延迟时间,确定在未给所述后端存储设备分配Cache
块的情况下,主机读写所述后端存储设备的数据时,处理所述读写任务的第二
总延迟时间。
6.如权利要求5所述的方法,其特征在于,确定在未给所述后端存储设

\t备分配Cache块的情况下,主机读写所述后端存储设备的数据时,处理所述读
写任务的第二总延迟时间,所述第二总延迟时间满足下述公式的条件:
TNoCache=TW*N‘Write+TR*N’Read其中,TNoCache为第二总延迟时间;
N‘Write为写任务的总数目,N’Read为读任务的总数目,TW为第四平均延迟时间,
TR为第五平均延迟时间。
7.如权利要求1-6任一项所述的方法,其特征在于,根据所述第一总延
迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量
进行调整,包括:
当所述第一总延迟时间小于所述第二总延迟时间时,获取所述后端存储设
备的热点逻辑区块地址LBA的总容量和为所述后端存储设备分配的Cache块
的容量;
若所述热点LBA的总容量大于或等于分配的Cache块的容量,则将Cache
资源池中的第一设定数目的Cache块增加分配给所述后端存储设备,并在所述
Cache资源池中删除所述第一设定数目的Cache块;
若所述热点LBA的总容量小于分配的Cache块的容量,则在已分配给所
述后端存储设备的Cache块中减少第一设定数目的Cache块,并将减少的第一
设定数目的Cache块增加到所述Cache资源池中。
8.如权利要求1-6任一项所述的方法,其特征在于,根据所述第一总延
迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量
进行调整,包括:
当所述第一总延迟时间大于或等于所述第二总延迟时间,且所述第一总延
迟时间除以所述第二总延迟时间得到的第一延迟时间比例小于预设比例门限
值时,获取所述后端存储设备的热点LBA的总容量和为所述后端存储设备分
配的Cache块的容量,所述预设比例门限值大于1;
当所述热点LBA的总容量大于分配的Cache块的容量、且所述热点LBA

\t的总容量与分配的Cache块的容量差大于设定容量差时,判断分配的Cache块
的击中率是否小于击中率阈值;
所述Cache块的击中率指针对分配的Cache块的读任务中,使分配的Cache
块击中的读任务的数目与所述读任务的总数目的比值,所述Cache块击中指针
对任意读任务在Cache块中读取到对应数据;
若分配的Cache块的击中率小于击中率阈值,则取消已分配给所述后端存
储设备的Cache块,并将取消的Cache块增加到所述Cache资源池中;
若分配的Cache块的击中率大于或等于击中率阈值,则将Cache资源池中
的第一设定数目的Cache块增加分配给所述后端存储设备,并在所述Cache资
源池中删除所述第一设定数目的Cache块。
9.如权利要求1-6任一项所述的方法,其特征在于,根据所述第一总延
迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量
进行调整,包括:
当所述第一总延迟时间大于或等于所述第二总延迟时间,且所述第一总延
迟时间除以所述第二总延迟时间得到的第一延迟时间比例小于预设比例门限
值时,获取所述后端存储设备的热点LBA的总容量和为所述后端存储设备分
配的Cache块的容量,所述预设比例门限值大于1;
当所述热点LBA的总容量小于分配的Cache块的容量、且所述热点LBA
的总容量与分配的Cache块的容量差大于设定容量差时,取消已分配给所述后
端存储设备的Cache块,并将取消的Cache块增加到所述Cache资源池中。
10.如权利要求1-6任一项所述的方法,其特征在于,根据所述第一总延
迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量
进行调整,包括:
当所述第一总延迟时间大于或等于所述第二总延迟时间,且所述第一总延
迟时间除以所述第二总延迟时间得到的第一延迟时间比例小于预设比例门限
值时,获取所述后端存储设备的热点LBA的总容量和为所述后端存储设备分

\t配的Cache块的容量,所述预设比例门限值大于1;
当所述热点LBA的总容量与分配的Cache块的容量差小于或等于设定容
量差时,判断分配的Cache块的击中率是否大于击中率阈值;
所述Cache块的击中率指针对分配的Cache块的读任务中,使分配的Cache
块击中的读任务的数目与所述读任务的总数目的比值,所述Cache块击中指针
对任意读任务在Cache块中读取到对应数据;
若分配的Cache块的击中率大于击中率阈值,则将Cache资源池中的第一
设定数目的Cache块增加分配给所述后端存储设备,并在所述Cache资源池中
删除所述第一设定数目的Cache块;
若分配的Cache块的击中率小于或等于击中率阈值,则取消已分配给所述
后端存储设备的Cache块,并将取消的Cache块增加到所述Cache资源池中。
11.如权利要求1-6任一项所述的方法,其特征在于,根据所述第一总延
迟时间和所述第二总延迟时间对已分配给所述后端存储设备的Cache块的数量
进行调整,包括:
当所述第一总延迟时间除以所述第二总延迟时间得到的第一延迟时间比
例大于或等于预设比例门限值时,取消已分配给所述后端存储设备的Cache块,
并将取消的Cache块增加到所述Cache资源池中,所述预设比例门限值大于1。
12.如权利要求7、8、10任一项所述的方法,其特征在于,将Cache资
源池中的第一设定数目的Cache块增加分配给所述后端存储设备后,还包括:
在下一个预设时长结束时,确定主机在所述时长内,基于增加第一设定数
目后的分配的Cache块的读写任务的第三总延迟时间,以及确定在未给所述后
端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时处理
所述读写任务的第四总延迟时间;
将所述第一总延迟时间除以所述第二总延迟时间得到第一延迟时间比例,
并将第三总延迟时间除以第四总延迟时间得到第二延迟时间比例;
若第二延迟时间比例大于或等于第一延迟时间比例,则取消增加的第一设

\t定数目的Cache块,并将取消的第一设定数目Cache块增加到所述Cache资源
池中;
若第二延迟时间比例小于第一延迟时间比例,则继续将Cache资源池中的
第一设定数目的Cache块增加分配给所述后端存储设备,并在所述Cache资源
池中删除所述第一设定数目的Cache块。
13.如权利要求7、8、10任一项所述的方法,其特征在于,将Cache资
源池中的第一设定数目的Cache块增加分配给所述后端存储设备,包括:
在所述后端存储设备的服务优先级非最低,且当前Cache资源池中的
Cache块的数目小于所述第一设定数目时,将所述第一设定数目减去当前Cache
资源池中的Cache块的数目得到缺省数目;
从为服务优先级最低的后端存储设备分配的Cache块中恢复缺省数目的
Cache块到Cache资源池;
将Cache资源池中的第一设定数目的Cache块增加分配给所述后端存储设
备。
14.如权利要求7所述的方法,其特征在于,在已分配给所述后端存储设
备的Cache块中减少第一设定数目的Cache块后,还包括:
在下一个预设时长结束时,确定主机在所述时长内,基于减少第一设定数
目后的分配的Cache块的读写任务的第三总延迟时间,以及确定在未给所述后
端存储设备分配Cache块的情况下,主机读写所述后端存储设备的数据时处理
所述读写任务的第四总延迟时间;
将所述第一总延迟时间除以所述第二总延迟时间得到第一延迟时间比例,
并将第三总延迟时间除以第四总延迟时间得到第二延迟时间比例;
若第二延迟时间比例大于第一延迟时间比例,则恢复减少的第一设定数目
的Cache块分配给所述后端存储设备,并在所述Cache资源池中删除所述第一
设定数目的Cache块;
若第二延迟时间比例小于或等于第一延迟时间比例,则继续在已分配给所

\t述后端存储设备的Cache块中减少第一设定数目的Cache块...

【专利技术属性】
技术研发人员:田涛
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1