创建批量导入作业(Amazon CLI) - Amazon IoT SiteWise
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

创建批量导入作业(Amazon CLI)

使用 CreateBulkImportJobAPI 操作将数据从 Amazon S3 传输到 Amazon IoT SiteWise。CreateBulkImportJobAPI 支持摄取大量历史数据,并支持小批量缓冲摄取分析数据流。它为数据摄取提供了一种经济实惠的基元。下面的示例使用了 Amazon CLI。

重要

在创建批量导入任务之前,必须启用 Amazon IoT SiteWise 热层或 Amazon IoT SiteWise 冷层。有关更多信息,请参阅 配置存储设置

CreateBulkImportJobAPI 支持将历史数据提取到, Amazon IoT SiteWise 并可以选择设置参数。 adaptive-ingestion-flag

  • 设置为时false,API 会在不触发计算或通知的情况下提取历史数据。

  • 如果设置为true,API 将在七天内提取新数据、计算指标并转换数据,以优化正在进行的分析和通知。

运行以下命令。将 file-name 替换为包含批量导入作业配置的文件的名称。

aws iotsitewise create-bulk-import-job --cli-input-json file://file-name.json
例 批量导入任务配置

以下是配置设置的示例:

  • adaptive-ingestion-flag 替换为 truefalse

    • 如果设置为false,则批量导入任务会将 Amazon IoT SiteWise历史数据提取到。

    • 如果设置为true,则批量导入任务将执行以下操作:

      • 将新数据摄入。 Amazon IoT SiteWise

      • 计算指标和转换,并支持对时间戳在七天以内的数据发出通知。

  • delete-files-after-import-flag 替换true为可在将数据摄入到 Amazon IoT SiteWise 温层存储后从 S3 数据存储桶中删除。

  • error-bucket 替换为 Amazon S3 存储桶的名称,与此批量导入作业相关的错误将发送到该存储桶。

  • error-bucket-prefix替换为发送与此批量导入任务相关的错误的 Amazon S3 存储桶的前缀。

    Amazon S3 使用前缀作为文件夹名称来整理存储桶中的数据。每个 Amazon S3 对象都有一个键,作为对象在存储桶中的唯一标识符。桶内的每个对象都只能有一个键。前缀必须以正斜杠(/)结尾。有关更多信息,请参阅 Amazon Simple Storage Service 用户指南中的使用前缀整理对象

  • data-bucket 替换为从中导入数据的 Amazon S3 存储桶的名称。

  • data-bucket-key替换为包含您的数据的 Amazon S3 对象的密钥。每个对象都有一个作为唯一标识符的键。每个对象有且只有一个键。

  • data-bucket-version-id替换为版本 ID,以识别包含您的数据的 Amazon S3 对象的特定版本。此参数为可选的。

  • column-name 替换为.csv 文件中指定的列名。

  • job-name 替换为标识批量导入作业的唯一名称。

  • job-role-arn替换为允许 Amazon IoT SiteWise 读取 Amazon S3 数据的 IAM 角色。

注意

确保您的角色具有以下示例中显示的权限。将数据存储桶替换为包含您的数据的 Amazon S3 存储桶的名称。此外,将错误存储桶替换为发送与此批量导入任务相关的错误的 Amazon S3 存储桶的名称。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::data-bucket", "arn:aws:s3:::data-bucket/*", ], "Effect": "Allow" }, { "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::error-bucket", "arn:aws:s3:::error-bucket/*" ], "Effect": "Allow" } ] }
{ "adaptiveIngestion": adaptive-ingestion-flag, "deleteFilesAfterImport": delete-files-after-import-flag, "errorReportLocation": { "bucket": "error-bucket", "prefix": "error-bucket-prefix" }, "files": [ { "bucket": "data-bucket", "key": "data-bucket-key", "versionId": "data-bucket-version-id" } ], "jobConfiguration": { "fileFormat": { "csv": { "columnNames": [ "column-name" ] } } }, "jobName": "job-name", "jobRoleArn": "job-role-arn" }
例 响应
{ "jobId":"f8c031d0-01d1-4b94-90b1-afe8bb93b7e5", "jobStatus":"PENDING", "jobName":"myBulkImportJob" }