创建批量导入作业(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 冷层。有关更多信息,请参阅配置存储设置

批量导入旨在将历史数据存储到 Amazon IoT SiteWise。它不会在 Amazon IoT SiteWise 温层或 Amazon IoT SiteWise 冷层上启动计算或通知。

运行以下命令。将 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" }