非著名程序员 潜水
  • 2发帖数
  • 2主题数
  • 0关注数
  • 0粉丝
开启左侧

从零开始学习系列之时间序列数据库

[复制链接]
非著名程序员 发表于 2021-9-3 20:18:20 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

                               
登录/注册后可看大图

文章首发于微信公众号「GitHub黑板报」,欢迎各人关注。打开微信,使用 “搜一搜”,搜索「GitHub黑板报」,即可关注。
各人好,我是章鱼猫。
监控系统各人应该都用过,而监控内里记录的比较紧张的数据就是某个时间点发生了什么,而用来存储这些数据的数据库,用专业术语讲就是时间序列数据库(Time Series Database,缩写简称 TSDB)。以下是一个更官方的表明:
时间序列数据库重要用于指处置惩罚带时间标签(按照时间的顺序变革,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。是新型的非关系型数据库,在大数据时代有着十分紧张的意义。
Prometheus、InfluxDB、M3、TimescaleDB 都是时下流行的 TSDB。时序数据的压缩算法很大程度上决定了 TSDB 的性能,以上几个项目的实现都参考了 Facebook 2015 年发表的论文《Gorilla: A fast, scalable, in-memory time series database》中提到的差值算法。
今天要保举的开源项目 mandodb 是一个最小化的 TSDB 实现,从概念上来讲它还算不上是一个完整的 TSDB,因为它:

  • 没有实现自己的查询引擎(实现难度大)
  • 缺少磁盘归档文件 Compact 操纵(天气好的话会实现)
  • 没有 WAL 作为灾备保证高可用(心情好的话会实现)
但是 mandodb 的意图是希望完整先容如何从零开始实现一个小型的 TSDB,希望能给各人带来更多的启发。
mandodb 使用 Go 实现,同时作者也针对 mandodb 提供了如下细致的用法先容、设计方案先容等,其中还包罗了对差值算法的讲解,黑白常不错的学习资料呢。

                               
登录/注册后可看大图

开源作者的整体文档行文非常的风趣幽默,同时细节讲解也非常的具体,如果你对时间序列数据库感兴趣,保举你了解一下这个项目,Star 一波绝对不亏。
更多项目详情请查看如下链接。
开源项目地址:https://github.com/chenjiandongx/mandodb
微信公众号:「GitHub黑板报」,值得你关注,天天都分享开源项目,挖掘开源的价值。
文章首发于微信公众号「GitHub黑板报」,欢迎各人关注。打开微信,使用 “搜一搜”,搜索「GitHub黑板报」,即可关注。关注后,天天都会为您推送我们精心挑选的优质开源项目。
特别提醒:关注我,给我发私信,回复关键字「666」,可以领取程序员副业赢利案例电子书以及一本平凡人都使用的《副业赢利手册》电子书。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

猜你喜欢
在线客服邮箱
wxcy#wkgb.net

邮箱地址#换为@

Powered by 创意电子 ©2018-现在 专注资源实战分享源码下载站联盟商城