【问题标题】:Time series data indexing algorithm时间序列数据索引算法
【发布时间】:2013-06-03 01:20:29
【问题描述】:

我的问题类似于this。我需要数据结构来存储和访问大量时间序列数据。在我的情况下,插入率非常高 - 每秒插入 10-100k。数据项是包含时间戳、传感器 ID 和传感器值的元组。我有非常多的传感器。在我的情况下,必须删除早于某个时间点的值。

我需要按传感器 ID 和时间范围查询数据集。所有数据都必须存储在外部存储器中,没有办法将其放入主存储器中。

我已经知道 TSB-tree,但是 TSB-tree 很难实现,并且不能保证它会完成这项工作。我怀疑 TSB-tree 在高插入率下表现不佳。

还有其他选择吗?也许类似于 LSM-tree 但用于多维数据?

【问题讨论】:

  • 需要指定“外存”是随机访问还是顺序访问。
  • "我需要通过传感器 id 和时间范围查询数据集。" - 这是不精确的。您希望支持以下哪些查询:(1) SID=X 的元组,(2) TMIN
  • 我想支持 (1)、(3) 和 (4) 元组,其中 SID 在 (X1, X2, X3) AND TMIN

标签: algorithm


【解决方案1】:

因为您使用的是外部存储器,您可能需要阅读Henrik Jonsson's thesis - B-trees 中关于 B-trees 的章节,它们本身是一种非常流行的在外部存储器中索引数据的方法,您应该能够找到任何语言的实现,Jonnson 讨论了如何调整它们以存储时间序列数据。

【讨论】:

  • 有趣。需要一些时间仔细观察。
猜你喜欢
  • 1970-01-01
  • 2013-06-20
  • 1970-01-01
  • 1970-01-01
  • 2018-06-30
  • 2019-12-07
  • 2021-07-26
  • 1970-01-01
  • 2017-02-11
相关资源
最近更新 更多