Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
6年前关闭。
Improve this question
在多个项目中,我们必须存储,汇总和评估简单的测量值。一行通常由时间戳,值和该值的一些属性组成。在某些应用程序中,我们希望每秒存储1000个值,甚至更多。这些值不仅必须以相同的速率插入,而且必须以相同的速率删除,因为值的生命周期限制为一年左右(在不同的聚合步骤中,我们全年不会存储1000 / s)。
到目前为止,我们已经开发了不同的解决方案。一种基于Firebird,一种基于Oracle,另一种基于某种自制的存储机制。但是这些都不是非常令人满意的解决方案。
两种RDBMS解决方案都无法处理所需的数据流。除此之外,传递值的应用程序(例如设备驱动程序)无法轻松地附加到数据库,insert语句很麻烦。最后,虽然强烈希望有一个数据的SQL接口(interface),但典型的评估很难用SQL表示,并且执行速度慢。例如。查找上个月所有测量结果每15分钟带有时间戳的最大值。
自制的解决方案可以处理插入率并具有易于使用的客户端API,但它没有查询语言那样的功能,并且无法通过某些标准接口(interface)(例如,用于报告。
我梦dream以求的最佳解决方案是一个数据库系统,该数据库系统:
有一个用于快速插入的API 能够以相同的速度 删除/截断值提供了标准的SQL接口(interface),对典型的时间序列数据提供了特定的支持
您是否知道一些符合这些要求的数据库,还是会以其他方式解决该问题? https://prometheus.io-监视系统和时间序列数据库 http://influxdb.com/-没有外部依赖性的时间序列数据库(只有基本服务器是开源的) http://square.github.io/cube/-在MongoDB之上书写 http://opentsdb.net/-写在Apache HBase之上 https://github.com/kairosdb/kairosdb-OpenTSDB的重写,它还允许使用Cassandra而不是Hadoop http://www.gocircuit.org/vena.html-有关使用Go-circuits 编写OpenTSDB替代品的教程 https://github.com/rackerlabs/blueflood-基于Cassandra https://github.com/druid-io/druid-基于列和基于hadoop的distributed data store
基于云的:
https://www.tempoiq.com
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
6年前关闭。
Improve this question
在多个项目中,我们必须存储,汇总和评估简单的测量值。一行通常由时间戳,值和该值的一些属性组成。在某些应用程序中,我们希望每秒存储1000个值,甚至更多。这些值不仅必须以相同的速率插入,而且必须以相同的速率删除,因为值的生命周期限制为一年左右(在不同的聚合步骤中,我们全年不会存储1000 / s)。
到目前为止,我们已经开发了不同的解决方案。一种基于Firebird,一种基于Oracle,另一种基于某种自制的存储机制。但是这些都不是非常令人满意的解决方案。
两种RDBMS解决方案都无法处理所需的数据流。除此之外,传递值的应用程序(例如设备驱动程序)无法轻松地附加到数据库,insert语句很麻烦。最后,虽然强烈希望有一个数据的SQL接口(interface),但典型的评估很难用SQL表示,并且执行速度慢。例如。查找上个月所有测量结果每15分钟带有时间戳的最大值。
自制的解决方案可以处理插入率并具有易于使用的客户端API,但它没有查询语言那样的功能,并且无法通过某些标准接口(interface)(例如,用于报告。
我梦dream以求的最佳解决方案是一个数据库系统,该数据库系统:
您是否知道一些符合这些要求的数据库,还是会以其他方式解决该问题?
最佳答案
其他大多数答案似乎都提到基于SQL的数据库。基于NoSQL的数据库在这种情况下要优越得多。
一些开源时间序列数据库:
基于云的: