什么是流? - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

什么是流?

在 Amazon IoT 中,是一种可公开寻址的资源,它是可以传输到 IoT 设备的文件列表的抽象化展示。通常而言,流包含以下信息:

  • Amazon Resource Name (ARN),在给定时间唯一标识流。此 ARN 具有模式 arn:partition:iot:region:account-ID:stream/stream ID

  • 流 ID,它将标识您的流,并且在 Amazon Command Line Interface (Amazon CLI) 或软件开发工具包命令中使用(且通常是必要的)。

  • 流描述提供对流资源的说明。

  • 流版本用来标识流的特定版本。由于流数据可以在设备开启数据传输之前立即修改,因此设备可以使用流版本来强制执行一致性检查。

  • 一系列文件,可以传输到设备。对于列表中的每个文件,流都会记录文件 ID、文件大小以及文件的地址信息(例如,Amazon S3 存储桶名称、对象密钥和对象版本)。

  • Amazon Identity and Access Management (IAM) 角色,授予 Amazon IoT 基于 MQTT 的文件传输读取存储在数据存储中的流文件的权限。

Amazon IoT 基于 MQTT 的文件传输提供了以下功能,以便设备可以从Amazon云传输数据:

  • 使用 MQTT 协议进行数据传输。

  • 支持 JSON 或 CBOR 格式。

  • 通过描述流 (DescribeStream API) 来获取流文件列表、流版本和相关信息的能力。

  • 能够在小数据块中发送数据 (GetStream API),以便具有硬件约束的设备可以接收数据块的能力。

  • 支持每个请求的动态数据块大小,以支持具有不同内存容量的设备。

  • 当多个设备从同一流文件请求数据块时,对并发流请求的优化。

  • Amazon S3 作为流文件的数据存储。

  • 支持数据传输日志将消息从 Amazon IoT 基于 MQTT 的文件传输发布到 CloudWatch。

有关基于 MQTT 的文件传输配额,请参阅Amazon一般参考中的 Amazon IoT Core Service Quotas