【问题标题】:IoT Big Data design on AWSAWS 上的物联网大数据设计
【发布时间】:2018-01-22 18:21:03
【问题描述】:

我正在尝试从零开始设计一个包含数百万台设备的大型物联网解决方案。这就是为什么我需要像 AWS 这样的高度可扩展平台。

我的设备将使用 AWS IoT 报告数据,这是我唯一真正决定的事情。我需要在每台设备上每 15 分钟存储一次温度测量值等大量数据,因此我计划使用 IoT 规则将这些测量值直接插入 DynamoDB,但另一方面,我需要一个关系结构来存储公司、温度传感器等。所以我想我可以将其存储在 MySQL RDS 中。

在那之后,我需要配置一个合适的分析工具,所以我在考虑 Kinesis 并在 ETL 之后使用 Data Pipeline 从 Redshift 加载数据,因为 AWS Glue 不支持 DynamoDB。

我是一些服务的新手,所以我不知道自己在做什么,也不知道这种方法是否是最好的方法。你怎么看?

谢谢。

【问题讨论】:

  • 从零个设备开始,每年增加一个?还是您的意思是从零代码开始(“从零开始”)?
  • 两者,我的意思是,我有一个不使用 MQTT 设备的旧版本,并且我已经编写了类似于 AWS Greengrass 的代码,它将为这个新版本处理本地配置文件,对于这个设计,我认为我已经配置了从我的设备接收所有数据并将其插入 Dynamo 的 IoT 端,但我仍然需要弄清楚如何有效地将所有数据存储在云中以供将来使用,例如分析。
  • 提示:如果可以,请避免使用 AWS 数据管道
  • @JonScott 我尝试使用 AWS Glue 避免它,但它只支持关系数据库,我需要在将数据插入 Redshift 之前以某种方式转换来自 dynamo 和 RDS 的数据,但我看不到任何其他方式...数据管道有什么问题?
  • 根据我的经验,它非常有问题。还有其他选项,例如从发电机到红移的 DMS,然后是红移内的转换

标签: amazon-web-services architecture amazon-redshift amazon-kinesis aws-iot


【解决方案1】:

我会让您的应用程序使用此流程将边缘数据(原始数据)写入 S3 存储桶:

Edge(带凭据)-> APIGateway -> Lambda -> S3

将您的原始数据保存为 S3 中的 .json 文件。然后,您可以使用 Athena 和 Quicksight 等工具进行可视化。

这样做的好处是:

1) 您的边缘设备不必具有 AWS 开发工具包

2) S3 廉价且可扩展性极强

3) JSON 格式可以被任何服务读取,因此您不会被锁定在 AWS 中进行可视化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-29
    • 1970-01-01
    • 2017-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多