目前我正在开展一个项目,我在AWS IoT中拥有7个相同的传感器(温度,光线,运动)。这些传感器放置在建筑物的不同房间。这些传感器每5分钟发送一次更新。
我需要一种安全的方式来将数据存储在AWS中并将其交给外部客户。 为了展示这一点,我想创建一个仪表板,显示建筑物的楼层地图,并具有以下功能:
我目前在1个DynamoDB表中保存了所有传感器的数据,并以这种方式创建了一个工作API:
API Gateway -> AWS Lambda -> DynamoDB <- AWS IoT <- Sensors
但问题在于它不会实时更新。而且很难从DynamoDB中获取最新价值。所以我需要一个更好的方法。
2个问题:
答案 0 :(得分:0)
在AWS中存储数据的最佳方式在很大程度上取决于您希望如何访问数据。从您描述的用例中,Dynamodb将与AWS IOT MQTT消息代理的Web套接字连接一起使用。
对于Dynamodb,我会考虑创建一个表,其中包含作为传感器ID的partion键,以及一个作为时间戳的排序键。然后,您可以轻松查询表格以获取每个传感器的最新记录。将ScanIndexForward参数设置为false,以便在查询中按降序返回记录。
对于Realtime消息,您可以使用MQTT over Web套接字从浏览器连接到AWS IOT MQTT消息代理。您可以订阅传感器发布到的相同主题并接收实时更新。