背景:
公司有 30W 台设备,高峰时 6W 台在线,每隔 5s 上传一次数据,一年大概只有 6 个月左右工作.大概整个生命周期内 100W 条数据(每条数据算 64 个监控点),每年预计 10W 新设备增长,数据永久保存(最大到 100W 台设备).
现在使用单机 InfluxDB,总记录 600 亿左右,硬盘占用 4T,高峰时内存经常用满128G导致重启.
写多读少.
需求:
最近调研了几个数据库:
TDengine:
a. 数据和表删除不会释放空间,只能 keep 设置的数据到期才会删除(企业版支持数据重组),而且乱序写入好像还会占用额外空间?
b. 性能还行,单表 1 亿的情况下也能在 10s 内,百万数据的话 1s 内(1W 个表,就一个表 1 亿数据,其他表只有 1W 数据).
IoTDB:
a. 性能还行,没多测;
b. 内存,硬盘按他给的算法,占用很多.
QuestDB:
a. 数据量一亿的情况下性能还行,占用跟 TDengine 差不多;
b. 数据量上到 10 亿后,查询性能下降非常多,写入也慢(吃 CPU,不过够用).
前几天看到站内的VictoriaMetrics/Prometheus+Thanos还没测,不知道具体咋样.
大家有没有什么好的推荐?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.