使用时间戳将 IoT 数据提取到时间流

0

【以下的问题经过翻译处理】 我希望能够使用来自 IoT 的自定义时间戳将数据导入到 Timestream 中。这些时间戳通常会在过去,但肯定在保留期内。以下是一些示例消息:

{
  "time": "2020-09-03T17:50:07.790000",
  "电池曲轴转速": "12.035839999999999"
}

{
  "time": "2020-09-03T17:42:28.770000",
  "输出电能": "6798.6"
}

请注意,时间属性很重要且与测量相关。此外,请注意每条消息的测量值都是不同的。并且有很多可变的测量值。

将 IoT 规则/操作设置为将其发送到 Timestream 会成功创建测量名称和值,但时间戳是错误的。记录被标记为INGEST时间,而不是从时间字段获取的值。

我可以通过将'time'属性的名称更改为'timestamp',并使用time_to_epoch解析该字段来“修复”它。但这会在 Timestream 中创建冗余记录,其中测量名称为'timestamp',而值与时间相同。

那么我只能在数据量翻倍和没有有用的时间戳之间做出选择。

还有其他方法吗?

----编辑----

为了更详细地说明,这里是另一个运行:

在主题vt/cvra/teleTester上发布的示例消息

{
"timestamp": "2020-10-01 19:50:36.050",
"道路速度": "2.0"
}


{
"timestamp": "2020-10-01 19:50:34.147",
"档位": "3.0"
}

IoT 规则 SQL: SELECT * FROM 'vt/cvra/+/cardata'

时间戳'value'字段: `${time_to_epoch(timestamp,

profile picture
专家
已提问 5 个月前20 查看次数
1 回答
0

【以下的回答经过翻译处理】 我设法解决了这个问题。你不能在有效载荷中传递时间。你可以使用有效载荷中的时间戳,但这样也会增加不必要的存储空间,因为它会将该属性作为度量值添加。我通过在主题上传递纪元毫秒并从那里提取时间戳来绕过这个问题。请参见http://iot.awsworkshops.com/amazon-timestream/lab131a-iotandtimestream/

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则