【问题标题】:Difference between time series database and streaming analytics engine like spark streaming时间序列数据库和流分析引擎(如 spark 流)之间的区别
【发布时间】:2017-08-17 22:15:34
【问题描述】:

时间序列数据库能否完成流式分析系统(如 Spark Streaming/flink/Kinesis 分析)可以做的所有事情?

一个包含另一个吗?我不是在寻找哪个更好。只需了解它们支持哪些不同的用例即可。

【问题讨论】:

    标签: spark-streaming influxdb flink-streaming opentsdb


    【解决方案1】:

    时间序列数据库专注于以比我们常见的关系数据库更高效的方式存储和检索基于时间的条目。鉴于业界对高性能事件处理的兴趣,最近它们再次成为热门话题。如今,它们中的大多数依赖于 NoSQL 数据库上的特定索引技术,例如OpenTSDB(HBase)、InfluxDB(BoltDB)等。

    另一方面,像 Spark Streaming 这样的分布式流处理框架是基于对数据流管理系统的研究,并提供了更灵活的事件分析方式。它们通常用于进行其他类型的数据分析,例如对流、草图、窗口的机器学习,以及应用不属于时间序列数据库重点的多种其他技术。

    它们都源于 2000 年代对时间序列数据库和数据流管理系统的研究,因此其中一个的许多功能和架构思想都应用于另一个,反之亦然。一个例子是开创性的流处理论文“Continuous Queries over Data Streams”(S. Babu,2001)引用时间序列数据库作为相关工作的一个例子。

    【讨论】:

    • 还可以补充一点,虽然时间序列数据库允许您存储(批量)数据并运行常规的基于拉的 sql 查询,但流处理系统允许您存储针对每个传入的连续查询进行评估事件。大多数流式传输系统依赖键值存储来进行状态管理。
    猜你喜欢
    • 1970-01-01
    • 2016-07-25
    • 2015-10-24
    • 1970-01-01
    • 2018-09-10
    • 2019-04-13
    • 1970-01-01
    • 2016-11-29
    • 2012-10-01
    相关资源
    最近更新 更多