问题描述
我们有某些linux设备,它们会在某些时间间隔内发送数据,例如电池电量百分比,cpu利用率,ram利用率等。我们想对此数据进行分析。我们应该在mongo(https://www.mongodb.com/blog/post/time-series-data-and-mongodb-part-1-introduction)中捕获此数据还是使用特定的时间序列数据库,例如influxdb或TSDB。每天产生的数据大约为100 GB,我们希望它能持续3个月。
解决方法
TSDB bencmarks表明(TimescaleDB vs MongoDB,InfluxDB vs MongoDB)专用时间序列数据库的性能优于MongoDB。每天100 GB x 3个月的磁盘数据压缩也很重要。尽管TimescaleDB最近改进了数据压缩,但对于典型用例,VictoriaMetrics 的接收速率,查询速度和压缩似乎是leading。并查看Yandex ClickHouse benchmarks。
,有关其他选择,请访问https://jsfiddle.net/4nbajsch/5/上的QuestDB。 QuestDB基于SQL,其性能优于上述所有TSDB。
您可以尝试以Questdb.io的速度进行尝试,这是一个实时实例,其中加载了来自NYC Taxi数据集的1.9B行数据。