一种分布式时序数据库存储引擎方法、装置及介质制造方法及图纸

技术编号:32887006 阅读:26 留言:0更新日期:2022-04-02 12:22
本发明专利技术涉及数据存储领域,具体提供了一种分布式时序数据库存储引擎方法,采用线性数据模型结构进行数据分区,按照时间对数据点进行分区,每个所述的分区可以独立的对外提供服务,每个分区包含时间范围内的所有数据点;每个分区使用一个单独的目录,所述目录包含元数据和时序数据两种文件,元数据记录的元信息通过mmap映射字节数组里进行访问;对于时序数据通过二阶增量编码的方式减少数据存储空间。与现有技术相比,本发明专利技术提升分布式时序数据库的吞吐量,减少堆内存占用并通过二阶编码方式减少存储空间,解决乱序时间点写入问题,并支持通过预写日志防止内存数据丢失。通过预写日志防止内存数据丢失。通过预写日志防止内存数据丢失。

【技术实现步骤摘要】
一种分布式时序数据库存储引擎方法、装置及介质


[0001]本专利技术涉及数据存储领域,具体提供一种分布式时序数据库存储引擎方法。装置及介质。

技术介绍

[0002]时序数据是带有时间戳和多个标签的指标值集合,它通常用于记录随时间变化的数据。时序数据的工作负载特点为:
[0003]对于写入来说,大部分操作写入,有时比例会达到95%至99%,甚至更高。写入几乎总是顺序追加的,很少进行更新,大部分写入是近期发生的,很少写过去某个时间产生的指标,一般都是批量删除,删除某个指标历史时间范围的数据,很少有随机删除。
[0004]对于读取来说,数据比内存要大的很多,由于读取操作占比很低,所以系统受IO限制较大,读取通常需要按时间进行排序,并发读取和同时读取多个时间段是比较常见的。
[0005]目前主流的时序数据库,如OpenTSDB底层采用HBase,一种分布式键值数据库作为存储,帮助解决集群分区问题。而Prometheus和InfluxDB时序数据库的存储引擎采用LSM树的结构管理数据。这些实现都会有合并机制,将超过一定时间的数据会本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种分布式时序数据库存储引擎方法,其特征在于,采用线性数据模型结构进行数据分区,按照时间对数据点进行分区,每个所述的分区可以独立的对外提供服务,每个分区包含时间范围内的所有数据点;每个分区使用一个单独的目录,所述目录包含元数据和时序数据两种文件,元数据记录的元信息通过mmap映射字节数组里进行访问;对于时序数据通过二阶增量编码的方式减少数据存储空间。2.根据权利要求1所述的一种分布式时序数据库存储引擎方法,其特征在于,在内存中只有头部分区和下一个分区是在堆中并可写,称为内存分区,所述内存分区写入前将数据追加到预写日志的末尾。3.根据权利要求2所述的一种分布式时序数据库存储引擎方法,其特征在于,所述内存分区首先将操作日志写入预写日志WAL,发生崩溃时可以通过WAL按顺序进行恢复。4.根据权利要求3所述的一种分布式时序数据库存储引擎方法,其特征在于,再往前的分区写入磁盘上的单个文件称为磁盘分区,磁盘分区的文件是只读的,并通过内核在mmap进行内存映射。5.根据权利要求1、2、3或4所述的一种分布式时序数据库存储引擎方法,其特征在于,所述元数据文件记录了时序数据的元信息,所述时序数据文件通mmap映射字节数组里进行访...

【专利技术属性】
技术研发人员:张炜刚贾德星
申请(专利权)人:山东浪潮科学研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1