System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于机器学习和云存储,更具体地,涉及一种多变缓存空间场景下基于机器学习的缓存准入方法和系统。
技术介绍
1、缓存准入是在缓存发生未命中时决定是否允许数据写入缓存。其核心是核心是在缓存发生未命中时判断数据写入缓存之后能否对缓存系统带来收益,从而决定是否让未命中的数据写入缓存中。通过减少固态硬盘的擦出写次数来延长固态硬盘的使用寿命。
2、现有的缓存准入方法主要分为基于启发式的缓存准入策略和基于学习的缓存准入策略;其中基于启发式的缓存准入策略是通过对负载的特性分析,找出数据的访问特性,然后制定准入规则。基于启发式的准入策略主要是基于数据的一个或多个局部性特征(如文件大小,访问频率等)来制定规则;基于学习的缓存准入策略则是通过机器学习使能的技术分析数据状态或者数据是否会对缓存产生收益来制定准入策略。因为使用了机器学习算法,所以基于学习的缓存准入策略可以包含启发式算法中使用的所有局部性特征,然后根据负载特性动态调整
3、然而,现有的基于启发式的缓存准入策略和基于学习的缓存准入策略在多变缓存场景中都存在一些不可忽略的缺陷:
4、第一,现有的基于启发式的缓存准入策略只是使用一些简单的用户的缓存信息,往往只是在特定的工作负载下拥有良好的效果,而当工作负载发生改变时,其并不能很好的提升缓存性能,适用性差。
5、第二,基于学习的缓存准入策略为保证访问延时,只是采用简单的机器学习算法,而深度学习因为预测时延长而无法在缓存中进行使用,使最终的准入决策准确性差。
6、第三,现有的基于启
技术实现思路
1、针对现有技术的以上缺陷或改进需求,本专利技术提供了一种多变缓存空间场景下基于机器学习的缓存准入方法和系统,其目的在于,解决现有基于启发式的缓存准入策略适用性差的技术问题,以及现有基于学习的缓存准入策略准确性差的技术问题,以及现有基于启发式的缓存准入策略和基于学习的缓存准入策略无法在缓存大小动态改变的场景中进行使用的技术问题。
2、为实现上述目的,按照本专利技术的一个方面,提供了一种多变缓存空间场景下基于机器学习的缓存准入方法,包括以下步骤:
3、(1)采集用户的缓存信息,并对该用户的缓存信息先后进行词向量化处理和归一化处理,以获取该用户的缓存信息对应的特征向量。
4、(2)将步骤(1)得到的用户的缓存信息对应的特征向量输入到预先训练好的机器学习模型中,以获取该用户的缓存信息对应的重用距离标签。
5、(3)根据步骤(1)获取的该用户的缓存信息、以及步骤(2)得到的该用户的缓存信息对应的重用距离标签,判断该用户的缓存信息在其缓存生命周期内是否会被再次命中,如果是则允许该缓存信息对应的数据写入缓存,否则不允许该缓存信息对应的数据写入缓存。
6、优选地,步骤(1)采集的用户的缓存信息包含k条最近用户访问缓存信息和1条当前用户访问缓存信息,k为自然数,优选地,k的取值为19。
7、步骤(1)中的归一化处理是使用tanh函数实现的。
8、步骤(1)中的词向量化处理是使用独热编码方式实现的,词向量化首先是获取缓存信息中的多个引荐者url,然后对引荐者url进行拆分处理,以得到不同的目录路径;然后对不同的目录路径按照其在所有路径中出现的频率进行排序,以得到排好序的目录路径;其后,对得到的不同目录路径进行独热编码处理,以得到引荐者url的原始词向量;最后,使用嵌入策略对得到的原始词向量进行降低向量维度的操作,以得到最终的词向量。
9、优选地,用户的缓存信息包括多个标志,每个标志分别对应用户访问缓存信息、对象信息和工作负载信息三种子信息中的一种;
10、表示用户访问缓存信息最近性的标志rs、表示用户访问缓存信息的请求时间的标志tt、表示用户访问缓存信息的访问频率的标志fs、以及表示用户使用的操作系统类型的标志ot对应于用户访问缓存信息;
11、表示访问对象大小的标志st、表示访问对象类型的标志tn、以及表示访问对象是否为缩略图的标志tb对应于对象信息;
12、表示用户最近的命中率的标志ht、表示用户的缓存信息的引荐者的标志rt、以及表示用户当前占用的缓存大小的标志ct对应于工作负载信息。
13、优选地,本专利技术使用的机器学习模型为长短时记忆网络lstm模型,该模型是通过以下步骤训练得到的:
14、(2-1)采集多个用户在多个时间段内的多个缓存信息,并为所有用户的所有缓存信息打上标签,获得的所有带标签的缓存信息构成训练集;
15、(2-2)对步骤(2-1)得到的训练集进行两次采样处理,以得到最终的训练集。
16、(2-3)根据步骤(2-2)得到的最终的训练集对lstm模型进行训练,以得到训练好的lstm模型;
17、优选地,步骤(2-1)具体为:
18、将每个用户的所有缓存信息进行分类,以获取n个类别,其中n为自然数;
19、然后,将重用距离值为[0,i)的缓存信息归为第1类,将重用距离值在[i,2i)的缓存信息归为第2类,…,将重用距离值在[(n-1)*i,n*i)的缓存信息归为第n类;
20、最后,通过每个用户的每个缓存信息的类别,为该缓存信息打上标签,标签值代表该用户的缓存信息所对应的类别。
21、优选地,分类总数n是按照以下公式计算的:
22、
23、其中rumax表示所有用户的所有缓存信息所对应的所有重用距离值中的最大值,i表示距离间隔,且有:
24、
25、其中i表示距离间隔,x表示用户所有的缓存信息中的所有访问对象累积占用的缓存大小,s表示用户所有的缓存信息中所有访问对象的大小st的平均值,r表示重用率,其取值范围是0到1,该数值与缓存信息中该用户最近的命中率相同。
26、优选地,步骤(2-2)具体为,
27、首先,确定缓存系统中所使用的缓存替换算法;
28、然后,根据缓存系统中使用的缓存替换算法对步骤(2-1)得到的训练集进行模拟缓存替换操作,以筛选出未命中缓存信息。
29、随后,将筛选出的未命中缓存信息组成初步的训练集。
30、其后,对初步的训练集进行二次采样操作,以得到多个二次采样后的缓存信息;本专利技术中的二次采样操作为每分钟分别随机挑选初步的训练集中每个类别的5条数据,如果某类别的数据数量不够5条,则按照实际数量选取,然后重复本过程,直到初步的训练集中所有的缓存信息都经过二次采样为止。
31、最后,将所有二次采样后的缓存信息组成最终的训练集。
32、优选地,步骤(2-3)具体为,
33、首先,获取最终的训练集中的第一条缓存信息,将其中k本文档来自技高网...
【技术保护点】
1.一种多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,
3.根据权利要求1或2所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,
4.根据权利要求1至3中任意一项所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,本专利技术使用的机器学习模型为长短时记忆网络LSTM模型,该模型是通过以下步骤训练得到的:
5.根据权利要求4所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,步骤(2-1)具体为:
6.根据权利要求5所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,分类总数n是按照以下公式计算的:
7.根据权利要求6所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,步骤(2-2)具体为,
8.根据权利要求7所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,步骤(2-3)具体为,
9.根据权利要求8所述
10.一种多变缓存空间场景下基于机器学习的缓存准入系统,其特征在于,包括:
...【技术特征摘要】
1.一种多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,
3.根据权利要求1或2所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,
4.根据权利要求1至3中任意一项所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,本发明使用的机器学习模型为长短时记忆网络lstm模型,该模型是通过以下步骤训练得到的:
5.根据权利要求4所述的多变缓存空间场景下基于机器学习的缓存准入方法,其特征在于,步骤(2-1)具体为:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。