Skip to content
v2.277.0

S3DestinationConfigurationProperty Struct ​

Configuration information for delivery of dataset contents to Amazon Simple Storage Service (Amazon S3).

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_iotanalytics as iotanalytics } from 'aws-cdk-lib';
const s3DestinationConfigurationProperty: iotanalytics.CfnDataset.S3DestinationConfigurationProperty = {
  bucket: 'bucket',
  key: 'key',
  roleArn: 'roleArn',

  // the properties below are optional
  glueConfiguration: {
    databaseName: 'databaseName',
    tableName: 'tableName',
  },
};
python
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_iotanalytics as iotanalytics

s3_destination_configuration_property = iotanalytics.CfnDataset.S3DestinationConfigurationProperty(
    bucket="bucket",
    key="key",
    role_arn="roleArn",

    # the properties below are optional
    glue_configuration=iotanalytics.CfnDataset.GlueConfigurationProperty(
        database_name="databaseName",
        table_name="tableName"
    )
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.iotanalytics.*;

S3DestinationConfigurationProperty s3DestinationConfigurationProperty = S3DestinationConfigurationProperty.builder()
        .bucket("bucket")
        .key("key")
        .roleArn("roleArn")

        // the properties below are optional
        .glueConfiguration(GlueConfigurationProperty.builder()
                .databaseName("databaseName")
                .tableName("tableName")
                .build())
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.IoTAnalytics;

var s3DestinationConfigurationProperty = new S3DestinationConfigurationProperty {
    Bucket = "bucket",
    Key = "key",
    RoleArn = "roleArn",

    // the properties below are optional
    GlueConfiguration = new GlueConfigurationProperty {
        DatabaseName = "databaseName",
        TableName = "tableName"
    }
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

s3DestinationConfigurationProperty := &S3DestinationConfigurationProperty{
	Bucket: jsii.String("bucket"),
	Key: jsii.String("key"),
	RoleArn: jsii.String("roleArn"),

	// the properties below are optional
	GlueConfiguration: &GlueConfigurationProperty{
		DatabaseName: jsii.String("databaseName"),
		TableName: jsii.String("tableName"),
	},
}

Properties ​

bucketstringbucketstrbucketStringBucketstringBucket*stringrequired#
The name of the S3 bucket to which dataset contents are delivered.
glueConfigurationoptionalIResolvable | CfnDataset.GlueConfigurationPropertyglue_configurationoptionaltyping.Union[IResolvable, GlueConfigurationProperty]glueConfigurationoptionalIResolvableGlueConfigurationoptionalIResolvableGlueConfigurationoptionalinterface{}#
Configuration information for coordination with AWS Glue , a fully managed extract, transform and load (ETL) service.
keystringkeystrkeyStringKeystringKey*stringrequired#
The key of the dataset contents object in an S3 bucket.
notes

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

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 same scheduleTime but different versionId s. This means that one dataset content overwrites the other.

roleArnstringrole_arnstrroleArnStringRoleArnstringRoleArn*stringrequired#
The ARN of the role that grants ITA permission to interact with your Amazon S3 and AWS Glue resources.