本发明涉及数据存储技术领域,具体涉及一种数据存储策略的生成方法、装置及系统。
背景技术:
随着科技的发展,人们需要存储的数据越来越多,但是容量是有限的,数据冷热分层存储策略应运而生,分层存储策略用于昂贵高速存储和廉价低速存储间数据分布的协调,宗旨是提高整体系统性能,减少总体存储成本。现有的数据存储技术中,主要有以下几类,在提出文件分层存储的概念之后;可以人工设定数据访问量的外部阈值区间,阈值外的数据放入自动分层判别系统;或者是将高访问量数据从低带宽机器迁入高带宽机器。也可以是人工设定数据访问量的外部阈值区间,阈值外的数据局部放入相邻存储层。还可以是根据存储介质覆盖频率判断数据热度。
现有的冷热分层存储策略可分为两类,一类是使用信息生命周期管理判定数据价值,类似于fifo思路;一类是根据数据被访问的时间分布特性制定人工策略。以上的策略都是基于人工设计的智能,策略本身无法自行优化,虽然可以覆盖大多数的用户使用需求,但是当用户切换工作内容时容易出现热存储没有数据需要从冷存储加载的问题。例如当前策略下游戏用户玩完一款游戏后运行下一款游戏时仍需要从硬盘加载而不是提前在内存中加载好,使得存储数据的调用时间较长,进而导致用户等待数据加载的时间较长,影响用户体验。
技术实现要素:
因此,本发明要解决的技术问题在于克服现有技术中的当用户切换工作内容时,存在的存储数据调用时间较长的缺陷,从而提供一种数据存储的调度策略的生成方法及装置。
根据第一方面,本发明实施例公开了一种数据存储的调度策略的生成方法,包括:获取待操作数据,并提取所述待操作数据的结构化信息;获取当前已存储数据的存储分布摘要及调用记录;根据所述待操作数据的结构化信息、所述存储分布摘要以及所述调用记录,生成数据存储的调度策略。
结合第一方面,在第一方面第一实施方式中,所述结构化信息包括通用结构化信息以及独立结构化信息;所述提取所述待操作数据的结构化信息,包括:根据所述待操作数据,在预设的文件属性信息库中,匹配相应的所述通用结构化信息;根据所述待操作数据,通过预设第一算法获取所述独立结构化信息。
结合第一方面,在第一方面第二实施方式中,该方法还包括:根据生成的所述数据存储的调度策略,更新当前数据存储的调度策略。
结合第一方面,在第一方面第三实施方式中,该方法还包括:根据生成的所述数据存储的调度策略,确定所述待操作数据的存储介质按冷热分层后的层级;根据所述层级,调整所述待操作数据在存储介质中的分布。
结合第一方面第三实施方式,在第一方面第四实施方式中,该方法包括:根据调整后的待操作数据在存储介质中的分布,更新所述当前已存储数据的存储分布摘要。
结合第一方面第四实施方式,在第一方面第五实施方式中,所述根据调整后的待操作数据在存储介质中的分布,更新所述当前已存储数据的存储分布摘要,具体包括:根据所述当前已存储数据的存储分布摘要,确定多个已存储数据的第一描述符;根据所述调整后的待操作数据在存储介质中的分布,确定待操作数据的第二描述符;根据多个已存储数据的第一描述符,分别确定所述多个已存储数据的历史调用次数;根据多个已存储数据的第一描述符与所述第二描述符,分别确定所述多个已存储数据与待操作数据的海明距离;当所述海明距离小于预设距离且所述历史调用次数最高时,确定链接所述待操作数据的已存储数据,更新所述当前已存储数据的存储分布摘要。
根据第二方面,本发明实施例公开了一种数据存储的调度策略的生成装置,包括:提取模块,用于获取待操作数据,并提取所述待操作数据的结构化信息;获取模块,用于获取当前已存储数据的存储分布摘要及调用记录;生成模块,用于根据所述待操作数据的结构化信息、所述存储分布摘要以及所述调用记录,生成数据存储的调度策略。
根据第三方面,本发明实施例公开了一种数据存储的调度策略的生成系统,包括:至少一个控制设备,所述控制设备用于执行如第一方面或第一方面任一实施方式中所述的数据存储的调度策略的生成方法的步骤,根据已存储数据以及待操作数据确定数据存储的调度策略。
根据第四方面,本发明实施例公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述控制设备用于执行如第一方面或第一方面任一实施方式中所述的数据存储的调度策略的生成方法的步骤。
本发明技术方案,具有如下优点:
1.本发明提供的一种数据存储的调度策略的生成方法及装置,其中,该方法包括:数据存储的调度策略,也就是冷热分层存储策略由第一预设算法学习生成,通过训练模型来生成策略。通过输入用户目标时间段内的历史存储存取序列和当前文件存储分布,生成的策略是将某些文件移动到某些位置。具体地,获取待操作数据,并提取待操作数据的结构化信息;获取当前已存储数据的存储分布摘要及调用记录;根据待操作数据的结构化信息、存储分布摘要以及调用记录,生成数据存储的调度策略。通过实施本发明,解决了相关技术中无法自动优化数据调度策略,导致的用户调用数据的时间过长的问题,可以针对用户使用习惯个性化存储,进而减少了存储调度时间,在用户实际操作时,依据用户的真实操作历史,训练策略生成网络,优化了用户连续调度文件的耗时,策略的生成通过用户的操作历史来学习,可以更好的适应用户偏好。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中一种数据存储的调度策略的生成方法的一个具体示例的流程框图;
图2为本发明实施例1中一种数据存储的调度策略的生成方法中提取结构化信息的流程框图;
图3为本发明实施例1中一种数据存储的调度策略的生成方法中更新存储策略的流程框图;
图4为本发明实施例1中一种数据存储的调度策略的生成方法中调整数据分布的流程框图;
图5为本发明实施例1中一种数据存储的调度策略的生成方法中更新存储介质摘要的流程框图;
图6为本发明实施例1中一种数据存储的调度策略的生成方法中存储文件的示意图;
图7为本发明实施例1中一种数据存储的调度策略的生成方法中更新存储介质摘要的一个具体示例的流程框图;
图8为本发明实施例2中一种数据存储的调度策略的生成装置的一个具体示例的流程框图;
图9为本发明实施例3中一种数据存储的调度策略的生成系统中控制设备的结构框图;
图10为本发明实施例3中一种数据存储的调度策略的生成系统中控制器的结构框图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
本发明实施例提供一种数据存储的调度策略的生成方法,应用于用户在浏览网页、切换使用软件等需要数据的再调用以及存储的具体应用场景中,如图1所示,包括:
步骤s11:获取待操作数据,并提取待操作数据的结构化信息;在本实施例中,待操作数据可以是待存储数据或者待调用数据,具体地,待存储数据可以是来自于非冷热分层存储且需要保存于冷存储或热存储中的数据;待调用数据例如可以是用户在进行一系列的操作中,当用户从当前软件切换到下一软件时,需使用的数据。
示例性的,获取待操作数据的过程可以是接收到用户的指令后去存储介质中获取数据,也可以是直接接收用户发送的数据;在输入数据时,提取待操作数据中的结构化信息,具体地,结构化信息包括通用结构化信息以及独立结构化信息;通用结构化信息可以是存储数据的文件的创建时间、修改时间、大小、格式等;结构化信息还包括不同格式的独立结构化信息,例如,当存储数据文件为音频信息,独立结构化信息可以是帧率信息、音色信息、响度信息等。
示例性的,提取到的结构化信息可以作为存储数据文件的描述符,并且可以作为存储数据文件的一部分,与存储数据文件共同存放。
步骤s12:获取当前已存储数据的存储分布摘要及调用记录;在本实施例中,当前已存储数据的存储分布摘要实际上是,在当前的存储系统中,已经被存储完成的数据的分布情况;调用记录可以是当前待操作数据在目标时间段内,被用户使用过的次数,一定程度上反映了当前待操作数据的热度。
步骤s13:根据待操作数据的结构化信息、存储分布摘要以及调用记录,生成数据存储的调度策略。在本实施例中,根据获取到的待操作数据点额多种结构化信息、当前已存储数据的存储分布摘要以及目标时间段内的历史调用次数,得到数据存储的调度策略,具体的,可以是输入待操作的数据以及存储系统的摘要,上述存储系统可以是包括多级分层的存储系统,通过冷热存储调度策略算法,输出的是待操作数据应存入的按冷热分层后的层级。
示例性的,数据存储的调度策略由冷热存储调度策略算法学习生成,具体地,我们可以将问题放在强化学习模型里建立模型,通过模型训练来生成冷热分层存储策略。具体地,策略生成模型的输入状态是目标时间段内的用户的历史存储存取序列,以及存储系统中当前已存储数据的分布,输出的数据存储的调度策略可以是将待操作数据移动至某些位置、某个层级,实际上,热存储可以是磁盘存储;冷存储可以是光盘存储。
本发明提供的一种数据存储的调度策略的生成方法,具体步骤包括:数据存储的调度策略,也就是冷热分层存储策略由第一预设算法学习生成,通过训练模型来生成策略。通过输入用户目标时间段内的历史存储存取序列和当前文件存储分布,生成的策略是将某些文件移动到某些位置。具体地,获取待操作数据,并提取待操作数据的结构化信息;获取当前已存储数据的存储分布摘要及调用记录;根据待操作数据的结构化信息、存储分布摘要以及调用记录,生成数据存储的调度策略。通过实施本发明,解决了相关技术中无法自动优化数据调度策略,导致的用户等待数据加载的时间过长的问题,可以针对用户使用习惯个性化存储,进而减少了存储调度时间,在用户实际操作时,依据用户的真实操作历史,训练策略生成网络,优化了在用户进行连续操作时,系统调度存储数据的耗时,策略的生成通过用户的操作历史来学习,可以更好的适应用户偏好。
在一具体实施例中,上述步骤s11,提取待操作数据的结构化信息,结构化信息包括通用结构化信息以及独立结构化信息,在执行的过程中,如图2所示,可具体包括如下步骤:
步骤s111:根据待操作数据,在预设的文件属性信息库中,匹配相应的通用结构化信息;在本实施例中,当提取通用结构化信息时,也就是提取存储数据文件属性信息时,存储系统会自动识别提取。
步骤s112:根据待操作数据,通过预设第一算法获取独立结构化信息。在本实施例中,当提取独立结构化信息时,例如,存储数据是音频信息时,可以通过预设的第一算法,也就是流媒体算法,提取存储数据文件中的帧率信息、音色信息、响度信息等;也可以通过神经网络等预设模型来提取信息。
本发明提供的一种数据存储的调度策略的生成方法,提取存储数据中的结构化信息时,具体包括:在预设的文件属性信息库中,匹配相应的通用结构化信息以及通过预设第一算法获取独立结构化信息,通过实施本步骤,可以有效且准确的提取到存储数据文件中的结构化信息,提高了存储数据的效率的,也优化了用户连续调度存储文件的耗时。
在一具体实施例中,如图3所示,该方法还包括:
步骤s14:根据生成的数据存储的调度策略,更新当前数据存储的调度策略。
示例性的,数据存储的调度策略可以通过数据存储策略生成模型生成,具体地,数据存储策略生成模型可以是强化学习模型,模型的输入可以是用户在目标时间段内的历史数据,例如,存储数据文件序列以及调取存储数据文件序列;以及当前存储系统中已存储数据的分布;通过预设的算法,上述模型可以生成数据存储的调度策略,更新当前数据的存储策略,具体地,数据存储策略在一开始进行学习时,可以是随机存放或者是先入先出队列存放,在模型训练中生成的数据存储策略不断更新;实际上,模型学习以及训练的基础可以是目标时间段内的用户存文件以及读文件的历史序列,具体地,用模拟用户操作,也就是待操作数据,算出的耗时,根据调用数据的耗时,生成数据存储策略生成模型的奖励信号,上述奖励信号可以指导数据存储策略生成模型进行更新,例如,奖励信号可以是负奖励,当耗时越长,数字越大时,奖励越少,可以减少用户读取文件时的耗时。
在一具体实施例中,如图4所示,该方法还包括:
步骤s151:根据生成的数据存储的调度策略,确定待操作数据的存储介质按冷热分层后的层级;
步骤s152:根据层级,调整待操作数据在存储介质中的分布。在本实施例中,可以是将待调度数据从热存储中存入冷存储中,也可以把待调度数据从冷存储中存入热存储中,可以使得在存储系统中存储的数据更贴合用户的使用习惯。
示例性的,如图5所示,该方法还包括:
步骤s153:根据调整后的待操作数据在存储介质中的分布,更新当前已存储数据的存储分布摘要。在本实施例中,存储系统会动态维护多级存储系统摘要,也就是说,会根据调整后的存储数据文件的分布,相应的更新存储分布摘要。具体地,如图6所示,存储分布摘要的形式可以是以文件描述符构成的关系图,节点可以表示存储数据文件,存储数据文件的属性可以包括温度、文件名称、文件类型,关系图中的边可以是由文件描述符生成的文件关系,为无向边。文件描述符实际上就是待操作数据的结构化信息。
在一具体实施例中,上述步骤s153,根据调整后的待操作数据在存储介质中的分布,更新当前已存储数据的存储分布摘要,在执行的过程中,如图7所示,可具体包括如下步骤:
步骤s1531:根据当前已存储数据的存储分布摘要,确定多个已存储数据的第一描述符;
步骤s1532:根据调整后的待操作数据在存储介质中的分布,确定待操作数据的第二描述符;
步骤s1533:根据多个已存储数据的第一描述符,分别确定多个已存储数据的历史调用次数;
步骤s1534:根据多个已存储数据的第一描述符与第二描述符,分别确定多个已存储数据与待操作数据的海明距离;
步骤s1535:当海明距离小于预设距离且历史调用次数最高时,确定链接待操作数据的已存储数据,更新当前已存储数据的存储分布摘要。
本发明提供的一种数据存储的调度策略的生成方法,根据调整后的待操作数据在存储介质中的分布,更新当前已存储数据的存储分布摘要,具体包括:在待操作数据已完成存储或调用后,计算当前操作完成的存储数据文件的描述符和已存储数据文件的描述符的关系,从而确定链接输入文件节点的边。具体地,为了确定建立边的规则,可以以文件描述符中独立结构化信息在图谱中的海明距离大小作为是否建立边的第一重标准,以文件历史调用次数多少作为是否建立边的第二重标准。优先与历史调用次数多且海明距离近的点建立边。也可以根据人为设定的规则限定无向边连接时的度数上限。通过实施本发明,可以及时更新存储系统中存储数据文件的位置信息,方便用户在下次使用时快速调用数据,也就是说,可以在线更新完成后,实时根据用户操作基于新的策略生成文件位置迁移动作更新存储摘要。
示例性的,在目标时间段内,用户在访存储系统时,存储系统持续记录用户存储数据与调用数据的序列;冷热存储调度策略由强化学习模型生成,定期进行在线更新。更新策略时,根据历史存储操作序列和存储摘要,生成将某个文件存放在某个存储分层的策略,即冷热存储调度策略;也可以根据用户访问文件的序列分片,冷热存储调度策略算法基于当前的存储系统的存储情况计算执行每个序列分片的时间,得到调用数据的消耗时间。回报函数,也可以是反馈函数与消耗时间成反比,以此激励冷热存储调度策略算法进行优化,生成耗时较少的数据存储策略,优化过程可以是优化函数使用多函数结合,训练初期可以使用adam算法,末期可以使用sgd优化算法。
实施例2
本发明实施例提供一种数据存储的调度策略的生成装置,如图8所示,包括:
提取模块,用于获取待操作数据,并提取待操作数据的结构化信息;详细实施内容可参见上述方法实施例中步骤s11的相关描述。
获取模块,用于获取当前已存储数据的存储分布摘要及调用记录;详细实施内容可参见上述方法实施例中步骤s12的相关描述。
生成模块,用于根据待操作数据的结构化信息、存储分布摘要以及调用记录,生成数据存储的调度策略,详细实施内容可参见上述方法实施例中步骤s13的相关描述。
本发明提供的一种数据存储的调度策略的生成装置,其中,该装置包括:数据存储的调度策略,也就是冷热分层存储策略由第一预设算法学习生成,通过训练模型来生成策略。通过输入用户目标时间段内的历史存储存取序列和当前文件存储分布,生成的策略是将某些文件移动到某些位置。具体地,通过提取模块,获取待操作数据,并提取待操作数据的结构化信息;通过获取模块,获取当前已存储数据的存储分布摘要及调用记录;通过生成模块,根据待操作数据的结构化信息、存储分布摘要以及调用记录,生成数据存储的调度策略。通过实施本发明,解决了相关技术中无法自动优化数据调度策略,导致的用户等待存储数据加载的时间过长的问题,可以针对用户使用习惯个性化存储,进而减少了数据调度时间,在用户实际操作的同时,依据用户的真实操作历史,训练策略生成网络,优化了用户连续操作时,系统调度数据的耗时,通过存储数据策略的自学习自迭代过程,策略的生成通过用户的操作历史来学习,可以更好的适应用户偏好,提高了特定场景下文件的调度效率。
实施例3
本发明实施例提供一种数据存储的调度策略的生成系统,其中包括至少一个控制设备81,控制设备81用于执行如上述实施例中任一项的所述的数据存储的调度策略的生成方法的步骤。
如图9所示,控制设备81,包括:
第一通讯模块811:用于传输数据,接收和传输根据待操作数据、当前已存储数据的分布摘要以及当前数据的历史调用次数信息。该第一通讯模块可以是蓝牙模块,wi-fi模块,通过设定的无线通讯协议,继而通信。
第一控制器812:与第一通讯模块811连接,如图10所示,包括:至少一个处理器91;以及与至少一个处理器91通信连接的存储器92;其中,存储器92存储有可被至少一个处理器91执行的指令,当接收到数据信息时,以使至少一个处理器91执行图1所示的数据存储的调度策略的生成方法,图10中以一个处理器为例,处理器91,存储器92通过总线90连接,在本实施例中,第一通讯模块可以为无线通讯模块,例如,蓝牙模块,wi-fi模块等,也可以为有线通讯模块。第一控制器812与第一通讯模块811之间的传输是无线传输。
存储器92作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的数据存储的调度策略的生成方法对应的程序指令/模块。处理器91通过运行存储在存储器92中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的数据存储的调度策略的生成方法。
存储器92可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据服务器操作的处理装置的使用所创建的数据等。此外,存储器92可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器92可选包括相对于处理器91远程设置的存储器,这些远程存储器可以通过网络连接至网络连接装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器92中,当被一个或者多个处理器91执行时,执行上述实施例任意一项描述的方法。
实施例4
本发明实施例还提供了一种非暂态计算机可读介质,非暂态计算机可读存储介质存储计算机指令,计算机指令用于使计算机执行如上述实施例中任意一项描述的数据存储的调度策略的生成方法,其中,存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flashmemory)、硬盘(harddiskdrive,缩写:hdd)或固态硬盘(solid-statedrive,ssd)等;存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。