暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
一种时序数据存储和查询方法_CN114896268A_上海沄熹科技有限公司.pdf
59
16页
0次
2024-04-25
免费下载
(19)国家知识产权局
(12)发明专利申请
(10)申请公布号
(43)申请公布日
(21)申请号 202210484342.X
(22)申请日 2022.05 .06
(71)申请人 山东浪潮科学研究院有限公
地址 250100 山东省济南市高新浪潮路
1036号S02号楼
(72)发明人 梁波 贾德星 
(74)专利代理机构 济南信达专利事务所有
37100
专利代理师 孙园园
(51)Int.Cl.
G06F
16/242
(2019 .01)
G06F
16/2455
(2019 .01)
G06F
16/172
(2019 .01)
G06F
16/2458
(2019 .01)
(54)发明
一种时序数据存储和查询方法
(57)摘要
种时序数和查
属于据库本发解决
题为如何量时据的和快
同时询操作的性能用的
技术方案为该方法具体如下存储将存储方式
分为内存存储和文件存储新写入序数据先
询方式为内储的
及文件存储数据查询。
权利要求书4页 说明书10页 附图1页
CN 114896268 A
2022.08.12
CN 114896268 A
1 .一种序数据存储询方法其特征在于该方法具体如下
为内和文入的据先入内存存储中
再落盘到文件存储中存储
将查询方式分为内存存储据查询及文件存储数据查询。
2.根据权利要求1所述序数据存储和查询方法其特征在于存储具体如下
使Memlist数组和Filelist数管理所有的时序数据
当有新的时序数据插入时先进入Memlist数组中插入操作完成
个或后台线程将Memlist数中已成的序数据落
盘后序数据Filelist数组继续管理Memlist数组不再管理。
3 .利要2述的和查询方法Memlist数用于管
在内存存储中的时序数据Memlist数组的空间容量在程序配置文件中定义在程启动
时Memlist数组经初始化完毕在程序执行过程中Memlist数组的长度不会变
Memlist数组存储的是MetricVector对象的MetricVector对象存储定数量的
序数MetricVector对象Blocks数组Blocks数组存储
Block内存块的指针Blocks数组中包含若干Block每个Block内存块中顺序存储插入的时
序数据Metric ,每个时序数据Metric的结构为时间戳和具体的value值通过追方式
序数据Metric写入Block内存块中作时通过时序数Metric的定长特性
析出追的每条记录其中Block内存块的大小是可配置
Metric序数据的构还curOffsetcurOffset用于
Block存块当前存储最新的时序数据位置
每当Block内存块中的序数据存满时序向内存存储中新申请一个新的Block内
存块将curOffset变量指向新的Block内存块的第一个位置且将新的Block内存块插入
数组Blocks中。
4 .据权利要求2所述的时序数据存储和查询方法特征Filelist数用于管
理已盘的时序数文件生成的依次存储在Filelist数组Filelist
数组中存储的文件对象包括文件绝对路径、文件的minTSmaxTS及数据量
将MetricVector对象中的序数据按照时间序依次入到文件存储中在文件的
长的footer信息footerminTSmaxTSmetric 用空
metric记录数量及校验码。
5 .据权利要求1所述的序数存储和查询方其特在于存储的据查
具体如下
S1、定位seekTS所在的MetricVector
S2、定位seekTS在MetricVectorBlock存块
S3、定位seekTS在Block内存块位置
S4、返回位置返回Block内存块中第indexOpt条记录位置。
6 .5和查seekTS在的
MetricVector具体如下
S101Memlist数组长度为L ,Memlist数组中存储的时序数据最小时间戳为minTS
maxTS询的seekTS询seekTSMemlist第几
权 利 要 求 书
1/4
2
CN 114896268 A
2
MetricVector中使用如下公式
S102、计算出index后判断index是否等于1
若是则表示seekTS数据不在内存中
若否则执行步骤S103
S103seekTS是否在Memlist[index]这个MetricVector对象的minTS和maxTS区间
若是则跳转至步骤S105
若否则执行步骤S104
S104、进行一次index一或减一的微公式如下
其中minTS和maxTS指Memlist[index]这个MetricVector对象中时序数据的最小时间
戳和最大时间戳indexOpt指微调后index
S105、定继续定位MetricVector对
7 .5 seekTS
MetricVectorBlock内存块具体如下
S201MetricVector中数组Blocks长度为L ,MetricVector中存储的时序数据最小时
间戳为minTS最大时间戳为maxTS待查时间点为seekTSseekTS存在于Blocks中
个Block中使用如下公式
S202、计算出index判断seekTS是否在Blocks[index]这Block的minTS和maxTS区
间中
若是则跳转至步骤S204
若否则执行步骤S203、
S203、进行一次index一或减一的微微调公式如下
其中minTS和maxTS指Blocks[index]这个Block中序数据的最小时间和最大时间
indexOpt指微调后index
S204、定继续定位的Block内存块
定位seekTS在Block内存块位置具体如下
S301Block内存块存储的序数据的数据量为L ,Block内存块中储的时序数据
最小时为minTS最大时间为maxTS待查点为seekTS询seekTSBlock
条记录公式如下
权 利 要 求 书
2/4
3
CN 114896268 A
3
of 16
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。