使用资产属性通知将数据导出到 Amazon S3 - Amazon IoT SiteWise
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用资产属性通知将数据导出到 Amazon S3

您可以从导出传入数据Amazon IoT SiteWise到您账户中的 Amazon S3 存储桶。您可以按照一种格式备份数据,以便用于创建历史报告或使用复杂的方法分析数据。

注意

Amazon IoT SiteWise还支持冷层存储,允许您将数据保存在客户管理的 Amazon S3 存储桶中。有关支持的存储层的更多信息,请参阅。管理数据存储.

Amazon IoT SiteWise 将此功能作为 Amazon CloudFormation 模板提供。当您从模板创建堆栈时,Amazon CloudFormation 创建所需的 Amazon 资源,以便将传入数据从 Amazon IoT SiteWise 流式传输到 S3 存储桶。

然后,S3 存储桶接收从 Amazon IoT SiteWise 属性值更新消息发送的所有资产属性数据。S3 存储桶还会接收您的资产元数据,其中包括资产和属性名称以及其他信息。

有关如何为导出到 Amazon S3 的资产属性启用属性值更新消息的更多信息,请参阅。与其他 Amazon 服务交互.

此功能将资产属性数据和资产元数据存储在中Apache Parquet在 Amazon S3 中格式。Parquet 是列式数据格式,与 JSON 等行式格式相比,前者可节省空间并更快地启用查询。

注意

此功能在检索资产元数据时,最多支持大约 1,500 个资产。此限制仅适用于资产元数据。在该功能导出资产属性数据时,此限制不应用到支持的资产数。

每个资源的名称都包含一个前缀,您可以在创建堆栈时自定义该前缀。资源包括以下内容:

  • 一个 Amazon S3 Bucket

  • Amazon Lambda 函数

  • 一个 Amazon IoT Core 规则

  • Amazon Identity and Access Management 角色

  • Amazon Kinesis Data Firehose 直播

  • 一个 Amazon Glue 数据库

有关完整列表,请参阅从模板创建的资源

重要

此 Amazon CloudFormation 模板创建和使用的资源是收费的。这些费用包括多项 Amazon 服务的数据存储和数据传输。

创建 Amazon CloudFormation 堆栈

您可以在中创建堆栈Amazon CloudFormation将资产数据导出到 Amazon S3。

要将数据导出到 Amazon S3
  1. 打开 Amazon CloudFormation 模板并登录 Amazon Web Services Management Console。

  2. 创建堆栈 页面,选择页面底部的 Next (下一步)

  3. 在存储库的指定栈详细信息页面中,输入BucketName此模板创建的 S3 存储桶以接收资产数据。此存储桶名称必须为全球独一无二。有关更多信息,请参阅 Amazon Simple Storage Service 用户指南中的存储桶命名规则

  4. (可选)更改模板的任何其他参数:

    • GlobalResourcePrefix— 从此模板创建的全局资源(如 IAM 角色)名称的前缀。

    • LocalResourcePrefix— 在当前区域中从此模板创建的资源名称的前缀。

    注意

    如果您多次创建此模板,则应更改存储桶名称和资源前缀参数,以避免资源名称冲突。

  5. 请选择 Next(下一步)。

  6. Configure stack options(配置堆栈选项) 页面上,请选择 Next(下一步)。

  7. 在页面底部,选中显示的复选框。我承认Amazon CloudFormation可能会创建 IAM 资源.

  8. 选择创建堆栈

    堆栈需要几分钟的时间来创建。如果堆栈创建失败,则您的账户可能没有足够的权限,或者您可能输入了已存在的存储桶名称。使用以下步骤删除堆栈并重试:

    1. 选择右上角的 Delete (删除)

      删除堆栈需要几分钟时间。

      注意

      Amazon CloudFormation 不会删除 S3 存储桶或 CloudWatch 日志组。您可以在相应服务的控制台中删除这些资源。

    2. 如果无法删除堆栈,请再次选择删除

    3. 如果堆栈仍然无法删除,请按照 Amazon CloudFormation 控制台中的步骤跳过删除失败的资源,然后重试。

  9. 在Amazon CloudFormation堆栈创建成功后,请按照接下来的过程浏览 Amazon S3 中的资产属性数据。

重要

创建堆栈后,您可以在 Amazon 账户中看到新资源。如果您删除或修改这些资源,该功能可能会停止正常工作。我们建议,除非您希望停止向存储桶发送数据或要自定义此功能,否则不要修改这些资源。

在 Amazon S3 中查看数据

创建功能后,您可以在 Amazon S3 中查看资产属性数据和资产元数据。

注意

资产元数据每 6 小时更新一次。您可能需要等待最多 6 小时才能看到资产元数据显示在 S3 存储桶中。

此功能将资产属性数据存储在以下列中,每行都包含一个数据点:

  • 类型— 属性通知的类型 (PropertyValueUpdate)。

  • asset_id— 接收数据点的资产的 ID。

  • asset_per_id— 接收资产数据点的属性的 ID。

  • time_in_秒/秒— 接收数据的时间,以 Unix 纪元时间(以秒为单位)表示。

  • offset_in_nanos— 从纳秒偏移量timeInSeconds.

  • asset_属性_质量— 数据点的质量:GOODUNCERTAIN,或者BAD.

  • asset_per_value— 数据点的值。

  • asset_per_data_type— 资产属性的数据类型:booleandoubleinteger,或者string.

此功能将资产元数据存储在以下列中,每行都包含一个资产属性:

  • asset_id— 资产的 ID。

  • asset_name— 资产的名称。

  • asset_model_id— 资产模型的 ID。

  • asset_per_id— 资产属性的 ID。

  • asset_per_name— 资产属性的名称。

  • asset_per_data_type— 资产属性的数据类型:BOOLEANDOUBLEINTEGER,或者STRING.

  • asset_属性_单位— 资产属性的单位。

  • asset_per_alias— 资产属性的别名。

查看您的Amazon IoT SiteWiseAmazon S3 中的数据
  1. 导航到Amazon S3 控制台.

  2. 从存储桶的列表中,选择具有您在创建模板时所选名称的存储桶。

  3. 在存储桶中,选择以下文件夹之一:

    • asset-property-updates— 此文件夹包含从导出的资产属性数据。Amazon IoT SiteWise.

    • asset-metadata— 此文件夹包含从导出的资产细节。Amazon IoT SiteWise.

  4. 选择要查看的对象。

  5. 在对象页面上,执行以下操作:

    1. 选择选择范围选项卡。

      在此面板中,您可以预览 Parquet 文件中的记录。

    2. 对于文件格式,选择 Parquet

    3. 要以 JSON 格式显示文件的内容,请选择显示文件预览.

注意

如果新数据未显示在存储桶中,请检查您是否为资产属性启用了属性值更新通知。有关更多信息,请参阅 与其他 Amazon 服务交互

有关如何分析存储在 S3 存储桶中的资产数据的更多信息,请参阅使用 Amazon Athena 分析导出的数据