本发明属于信息存储,尤其是一种时序数据的空间存储优化方法及系统。
背景技术:
1、目前,列存储是大多数开源或商业时间序列数据库中的存储标准,时间序列的时间列用作识别其他值列的键,即单列存储方案。当多个时间序列共享相似的时间戳集时,很可能在多个传感器模块中,将它们自然的分组在一起,即一个时间列在单组存储方案中标识多个值列。虽然多个值列共享相同的时间列减少了重复时间戳的空间成本,但它可能引入额外的空间成本来记录空值。原因是时间序列可能在每个时间戳上不完全对齐,由于缺失值、不同的数据采集频率、未同步的时钟等。因此,列组存储方案是将列划分为多个组,在其中列共享相同的时间列。不幸的是,寻找最小空间成本的最佳列组是非常具有挑战性的,要找到能够最小化时序数据库存储空间成本的最佳列组。
2、在实际应用中,通常有数十或数百个传感器进行时序数据的输入,对于现有的启发式算法难以处理这种复杂、高维度和动态变化的问题;另一方面,基于启发式算法的解决方案在面对大量数据的问题时,容易陷入局部最优解;并且手动进行参数调整来获得最佳性能,需要大量的实验,对人力造成了极大的挑战。
技术实现思路
1、针对上述问题,本发明提出一种时序数据的空间存储方法及系统,该方法采用基于深度强化学习的方法与环境交互更容易学习到全局最优的空间存储策略,并且具有较强的自适应能力,不需要过多的依赖人力,从而提升了处理复杂、高维度的时序数据的能力。
2、为达到上述发明目的,本发明的技术方案包括以下内容。
3、一种时序数据的空间存储优化方法,所述方法包括:
4、获取包含n个时间序列si的时间序列集合s,所述时间序列si包括:用于存储时间戳的时间列和用于存储数据值的数据列;
5、将时间序列si陆续存储至数据库存储空间的问题抽象成马尔可夫决策过程;
6、基于所述马尔可夫决策过程的全局最优解确定所述时间序列集合s的存储方式。
7、进一步地,所述马尔可夫决策模型的状态空间包括:存储时间戳的空间成本α、构建位图的空间成本β、存储所有数据列的空间成本vs和时间序列集合s的长度,所述马尔可夫决策模型的动作空间包括:构建位图的离散动作空间和构建时间戳数量的离散空间,所述马尔可夫决策模型的奖励函数通过对所述时间序列集合s采用单列存储或单组存储所使用的空间成本构建。
8、进一步地,其特征在于,所述马尔可夫决策模型的奖励函数r=ω0*costc(s)+ω1*costg(g);其中,ω0表示第一权重,ω1表示第二权重,采用单列存储所使用的空间成本表示时间序列si的长度,采用单组存储所使用的空间成本costg(g)=(α+n*β)ms+vs,g是对时间序列s进行单组存储的表示。
9、进一步地,所述基于所述马尔可夫决策过程的全局最优解确定所述时间序列集合s的存储方式,包括:
10、初始化状态空间,得到存储时间序列s的状态
11、基于所述状态来获取初始的动作a0、初始的奖励r0和下一时刻的状态将生成的观测空间存入经验池;
12、从经验池中获取观测空间并将观测空间ot传入演员网络,得到t时刻的动作概率qt;其中,t为正整数;
13、根据所述时刻动作概率qt从动作空间选取一动作at;
14、依据所述动作at执行当前时刻的时间序列集合st的存储动作,得到状态和奖励rt后,将更新后的观测空间存入经验池;
15、令t=t+1,并重新执行所述从经验池中获取观测空间直至满足t=m后,基于状态确定所述时间序列集合s的存储方式,m为最大的迭代轮数。
16、进一步地,所述将观测空间ot传入演员网络,得到时刻动作概率qt,包括:
17、将观测空间ot经过全连接网络fc1并输出隐层向量h1;
18、将隐层向量h1传入长短期记忆网络,并结合长短期记忆网络中的隐藏状态ht-1和单元状态ct-1,得到隐层向量h2和单元状态ct;
19、将隐层向量h2经过全连接神经网络fc2后使用softmax函数激活,得到时刻动作概率qt。
20、进一步地,训练所述演员网络的过程包括:
21、将观测空间ot传入评论员网络,并结合优势函数,得到动作at的优势值at;
22、基于目标函数更新评论员网络的参数θ;其中,表示对所有时间步t的期望值,表示评论员网络对状态的估计,vt是实际的回报;
23、基于目标函数更新演员网络的参数θ′;其中,表示基于旧策略在状态下选择动作at的概率,基于当前策略在状态下选择动作at的概率,clip(1-ε,1+ε,at)表示对优势值at进行裁剪,ε是控制裁切范围的超参数。
24、进一步地,所述将观测空间ot传入评论员网络,得到动作at的优势值at,包括:
25、将所述观测空间ot经过全连接网络fc3和长短记忆网络lstm′生成隐层向量h3;
26、将所述隐层向量h3经过输出维度单个值的全连接神经网络fc4,以输出估计值
27、获取执行动作at后的动作价值qt;
28、基于所述动作价值qt和所述估计值得到动作at的优势值at。
29、进一步地,使用时序差分误差δt对优势函数进行估计;其中,时序差分误差γ是折扣因子,表示动作观测空间ot+1对应的估计值。
30、一种时序数据的空间存储优化系统,所述系统包括:
31、数据获取模块,用于获取包含n个时间序列si的时间序列集合s,所述时间序列si包括:用于存储时间戳的时间列和用于存储数据值的数据列;
32、问题抽象模块,用于将时间序列si陆续存储至数据库存储空间的问题抽象成马尔可夫决策过程;
33、结果输出模块,用于基于所述马尔可夫决策过程的全局最优解确定所述时间序列集合s的存储方式。
34、一种电子设备,其特征在于,所述电子设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现上述任一项所述的时序数据的空间存储优化方法。
35、与现有技术相比,本发明至少具有以下优点:
36、1、本发明采用深度强化学习的方法,在面对复杂、多维度传感器的时序数据时,不需要人工设计复杂的启发式规则。其通过大量的训练数据和神经网络的表征能力,自适应的学习到复杂的策略,从而在复杂环境中取得良好的性能。
37、2、本发明采用的深度强化学习的方法具有很强的泛化能力,可以在不同的环境和任务重进行迁移学习和泛化。一旦训练好模型,在类似的场景下通常能够表现出良好的性能,而不需要重新设计和调整启发式规则。
1.一种时序数据的空间存储优化方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述马尔可夫决策模型的状态空间包括:存储时间戳的空间成本α、构建位图的空间成本β、存储所有数据列的空间成本vs和时间序列集合s的长度,所述马尔可夫决策模型的动作空间包括:构建位图的离散动作空间和构建时间戳数量的离散空间,所述马尔可夫决策模型的奖励函数通过对所述时间序列集合s采用单列存储或单组存储所使用的空间成本构建。
3.根据权利要求2所述的方法,其特征在于,所述马尔可夫决策模型的奖励函数r=ω0*costc(s)+ω1*costg(g);其中,ω0表示第一权重,ω1表示第二权重,采用单列存储所使用的空间成本表示时间序列si的长度,采用单组存储所使用的空间成本costg(g)=(α+n*β)ms+vs,g是对时间序列s进行单组存储的表示。
4.根据权利要求2所述的方法,其特征在于,所述基于所述马尔可夫决策过程的全局最优解确定所述时间序列集合s的存储方式,包括:
5.根据权利要求4所述的方法,其特征在于,所述将观测空间ot传入演员网络,得到时刻动作概率qt,包括:
6.根据权利要求4所述的方法,其特征在于,训练所述演员网络的过程包括:
7.根据权利要求6所述的方法,其特征在于,所述将观测空间ot传入评论员网络,得到动作at的优势值at,包括:
8.根据权利要求6所述的方法,其特征在于,使用时序差分误差δt对优势函数进行估计;其中,时序差分误差γ是折扣因子,表示动作观测空间ot+1对应的估计值。
9.一种时序数据的空间存储优化系统,其特征在于,所述系统包括:
10.一种电子设备,其特征在于,所述电子设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-8任一项所述的时序数据的空间存储优化方法。
