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

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

使用资产属性通知将数据导出到 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 服务交互

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

注意

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

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

  • 一个 Amazon S3 存储桶

  • Amazon Lambda 函数

  • 一个 Amazon IoT Core 规则

  • Amazon Identity and Access Management 角色

  • 亚马逊 Kinesis 数据消防队直播

  • 一个 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. 选择 Create stack(创建堆栈)。

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

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

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

      注意

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

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

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

  9. 成功创建Amazon CloudFormation堆栈后,按照下一个步骤在 Amazon S3 中浏览您的资产属性数据。

重要

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

在 Amazon S3 中查看您的数据

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

注意

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

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

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

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

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

  • time_in_sec onds — 接收数据的时间,以 Unix 纪元时间表示为秒。

  • offset_in_nanos —从的纳秒偏移量。timeInSeconds

  • asset_property_q uality — 数据点的质量:、或。GOOD UNCERTAIN BAD

  • asset_property_value — 数据点的值。

  • asset_property_data_ty pe — 资产属性的数据类型:、、或。boolean double integer string

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

  • asset_id — 资产的 ID。

  • asset_name — 资产的名称。

  • asset_model_id — 资产模型的 ID。

  • asset_property_id — 资产财产的 ID。

  • 资产_property_name — 资产属性的名称。

  • asset_property_data_ty pe — 资产属性的数据类型:、、或。BOOLEAN DOUBLE INTEGER STRING

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

  • asset_property_alias — 资产属性的别名。

在 Amazon S3 中查看您的Amazon IoT SiteWise数据
  1. 导航到亚马逊 S3 控制台

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

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

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

    • asset-metadata— 此文件夹包含从中导出的资产详细信息Amazon IoT SiteWise。

  4. 选择要查看的对象。

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

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

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

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

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

注意

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

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