一种缓存数据处理方法、装置和存储控制器制造方法及图纸

技术编号:15329016 阅读:145 留言:0更新日期:2017-05-16 12:47
揭露一种数据处理方法,以及对应的装置和存储控制器。其中,数据处理方法包括:获取数据的压缩比D、重删比C、平均分条填充率I、缓存中目标分条大小S、所述目标分条中有效数据大小W;根据获取的这几项参数,使用公式

Cache data processing method, device and storage controller

Disclosed is a data processing method, a corresponding device and a storage controller. Among them, the data processing method includes: obtaining the compression ratio of D, deduplication ratio C, average filling rate, a I cache target size S, the target of effective data size of W data; according to these parameters, using the formula

【技术实现步骤摘要】
一种缓存数据处理方法、装置和存储控制器
本专利技术涉专利技术存储技术,特别涉及于存储领域技术的日志领域。
技术介绍
缓存(cache)是一种为了解决高、低速设备之间速度不匹配而采用的一项重要技术,广泛应用于各种领域如存储系统中,可以减少应用响应时间、提升效率。在存储系统中,为了提升存储系统的性能,通常在处理设备和硬盘之间增加一个缓存层(也称为回写缓存,write-backcache)。缓存层可以提高系统读写性能,所以有时候也把缓存层称为性能层。缓存使用的介质例如是固态硬盘(solidstatedisk,SSD),其其读写性能优于持久化存储介质(例如硬盘)。相对于硬盘,可以更快速处理来自主机应用程序的写请求。缓存的存储容量有限,因此当空闲空间不足时,需要根据淘汰算法把一部分缓存介质数据淘汰到硬盘中,以便腾出空间为后续的写请求使用。这部分从缓存下发到硬盘的数据称为脏数据。为了尽快的让缓存拥有足够的空闲空间,在空闲空间不足时需要尽快把脏数据淘汰到硬盘中去。否则会造成写请求难以被及时处理。存储领域中,缓存中脏数据通常是以分条作为粒度下发到硬盘。分条是逻辑概念,类似于一个装数据的容器。如果下发的数据不足一个分条,意味着分条中仅有部分位置有效数据,分条中存在空闲位置。参见图1中的分条,其利用率只有50%。这种没有被有效数据“装满”的分条,和被有效数据“装满”的分条一样,都会占用硬盘中一个完整分条的存储空间,而且会产生一组元数据。因此,如果分条中有效数据和空闲位置的比例越大。可以节约越多的硬盘存储空间,以及减少元数据的数量。如果分条完全“装满”有效数据后再下发,可以最大化的利用硬盘存储空间,以及产生最少的元数据。由此可见,脏数据的淘汰方式存在两个矛盾的需求:从尽快获取更多空闲缓存空间这个需求考虑,脏数据需要尽快淘汰到硬盘,最好是一旦空闲空间不足,立刻执行淘汰操作;而从提高硬盘利用率和减少元数据这个需求考虑,需要尽量凑满分条后再把脏数据淘汰到硬盘,最好是把脏数据凑满完整的分条后再执行淘汰操作。如何在二者中寻求一个平衡,是业界需要解决的问题。现有技术中并没有很好的解决这个问题。每秒读写次数(IOPS)抖动过大,以及硬盘存储空间利用不足的情况时有发生。
技术实现思路
本专利技术实施例提供一种缓存数据处理方法、装置和存储控制器,可以缓解IOPS的严重波动,使存储系统的性能越稳定。本专利技术第一方面,本专利技术提供一种缓存数据处理方法,该方法包括:获取数据的压缩比D、重删比C、以及平均分条填充率I、缓存中目标分条大小S、以及所述目标分条中有效数据大小W;按照公式获取淘汰数据量N,在Tmin≤N≤Tmax的情况下,将大小为N的数据写入所述目标分条,把所述目标分条的数据淘汰给存储介质,其中当Tmin是预设的第一阈值,Tmax是预设的第二阈值。在另外一种可选方式中,在N>Tmax的情况下,将大小为N的数据写入所述目标分条。在另外一种可选方式中,在N<Tmin的情况下,把所述目标分条的数据淘汰给所述存储介质。这三种可选方式都是可选的,执行其中任意一个即可形成一个完整的流程。基于该方法,在对缓存没有明显影响的情况下,分条容纳尽量多的数据后再淘汰到存储介质中。在尽早获得空闲的缓存空间以及提高磁盘利用率这两个互相矛盾的需求之间获得平衡。使得缓存数据更平滑的淘汰给存储介质,减少了IOPS严重波动的情况,使存储系统更加稳定。在第一方面的第一种可能实现方式中,其中,将大小为N的数据写入所述目标分条之后,进一步包括:在所述目标分条被后续数据写满以后,把所述目标分条淘汰到所述存储介质。该可能实现方式提出了N>Tm的情况下,淘汰数据的方案。在第一方面的第二种可能实现方式中,根据权利要求1所述的缓存数据淘汰方法,所述D、C和I是统计值,其初始值均为1。在第一方面的第三种可能实现方式中,其中S用从缓存下发数据到存储介质的最小单位(或者最小单位的整数倍)的数量进行描述,例如用缓存页的数量描述。本专利技术第二方面,提供一种缓存数据处理装置,该装置包括:获取模块,可以用于获取数据的压缩比D、重删比C以及平均分条填充率I,还可以用于获取缓存中目标分条大小S、所述目标分条中有效数据大小W;计算模块,用于按照公式计算从淘汰数据量N;数据处理模块,用于在Tmin≤N≤Tmax的情况下,将大小为N的数据写入所述目标分条,把所述目标分条的数据淘汰给存储介质,其中当Tmin是预设的第一阈值,Tmax是预设的第二阈值。在另外一种可选方式中,数据处理模块用于在N>Tmax的情况下,将大小为N的数据写入所述目标分条。在另外一种可选方式中,在N<Tmin的情况下,数据处理模块用于把所述目标分条的数据淘汰给所述存储介质。这三种可选方式都是可选的,执行其中任意一个即可形成一个完整的流程。基于该缓存数据处理装置,在对缓存没有明显影响的情况下,分条容纳尽量多的数据后再淘汰到存储介质中。在尽早获得空闲的缓存空间以及提高磁盘利用率这两个互相矛盾的需求之间获得平衡。使得缓存数据更平滑的淘汰给存储介质,减少了IOPS严重波动的情况,使存储系统更加稳定。本专利技术第二方面的第一种可能实现方式,所述处理模块还用于:在大小为N的数据写入所述目标分条之后,如果所述目标分条被后续数据写满以后,把所述目标分条淘汰到所述存储介质。该可能实现方式提出了N>Tm的情况下,淘汰数据的方案。本专利技术第二方面的第二种可能实现方式,所述D、C和I是统计值,其初始值均为1。本专利技术第二方面的第三种可能实现方式,S用从缓存下发数据到存储介质的最小单位(或者最小单位的整数倍)的数量进行描述,例如用缓存页的数量描述。本专利技术第三方面提供一种存储控制器,所述存储控制器包括处理器和缓存,缓存用于暂存数据,可选的还可以包括存储淘汰数据的存储介质(例如硬盘或者固态硬盘)。所述处理器通过运行程序执行下面的步骤:获取数据的压缩比D、重删比C、以及平均分条填充率I,还用于获取缓存中目标分条大小S、所述目标分条中有效数据大小W;按照公式获取淘汰数据量N;在Tmin≤N≤Tmax的情况下,将大小为N的数据写入所述目标分条,把所述目标分条的数据淘汰给存储介质,其中当Tmin是预设的第一阈值,Tmax是预设的第二阈值。在另外一种可选方式中,在N>Tmax的情况下,将大小为N的数据写入所述目标分条。在另外一种可选方式中,在N<Tmin的情况下,把所述目标分条的数据淘汰给所述存储介质。这三种可选方式都是可选的,执行其中任意一个即可形成一个完整的流程。基于该存储控制器,在对缓存没有明显影响的情况下,分条容纳尽量多的数据后再淘汰到存储介质中。在尽早获得空闲的缓存空间以及提高磁盘利用率这两个互相矛盾的需求之间获得平衡。本专利技术第三方面的第一种可能实现方式,所述处理器还用于执行:在大小为N的数据写入所述目标分条之后,如果所述目标分条被后续数据写满以后,把所述目标分条淘汰到所述存储介质。该可能实现方式提出了N>Tm的情况下,淘汰数据的方案。本专利技术第三方面的第二种可能实现方式,所述D、C和I是统计值,其初始值均为1。本专利技术第三方面的第三种可能实现方式,S用从缓存下发数据到存储介质的最小单位(或者最小单位的整数倍)的数量进行描述,例如用缓存页的数量描述。本专利技术第四方面,还提供一种存储系统,包括上本文档来自技高网
...
一种缓存数据处理方法、装置和存储控制器

【技术保护点】
一种缓存数据处理方法,其特征在于,该方法包括:获取数据的压缩比D、重删比C、以及平均分条填充率I,获取缓存中目标分条大小S、所述目标分条中有效数据大小W;按照公式

【技术特征摘要】
1.一种缓存数据处理方法,其特征在于,该方法包括:获取数据的压缩比D、重删比C、以及平均分条填充率I,获取缓存中目标分条大小S、所述目标分条中有效数据大小W;按照公式获得淘汰数据量N,根据N的取值执行下述操作中的一个:在Tmin≤N≤Tmax的情况下,将大小为N的数据写入所述目标分条,把所述目标分条的数据淘汰给存储介质,其中当Tmin是预设的第一阈值,Tmax是预设的第二阈值;在N>Tmax的情况下,将大小为N的数据写入所述目标分条;在N<Tmin的情况下,把所述目标分条的数据淘汰给所述存储介质。2.根据权利要求1所述的缓存数据淘汰方法,其中,将大小为N的数据写入所述目标分条之后,进一步包括:在所述目标分条被后续数据写满以后,把所述目标分条淘汰到所述存储介质。3.根据权利要求1所述的缓存数据淘汰方法,其中:所述D、C和I的初始值均为1。4.根据权利要求1所述的缓存数据淘汰方法,该方法还包括:其中S用缓存页的数量描述。5.一种缓存数据处理装置,其特征在于,该装置包括:获取模块,用于获取数据的压缩比D、重删比C、以及平均分条填充率I,还用于获取缓存中目标分条大小S、所述目标分条中有效数据大小W;计算模块,用于按照公式获得淘汰数据量N;数据处理模块,用于根据N的取值执行下述操作中的一个:在Tmin≤N≤Tmax的情况下,将大小为N的数据写入所述目标分条,把所述目标分条的数据淘汰给存储介质,其中当Tmin...

【专利技术属性】
技术研发人员:江武汉门勇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1