[发明专利]一种时序数据列式存储、查询方法及系统有效
申请号: | 201711384490.X | 申请日: | 2017-12-20 |
公开(公告)号: | CN107871022B | 公开(公告)日: | 2018-12-11 |
发明(设计)人: | 王建民;黄向东;张金瑞;康荣;王晨;龙明盛 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹;吴欢燕 |
地址: | 100084 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 时序 数据 存储 查询 方法 系统 | ||
本发明提供一种时序数据列式存储、查询方法及系统,所述的存储方法包括:将一列时序数据划分为多个页,每一页存储所述一列时序数据的一部分数据点,所有页中存储的数据点总和为一列时序数据中所有的数据点;为每一页设置页头和页体两部分,针对每一页,将该页中所有数据点的聚合索引信息存储于该页的页头中,以及将该页中所有数据点的数据值信息存储于该页的页体中。通过本发明,能够将一组时序数据的时间戳和具体的数据值存储在一个列中,减少了数据查询时的磁盘I/O;以及将数据按照页进行划分,并分别建立聚合索引信息,加快了数据的查询速度。
技术领域
本发明涉及数据存储技术领域,更具体地,涉及一种时序数据列式存储、查询方法及系统。
背景技术
随着计算机技术、工业信息化的发展,工业领域产生的数据量越来越大。时间序列数据(简称“时序数据”)在工业领域的应用非常广泛,是工业数据中的主要数据类型。作为工业大数据中的主要数据格式,其存储和查询问题已经成为工业大数据研究中的一项重点内容。
时序数据通常由机器传感器按照一定的频率产生,一旦产生几乎无需修改;其次,时序数据的应用更多地为分析性查询,而非细粒度的增删改查。所以,结合时间序列数据的结构特点及工业大数据中对时间序列数据的应用方式,列式存储的文件格式较为适合对海量的时间序列数据进行存储。
当前,主流的列式存储文件格式例如Parquet、ORCFile等并没有针对时序数据的存储进行优化,其在对时序数据进行列式存储时,均采用一种更为通用的列式存储方法,拥有复杂的嵌套结构,且不能将一组时序数据的数据值和时间戳同时存储在一列中,无法在一列数据中对一组时序数据的时间戳和数据值同时做索引,这些问题会减慢时序数据的查询速度,耗费更多的系统资源。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的一种时序数据列式存储、查询方法及系统,能够提高时序数据的查询速度。
根据本发明的第一方面,提供了一种时序数据列式存储方法,包括:
将一列时序数据划分为多个页,每一页存储所述一列时序数据的一部分数据点,所有页中存储的数据点总和为一列时序数据中所有的数据点;
为每一页设置页头和页体两部分,针对每一页,将该页中所有数据点的聚合索引信息存储于该页的页头中,以及将该页中所有数据点的数据值信息存储于该页的页体中。在上述技术方案的基础上,本发明还可以作如下改进。
进一步的,每一页的页头中的聚合索引信息包括该页中所有数据点的个数、所有数据点对应的时间戳中的最大值、所有数据点对应的时间戳中的最小值、所有数据点的数据值中的最大值和所有数据点的数据值中的最小值;
每一页的页体中所有数据点的数据信息包括该页所有数据点的时间戳集合和该页的所有数据点的数据值集合。
进一步的,所述时间戳集合中的所有时间戳的数据类型一致,所述数据值集合中包括不同数据类型的数据值;所述存储方法还包括:
采用同一种数据编码方式对所述时间戳集合中的所有时间戳进行数据编码;以及,
根据所述数据值集合中的各个数据值的数据类型,采用相应的数据编码方式对各个数据值进行编码。
进一步的,每个页占用相同的固定存储空间。
根据本发明的第二方面,提供了一种时序数据查询方法,包括:
读取一列时序数据的一页,根据该页中的聚合索引信息,判断该页中是否存在满足查询过滤条件的数据点;
若该页中不存在满足查询过滤条件的数据点,则跳过并读取下一页;若该页中存在满足查询过滤条件的数据点,则筛选出该页中满足所述查询过滤条件的所有数据点,加入查询结果集;
遍历所有页,获得最终的查询结果集。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711384490.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置