pinusdb简单易用的时序数据库

软件 来源:开源中国 2022-05-26 18:35:00

松果时序数据库 (pinusdb)

松果时序数据库是一个开源的时间序列数据库。以简单、易用、高性能为目标,解决中小规模物联网场景设备数据存储,查询。 松果时序数据库服务仅包含大约 3 万行 C++ 代码,虽然代码量少但也提供了丰富的功能、较高的性能。

性能

在 i3-7100, 8G 内存,1TB HDD windows server 2016 环境下,每条数据 8 个字段,达到每秒 20 万条数据写入。 内存中数据扫描达到 1500 万条。 历史数据整理后压缩,每个设备的数据顺序存放,极大提供数据查询性能。

压缩

松果时序数据库先将整数、浮点数按照差值压缩,然后将数据块以 zlib 压缩,极大提高压缩率。 不仅如此,我们还提供将浮点数按倍数放大后存储为整数,从而提高浮点数的压缩率。用户使用时以浮点数使用即可。 real2 -> 倍数 100, 取值范围 [-999,999,999.99 ~ +999,999,999.99] real3 -> 倍数 1000, 取值范围 [-999,999,999.999 ~ +999,999,999.999] real4 -> 倍数 10000, 取值范围 [-999,999,999.9999 ~ +999,999,999.9999] real6 -> 倍数 1000000, 取值范围 [-999,999,999.999999 ~ +999,999,999.999999]

容量

在松果时序数据库中,每个表每天的数据存储为一个文件,超过写入时间窗口的文件会被压缩。 所以,数据容量仅限于服务器存储的容量,并且在大容量下还能保持极高的数据读取性能。

数据安全性

数据写入松果时序数据库中,首先会写 commit 日志,commit 日志每 3 秒或写满 1MB 会刷一次磁盘,所以意外宕机,或服务器断电后只会丢失较少的数据。 松果时序数据库写数据文件时使用 doublewrite,保证写入数据页时发送断电数据文件和数据页也不会损坏。

编译

松果时序数据库支持 Windows 以及 Linux,代码中包含 CMake 文件,下载后需要配置 boost 库的包含目录和库目录、zlib 的库目录即可编译成功。 若您需要已编译好的程序,请在 http://www.pinusdb.cn 网站相应的链接下载。

运行

运行前请先配置好服务配置文件 config.ini 具体运行配置细节请参考文档: http://www.pinusdb.cn/doc/v1.3/doc_pdb_windows_install.html

二次开发

提供 c/c++ SDK, .Net SDK, jdbc 驱动,未来还会支持 restful 及更多的二次开发接口

关注公众号:拾黑(shiheibook)了解更多

赞助链接:

关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接