在这种情况下使用时间序列数据库是否合适?

时间:2016-11-25 00:38:15

标签: database-design time-series influxdb

目前,我正在使用时间序数据库来存储不同商店的销售额。我有一个名为sales的衡量标准,其中我有一个store_id标记,字段count设置为1。我使用InfluxDB的下采样功能来总结所有count字段,这样我每天只有一个计数。这很有效。

我的问题是,我需要能够在X轴上绘制我的所有产品,并在特定时间范围内在Y轴上销售多少产品。我当时认为product_id将是标记,而count=1将是该字段。通过这种方式,我可以绘制在规定时间范围内销售的所有产品。但是,我有成千上万的产品,我不确定Influx会对这么多系列产品做出怎样的反应。

我是否应该使用其他东西来获得在X时间内销售的产品,或者有更好的方法来衡量潮流,或者我做得对吗?

1 个答案:

答案 0 :(得分:1)

这里有几个变量可以发挥作用。

  1. 您正在运行InfluxDB的硬件类型。
  2. 您拥有的商店数量。
  3. 您将针对您的实例运行哪些类型的查询。
  4. 您正在使用的InfluxDB版本。
  5. 您的实例具有什么样的读/写负载。
  6. 根据我的经验,1.1 InfluxDB实例可以在单个实例上处理大约2-5百万个系列,其中16G的RAM具有轻微的读/写负载(假设你没有像{{1 }})。

    因此,您所拥有的商店数量在很大程度上决定了这种架构的可行性。 ~10家商店应该可以。 ~100可能不是。

    话虽这么说,这个模式应该在InfluxDB的版本GROUP BY product_id中完全正常support for high cardinality tags and series is being added