1.一种基于内容流行度的边缘缓存方法,其特征在于,包括以下步骤:
S1,根据服务器集群、设备和用户请求内容构建端边云系统模型,获得每个内容在不同时间段的请求次数,将单位时间内容被终端用户的请求次数视为该内容在该单位时间段历史流行度;
S2,对不同长度的历史数据进行分类,分类后使用改进的指数平滑预测算法和动态优化长短期记忆算法预测未来时刻的流行度;
S3,将步骤S2中预测得到的流行度视为流行度增益,由于获取内容的时延与内容自身的大小有关系,假若内容缓存在边缘服务器集群中,相比于从云端获取所减少的时延视为时延开销增益,计算得到每个内容的价值总收益;
S4,对于每个服务器集群,采用缓存放置算法计算出在当前容量下效益最高的内容序列,将这一批内容序列对应的内容缓存在服务器中;
S5,获知每个内容是否缓存在边缘服务器集群中的结果。
2.根据权利要求1所述的一种基于内容流行度的边缘缓存方法,其特征在于,所述步骤S1中构建端边云系统模型,获取历史流行度的方法具体包括:大多数内容存储在云端,边缘服务器集群选取部分内容存储,终端用户发起请求,因此划分云端,边缘与终端三种环境,云端服务器是距离用户终端较远的设备,每个边缘服务器集群中都服务一些终端设备,终端设备会在不同时间段对某些内容发起请求,边缘服务器通过收集请求内容的历史数据,得到不同时间段的内容流行度,从而得到边缘服务器集群下所有内容的历史流行度集合,用于后面的流行度预测。
3.根据权利要求1所述的一种基于内容流行度的边缘缓存方法,其特征在于,所述步骤S2,对不同长度的历史数据进行分类,分类后使用改进的指数平滑预测算法和动态优化长短期记忆算法预测流行度预测未来时刻的流行度,具体包括:设定lp为内容集合的长度,设定长度界限LB;
(1)若lp
(2)若lp≥LB,则使用动态优化长短期记忆算法预测流行度。
4.根据权利要求3所述的一种基于内容流行度的边缘缓存方法,其特征在于,所述步骤(1)中,采用了改进的指数平滑预测算法进行预测。传统的指数平滑预测方法中,权重因子α决定了预测最终数值的大小,α较大时,越接近当前时间段的流行度对预测结果的影响更大,反之当α取值较小时,越久远的内容流行度影响更大,其公式如下所示。
表示使用指数平滑预测算法预测得到tn时刻的内容流行度,其中 代表的是上一时刻的内容流行度,需要根据上一时刻的流行度进行后续操作,tn代表的是当前时间段,ts代表的是起始时间段,α是一个变量因子,固定不变,取值范围为[0,1],是为了确定前面时间段流行度对未来时间段的影响程度。由于传统方法中的权重因子α是静态的,使得平滑预测难以符合时间序列自身的变化,因此本发明使用权重因子动态改变的指数平滑预测方法,其公式如下。
表示使用改进的指数平滑预测算法预测得到tn时刻的内容流行度,相比于传统的方法,改进后的方法中,权重因子α的值将会随着tn的变化而动态改变,不再是一个固定的值,随时间而动态修正,使得预测的准确性更接近真实值。
5.根据权利要求3所述的一种基于内容流行度的边缘缓存方法,其特征在于,所述步骤(2)中,使用动态优化长短期记忆算法预测流行度具体包括:对于历史数据较长的内容,即旧内容,采用动态优化的LSTM进行预测,将时间窗口大小,dense层数,LSTM网络层数和神经元个数作为寻优的对象。设置m个时间窗口待选值,k个dense层数待选值,n个lstm层数待选值和u个神经元数待选值,选择训练次数到达极限后得到的LSTM模型验证数据的平均百分比误差MAPE来衡量参数的优劣;其中MAPE的定义如下:y′n是模型预测得到的值,yn是样本的真实值,N是样本数,设M(m,k,n,u)表示当前参数构建的LSTM模型预测后得到的平均百分比误差,通过不断的迭代训练,选出在测试集中M(m,k,n,u)表现效果最好的一组参数,然后确定旧内容预测所用的模型;同时,其中得到的最优m个时间窗口值就是划分新旧内容的标准LB。
6.根据权利要求4所述的一种基于内容流行度的边缘缓存方法,其特征在于,所述S3,将步骤S2中预测得到的流行度视为流行度增益,由于获取内容的时延与内容自身的大小有关系,假若内容缓存在边缘服务器集群中,相比于从云端获取所减少的时延视为时延开销增益,计算得到每个内容的价值总收益;具体公式如式所示;
Gi=A*ΔLi+B*Pi
其中A和B是两个变量因子A+B=1,用于控制两种收益在总价值收益中的占比;ΔLi代表的是获取内容的时延增益,Pi代表的是内容的流行度增益,Gi代表的是内容的总价值收益。
7.根据权利要求6所述的一种基于内容流行度的边缘缓存方法,其特征在于,所述步骤S4中,将缓存放置问题转化为了效益价值最大化问题,原问题会对每个内容做出决策,0代表不选择,1代表选择,这是一个0‑1变量,则其是一个约束的0‑1规划问题,既是NP难问题;
通过考虑缓存能给服务器集群带来最大利益的内容,将问题转为利益最大化问题,问题转化为下式;
既从集合中选取使得总增益最大的内容进行缓存即可。