Aws Dynamo时间序列读取数据

时间:2018-01-30 18:27:05

标签: amazon-web-services nosql time-series amazon-dynamodb

对时间序列数据建模的最佳方法是什么,需要快速查找单个项目,但写入并不重要。

columns: Time(PK), value

Time将存储为Unix timestampvalue作为int

我想要执行的查询:

  • 给定时间戳,找到表中最接近该时间戳的时间戳。所以根本没有扫描。

写作将是定期的,也许每小时一次。只要写入在某个时间点发生,就可以了。他们将通过lambda完成。

策略是否存在任何陷阱?

1 个答案:

答案 0 :(得分:0)

使用DynamoDB和时间序列数据,您最好的选择可能是根据数据点在不同时间的分布情况下的粒度来划分数据。例如,如果您只希望每小时收到一定数量的数据点,那么可能使用一天中的日期+小时作为分区键,时间戳作为排序键,这将是有意义的。

如果您的数据在当天非常稀疏,那么分区键可能只是日期。

无论哪种方式,原理都是一样的:将时间序列划分为块,并按实际时间戳将数据按每个块的点排序。