一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种适用于云端存储的缓存优化方法与流程

2022-06-22 19:56:31 来源:中国专利 TAG:


1.本发明涉及云端数据缓存优化的技术领域,尤其涉及一种适用于云端存储的缓存优化方法。


背景技术:

2.云存储包括云存储服务和云端存储系统,云存储服务是指少数几家大型公司作为服务提供商提供的部署在整个因特网环境中的数据服务,可以使用一定的接口对云存储服务进行相应的数据访问,存放在云存储服务中的数据称为云存储数据;云端存储系统是指在客户端进行安装部署的存储系统,一般包括可动态加载的内核模块,用于捕获文件系统命令,与云存储服务接口进行交互以提供云存储数据的网络通信模块和用于对捕获到的命令进行处理的执行模块,执行模块通过网络通信模块与云存储服务进行交互,不同的云端存储系统差异体现在执行模块中。
3.云端存储系统负责将数据块文件存放到云存储服务中、获取云存储服务中的数据块文件、按照捕获的文件系统命令修改数据块文件中的数据以及管理数据块文件。
4.随着信息技术的快速发展,社会信息化程度越来越高,个人拥有的数字化信息也呈爆炸性趋势增长,在这样的背景下,存储设备成了人们日常生活中必不可少的工具,但是各种繁杂的存储设备同时也带来了很多问题,例如,个人用户多个存储设备之间如何保证数据的一致性,如何保证所有存储设备中存放的数据的安全可靠、如何解决存储设备空间有限、如何降低数据库成本、如何减少后端负载、如何提升数据访问速度、如何提高读取吞吐量,都成为了目前急需研究的热点问题。


技术实现要素:

5.本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本技术的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
6.鉴于上述现有存在的问题,提出了本发明。
7.为解决上述技术问题,本发明提供如下技术方案:包括,将云端缓存相关样本数据集导入改进的优化框架中进行参数训练,计算最小化的目标损失函数;将所述最小化的目标损失函数的参数导入优化模型中,基于费马定理进行极值求解,得到最优点极值;以所述最优点极值作为参考指标,导入运行系统进行缓存操作。
8.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:所述云端缓存相关样本数据集包括,基于佛洛依德算法对采集的云端缓存数据进行预处理;设定任务指标为云端缓存的正相关参数;
利用所述佛洛依德算法计算出所述云端缓存数据中与所述正相关参数所有的最短路径所在的节点;将所述节点对应的数据转化为数值型参数,构成所述云端缓存相关样本数据集。
9.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:所述改进的优化框架包括,待优化参数、目标函数、初始学习率、迭代次数和优化梯度。
10.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:计算所述最小化的目标损失函数包括,其中,n为训练的云端缓存相关样本数据集数,l是对单个样本数据的损失函数,w是要求解的模型参数,即映射函数的参数, 是样本数据的特征向量, 是样本数据的标签值, 相关性权重系数。
11.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:所述极值求解包括,将所述最小化的目标损失函数的参数导入所述优化模型中,判断输出的函数是否导数为0;若导数为0,则是可导函数,其在极值点处的导数f(x)=0,f(x)为可导函数的导数。
12.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:若不是,则为多元函数,其梯度为0,即 。
13.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:导数为0的点为驻点,对所述可导函数进行极值判断包括,定义x为所述驻点;若f(x)>0,则在该点处去极小值;若f(x)<0,则在该点处去极大值;若f(x)=0,则计算高阶导数。
14.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:对所述多元函数进行极值判断包括,定义x是所述驻点;若hessian矩阵正定,函数在该点有极小值;若hessian矩阵负定,函数在该点有极大值;若hessian矩阵不定,则不是极值点。
15.作为本发明所述的适用于云端存储的缓存优化方法的一种优选方案,其中:所述极值即为所述最优点极值。
16.本发明的有益效果:本发明通过对缓存数据的框架优化、求解,获得极值,以此作为优化参考指标进行缓存工作,提高缓存吞吐量和数据访问速度,保障数据的一致性,降低云端存储环境的运行压力。
附图说明
17.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:图1为本发明一个实施例所述的适用于云端存储的缓存优化方法的流程示意图;图2为本发明一个实施例所述的适用于云端存储的缓存优化方法的佛洛依德算法中矩阵初始化示意图;图3为本发明一个实施例所述的适用于云端存储的缓存优化方法的矩阵优化示意图;图4为本发明一个实施例所述的适用于云端存储的缓存优化方法的矩阵优化求解示意图;图5为本发明一个实施例所述的适用于云端存储的缓存优化方法的改进的优化框架示意图;图6为本发明一个实施例所述的适用于云端存储的缓存优化方法的费马定理求解函数曲线示意图;图7为本发明一个实施例所述的适用于云端存储的缓存优化方法的云端数据访问速度测试对比曲线示意图。
具体实施方式
18.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
19.在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
20.其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
21.本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
22.同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
23.本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例
如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
24.实施例1目前,在云端缓存的使用过程中,经常会出现以下问题:一、请求数据中不存在的数据,导致每次都无法从缓存中命中,继而访问到数据库,导致缓存穿透;二、缓存失效的同时大量相同请求穿过缓存访问到数据,导致缓存击穿;三、大量缓存同时失效,导致大量请求穿过缓存访问到数据库,导致缓存雪崩;因此,如何提供一种针对于云端缓存的优化方案是当前研究的难点。
25.参照图1~图6,为本发明的第一个实施例,该实施例提供了一种适用于云端存储的缓存优化方法,具体包括:s1:将云端缓存相关样本数据集导入改进的优化框架中进行参数训练,计算最小化的目标损失函数。其中需要说明的是,云端缓存相关样本数据集包括:基于佛洛依德算法对采集的云端缓存数据进行预处理;设定任务指标为云端缓存的正相关参数;利用佛洛依德算法计算出云端缓存数据中与正相关参数所有的最短路径所在的节点;将节点对应的数据转化为数值型参数,构成云端缓存相关样本数据集。
26.进一步的,改进的优化框架包括:设置待优化参数w、目标函数f(x)、初始学习率、优化梯度m和训练时间t;开始迭代训练;计算目标函数关于当前参数的梯度: 根据历史梯度计算一阶动量和二阶动量:, 计算当前时刻下的下降梯度: 根据下降梯度进行更新: 具体的,计算最小化的目标损失函数包括:其中,n为训练的云端缓存相关样本数据集数,l是对单个样本数据的损失函数,w是要求解的模型参数,即映射函数的参数, 是样本数据的特征向量, 是样本数据的标签值, 相关性权重系数。
27.参照图5,虚线框内的运行路线即为优化训练路线,本实施例通过改进的优化框架对经过特殊处理的样本数据集进行优化训练,由此获得后期寻优所需的模型参数,在保障数据精准度的同时,也对数据稳定性提供可靠保障,以此初步提高极值最优点的计算精准度。
28.s2:将最小化的目标损失函数的参数导入优化模型中,基于费马定理进行极值求解,得到最优点极值。本步骤需要说明的是,极值求解包括:将最小化的目标损失函数的参数导入优化模型中,判断输出的函数是否导数为0;若导数为0,则是可导函数,其在极值点处的导数f(x)=0,f(x)为可导函数的导数;若不是,则为多元函数,其梯度为0,即 。
29.导数为0的点为驻点,对可导函数进行极值判断包括:定义x为驻点;若f(x)>0,则在该点处去极小值;若f(x)<0,则在该点处去极大值;若f(x)=0,则计算高阶导数。
30.对多元函数进行极值判断包括:定义x是驻点;若hessian矩阵正定,函数在该点有极小值;若hessian矩阵负定,函数在该点有极大值;若hessian矩阵不定,则不是极值点。
31.进一步的,在导数为0点处,函数可能不取极值,称为鞍点,除鞍点外,在计算过程中还会遇到另外一个问题,局部极值问题,即一个驻点是极值点,但不是全局极值,因此本实施例通过s1步骤中的特殊处理手段对参数进行限定,有效的避免这两种问题。
32.通俗的说,本实施例以找驻点作为找极值点的目标,对于可导函数(即一元函数),先求导数,解导数为0的方程即可找到所有驻点;对于多元函数,对各个自变量求偏导数,令其为0,解方程组,即可达到所有驻点。
33.s3:以最优点极值作为参考指标,导入运行系统进行缓存操作。
34.优选的,本实施例还需要再次详细说明的是:当未完成任务指标时,本实施例所提供的数据处理方法则存在以下矩阵计算过程:若从一顶点到另一顶点存在着一条路径,则称该路径长度为该路径上所经过的边的数目,它等于该路径上的顶点数减1。
35.由于从一顶点到另一顶点可能存在着多条路径,每条路径上所经过的边数可能不同,即路径长度不同,把路径长度最短(即经过的边数最少)的那条路径叫做最短路径,其路径长度叫做最短路径长度或最短距离。
36.当完成任务指标时,本实施例所提供的数据处理方法则存在以下矩阵计算过程:考虑路径上各边上的权值,则通常把一条路径上所经边的权值之和定义为该路径的路径长度或称带权路径长度。
37.从源点到终点可能不止一条路径,把带权路径长度最短的那条路径称为最短路径,其路径长度(权值之和)称为最短路径长度或者最短距离。
38.任意节点i到j的最短路径两种可能:(1)直接从i到j;(2)从i经过若干个节点k到j。
39.具体的,map(i,j)表示节点i到j最短路径的距离,对于每一个节点k,检查map(i,
k) map(k,j)小于map(i,j),如果成立,map(i,j) = map(i,k) map(k,j);遍历每个k,每次更新的是除第k行和第k列的数。
40.初始化map矩阵:矩阵中map[i][j]的距离为顶点i到顶点j的权值;如果i和j不相邻,则map[i][j]=∞;如果i==j,则map[i][j]=0。以顶点a(假设是第1个顶点)为中介点,若a[i][j] 》 a[i][1] a[1][j],则设置a[i][j]=a[i][1] a[1][j]。
[0041]
通俗的说,弗洛伊德算法是解决给定的加权图中顶点间的最短路径的一种算法,可以正确处理有向图或负权的最短路径问题,同时也被用于计算有向图的传递闭包,其运行一次算法即可求得任意两点间最短路,其同时也是一种动态规划算法,稠密图效果最佳,边权可正可负,此算法简单有效,由于三重循环结构紧凑,对于稠密图,效率要高于执行|v|次dijkstra算法。
[0042]
部分运行代码示意如下:优选的是,本发明提供的方法可以取代大量数据库实例,从而降低总成本;其通过读取负载的重要部分从后端数据库中,定向到内存层,缓存可以降低数据库上的一个负载,防止其在负载情况下性能下降,甚至可以防止在高峰期的时候雪崩;相比于同等的基于磁盘的数据库,除了更低的延迟外,内存系统还提供了更高的请求率,用作分布式这种类似的缓存的话,单个实例可以处理十万个请求,例如rides。
[0043]
再进一步的是,在许多应用程序中,可能只有很少一部分的数据会被经常访问,会在数据库中产生热点,并可能根据最常用的数据的吞吐,要求过多地预支数据库中的资源,通过在内存缓存中缓存常用的数据,就不需要为最常访问的数据过度去预置,并能够提供快速的可预测性。
[0044]
实施例2
参照图7,为本发明的第二个实施例,该实施例不同于第一个实施例的是,提供了一种适用于云端存储的缓存优化方法的实验对比,具体包括:为了更好地对本发明方法中采用的技术效果加以验证说明,本实施例选择以传统的文件存储优化方法与本发明方法进行对比测试,以科学论证的手段对比试验结果,验证本发明方法所具有的真实效果。
[0045]
传统的文件存储优化方法无法提高数据访问速度和读取吞吐量,当数据输入过多时,无法满足存储的稳定性需求,为验证本发明方法相对传统的文件存储优化方法具有较高的数据访问速度、读取吞吐量、稳定性和精准度,本实施例中将采用传统的文件存储优化方法与本发明方法分别对仿真平台的数据存储优化进行实时测量对比。
[0046]
测试环境:(1)将平均精度值(map)作为算法的评价指标,选择matlab作为仿真测试平台;平均精度值(map)是整个数据集精准率的平均值:(2)分别对本发明方法和传统方法进行程序编码,将其运行的算法以代码形式导入仿真平台模拟运行;(3)使用matlab优化工具箱辅助测试。
[0047]
参照图7,能够直观的看出,本发明方法所在曲线稳定的处于传统方法所在曲线的上方,表示本发明方法所运行的收敛速度快于传统方法,且提高了map值。
[0048]
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
[0049]
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
[0050]
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不
同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
[0051]
如在本技术所使用的,术语“组件”、“模块”、“系统”等等旨在指代计算机相关实体,该计算机相关实体可以是硬件、固件、硬件和软件的结合、软件或者运行中的软件。例如,组件可以是,但不限于是:在处理器上运行的处理、处理器、对象、可执行文件、执行中的线程、程序和/或计算机。作为示例,在计算设备上运行的应用和该计算设备都可以是组件。一个或多个组件可以存在于执行中的过程和/或线程中,并且组件可以位于一个计算机中以及/或者分布在两个或更多个计算机之间。此外,这些组件能够从在其上具有各种数据结构的各种计算机可读介质中执行。这些组件可以通过诸如根据具有一个或多个数据分组(例如,来自一个组件的数据,该组件与本地系统、分布式系统中的另一个组件进行交互和/或以信号的方式通过诸如互联网之类的网络与其它系统进行交互)的信号,以本地和/或远程过程的方式进行通信。
[0052]
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献