AWS::IoTAnalytics::Dataset S3DestinationConfiguration
Configuration information for delivery of dataset contents to Amazon Simple Storage Service (Amazon S3).
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Bucket" :
String
, "GlueConfiguration" :GlueConfiguration
, "Key" :String
, "RoleArn" :String
}
YAML
Bucket:
String
GlueConfiguration:GlueConfiguration
Key:String
RoleArn:String
Properties
Bucket
-
The name of the S3 bucket to which dataset contents are delivered.
Required: Yes
Type: String
Pattern:
^[a-zA-Z0-9.\-_]*$
Minimum:
3
Maximum:
255
Update requires: No interruption
GlueConfiguration
-
Configuration information for coordination with AWS Glue, a fully managed extract, transform and load (ETL) service.
Required: No
Type: GlueConfiguration
Update requires: No interruption
Key
-
The key of the dataset contents object in an S3 bucket. Each object has a key that is a unique identifier. Each object has exactly one key.
You can create a unique key with the following options:
-
Use
!{iotanalytics:scheduleTime}
to insert the time of a scheduled SQL query run. -
Use
!{iotanalytics:versionId}
to insert a unique hash that identifies a dataset content. -
Use
!{iotanalytics:creationTime}
to insert the creation time of a dataset content.
The following example creates a unique key for a CSV file:
dataset/mydataset/!{iotanalytics:scheduleTime}/!{iotanalytics:versionId}.csv
Note
If you don't use
!{iotanalytics:versionId}
to specify the key, you might get duplicate keys. For example, you might have two dataset contents with the samescheduleTime
but differentversionId
s. This means that one dataset content overwrites the other.Required: Yes
Type: String
Pattern:
^[a-zA-Z0-9!_.*'()/{}:-]*$
Minimum:
1
Maximum:
255
Update requires: No interruption
-
RoleArn
-
The ARN of the role that grants AWS IoT Analytics permission to interact with your Amazon S3 and AWS Glue resources.
Required: Yes
Type: String
Minimum:
20
Maximum:
2048
Update requires: No interruption