管理 Greengrass 核心设备上的数据流 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理 Greengrass 核心设备上的数据流

Amazon IoT Greengrass流管理器使将大量IoT 数据传输到更高效、更可靠Amazon Web Services 云。流管理器先在Amazon IoT Greengrass Core 上处理数据流,然后将其导出到Amazon Web Services 云。Stream Manager 集成了常见的边缘场景,例如机器学习 (ML) 推理,在这种场景中,Amazon IoT Greengrass核心设备在将数据导出到Amazon Web Services 云或本地存储目的地之前处理和分析数据。

Stream Manager 提供了一个通用界面来简化自定义组件的开发,因此您无需构建自定义流管理功能。您的组件可以使用标准化机制来处理大量数据流和管理本地数据保留策略。您可以为每个流定义存储类型、大小和数据保留策略,以控制流管理器处理和导出数据的方式。

直播管理器在连接间歇或受限的环境中工作。您可以定义带宽使用、超时行为以及Amazon IoT Greengrass Core 在连接或断开连接时如何处理流数据。您还可以设置优先级,以控制Amazon IoT Greengrass Core 将直播导出到的顺序Amazon Web Services 云。这让您能够比其他数据更快地处理关键数据。

您可以将流管理器配置为自动将数据导出到以Amazon Web Services 云进行存储或进一步处理和分析。直播管理器支持导出到以下Amazon Web Services 云目的地:

  • 频道输入Amazon IoT Analytics. Amazon IoT Analytics允许您对数据进行高级分析,以帮助做出业务决策和改进机器学习模型。有关更多信息,请参阅《Amazon IoT Analytics 用户指南》中的什么是 Amazon IoT Analytics?

  • Amazon Kinesis 数据流中的流。您可以使用 Kinesis Data Streams 聚合大量数据并将其加载到数据仓库或 MapReduce 集群中。有关更多信息,请参阅 Amazon Kinesis Data Streams 开发人员指南 中的什么是 Amazon Kinesis Data Streams?

  • 中的资产属性Amazon IoT SiteWise。 Amazon IoT SiteWise让您能够大规模收集、组织和分析数据。有关更多信息,请参阅《Amazon IoT SiteWise 用户指南》中的什么是 Amazon IoT SiteWise?

  • Amazon Service ServicAmazon S3 ice 您可以使用 Amazon S3 存储和检索大量数据。有关更多信息,请参阅什么是 Amazon S3? 在《Amazon Service 开发人员指南》中。

流管理工作流

您的 IoT 应用程序通过流管理器 SDK 与流管理器交互。

在简单的工作流程中,Amazon IoT Greengrass核心上的组件会消耗 IoT 数据,例如时间序列温度和压力指标。该组件可能会过滤或压缩数据,然后调用 Stream Manager SDK 将数据写入流管理器中的流。直播管理器可以根据您为直播定义的策略Amazon Web Services 云自动将直播导出到。组件还可以将数据直接发送到本地数据库或存储库。

您的 IoT 应用程序可以包含多个对流进行读取或写入的自定义组件。这些组件可以读取和写入数据流,以过滤、聚合和分析Amazon IoT Greengrass核心设备上的数据。这使得在数据从核心传输到本地目的地之前,可以快速响应本地事件并提取有价值的信息。Amazon Web Services 云

首先,将直播管理器组件部署到您的Amazon IoT Greengrass核心设备。在部署中,配置直播管理器组件参数以定义适用于 Greengrass 核心设备上所有直播的设置。根据您的业务需求和环境限制,使用这些参数来控制流管理器存储、处理和导出流的方式。

配置流管理器后,您可以创建和部署 IoT 应用程序。这些通常是自定义组件,用于StreamManagerClient在 Stream Manager SDK 中创建直播并与之交互。创建直播时,您可以定义每个流的策略,例如导出目标、优先级和持久性。

要求

使用直播管理器时存在以下要求:

  • 除了Amazon IoT Greengrass核心软件外,直播管理器还需要至少 70 MB 的 RAM。您的总内存需求取决于您的工作负载。

  • Amazon IoT Greengrass组件必须使用流管理器 SDK 才能与流管理器交互。直播管理器 SDK 提供以下语言版本:

  • Amazon IoT Greengrass组件必须在其配方中将流管理器组件 (aws.greengrass.StreamManager) 指定为依赖项才能使用流管理器。

    注意

    如果您使用流管理器将数据导出到云端,则无法将流管理器组件的 2.0.7 版本升级到 v2.0.8 和 v2.0.11 之间的版本。如果您是首次部署直播管理器,我们强烈建议您部署最新版本的直播管理器组件。

  • 如果您为直播定义Amazon Web Services 云导出目的地,则必须创建导出目标并在 Greengrass 设备角色中授予访问权限。根据目的地的不同,可能还会有其他要求。有关更多信息,请参阅:

    您负责维护这些Amazon Web Services 云资源。

数据安全性

使用流管理器时,请注意以下安全注意事项。

本地数据安全性

Amazon IoT Greengrass不加密核心设备上本地组件之间的静态数据或传输中的流数据。

  • 静态数据。流数据存储在本地存储在存储目录中。为了确保数据安全,Amazon IoT Greengrass依赖于文件权限和全盘加密(如果已启用)。您可以使用可选的 STREAM_MANAGER_STORE_ROOT_DIR 参数指定存储目录。如果稍后将此参数更改为使用其他存储目录,Amazon IoT Greengrass 不会删除以前的存储目录或其内容。

  • 数据正在本地传输。 Amazon IoT Greengrass不加密数据源、Amazon IoT Greengrass组件、Stream Manager SDK 和流管理器之间的本地传输中的流数据。

  • 数据正在传输到Amazon Web Services 云. 流管理器导出到的数据流Amazon Web Services 云使用带传输层安全性 (TLS) 的标准Amazon服务客户端加密。

客户端身份验证

直播管理器客户端使用 Stream Manager SDK 与直播管理器通信。启用客户端身份验证后,只有 Greengrass 组件可以与直播管理器中的直播进行交互。禁用客户端身份验证后,在 Greengrass 核心设备上运行的任何进程都可以在直播管理器中与直播交互。只有在您的业务案例需要时才应禁用身份验证。

您可以使用 STREAM_MANAGER_AUTHENTICATE_CLIENT 参数来设置客户端身份验证模式。在将流管理器组件部署到核心设备时,可以配置此参数。

  Enabled 已禁用

参数值

true(默认值和推荐值)

false

允许的客户端

核心设备上的 Greengrass 组件

核心设备上的 Greengrass 组件

Greengrass 核心设备上运行的其他进程

另请参阅