将事物阴影和数据库(如DynamoDB)中的设备状态副本保留为最佳做法是一种最佳做法吗?

时间:2016-02-11 09:00:50

标签: amazon-web-services iot aws-iot

在DynamoDB等数据库中保留设备影子的副本是最佳做法吗?

  • 当我们必须在聚合设备上进行查询时,这将非常有用 数据。对于Eg。 "给我所有设备状态=' ON'"
  • 这里的问题是同步数据的副本 设备影子和数据库

对此有何建议?

2 个答案:

答案 0 :(得分:0)

这取决于您的要求。如果您需要查询事物影子数据,您应该使用数据库。 Dynamodb可以再次工作,这取决于您的要求。当然,您应该在dynamodb中创建必要的索引,这样您就不需要执行表扫描。

根据设备数量和更新频率,您可以将状态存储在RDS中的关系数据库中。请注意,此选项的可伸缩性较差要同步数据,您可以将IOT规则转发给执行数据库更新的lambda函数。 使用dynamodb,您可以将规则直接转发到dynamodb。 只进行一种同步(即Thing state - >数据库)以保持简单。

您的其他选择是让所有事物变得阴影并自己过滤结果。

答案 1 :(得分:0)

2017年12月推出,AWS IoT Fleet Indexing支持为您的事物和阴影编制索引。此服务会自动检测“事物/阴影”中的更改并更新索引。您可以使用流行的开源搜索查询语言Lucene的子集对此索引执行强大的查询。

要尝试此功能,您可以拨打update-indexing-configuration API或只是勾选AWS IoT控制台中的复选框。