Class: Aws::S3Tables::Types::DestinationTable

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb

Overview

The table that a migration creates in a table bucket and migrates the source into.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#encryption_configuration ⇒ Types::EncryptionConfiguration

The encryption configuration for the table. If you don't specify one, the table uses the default encryption configuration of its table bucket. If you specify an encryption configuration, the migration role must have the s3tables:PutTableEncryption permission. If you choose SSE-KMS, the migration role must have the kms:DescribeKey, kms:GenerateDataKey and kms:Decrypt permissions on the KMS key, and the S3 Tables maintenance principal must have access to it. For more information, see Permissions requirements for S3 Tables SSE-KMS encryption.



548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#iceberg_sort_order ⇒ Types::IcebergSortOrder

The sort order of the rows within each data file that the migration writes. A sort order can have up to five fields, each naming a column of the schema that you specify by its field ID, so to use a sort order you must specify a schema. StartTableMigration rejects a field that names no column of the schema, or whose transform doesn't fit the column's type.



548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#name ⇒ String

The name of the table to create.

Returns:

  • (String)


548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#namespace ⇒ String

The namespace to create the table in.

Returns:

  • (String)


548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#properties ⇒ Types::MigrationTableProperties

The properties of the destination table, such as its Iceberg format version and the format of its data files.



548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#schema ⇒ Types::IcebergSchemaV2

The schema of the table to create. If you don't specify a schema, the migration infers it from the source table, with every column optional. A schema that you specify must include every partition column of the source table. It can leave out other columns only if unmatchedSourceFieldsPolicy is drop. A struct column must have the same fields as the source column. Column default values aren't supported. If you mark a column as required, every source object must have a value for it: an object with a null value in a required column fails to migrate. The destination table is partitioned in the same way as the source table. To specify fields in icebergSortOrder, you must specify a schema.



548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#storage_class_configuration ⇒ Types::StorageClassConfiguration

The storage class configuration for the table. If you don't specify one, the table inherits the storage class configuration of its table bucket. If you specify a storage class configuration, the migration role must have the s3tables:PutTableStorageClass permission.



548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#table_bucket_arn ⇒ String

The Amazon Resource Name (ARN) of the table bucket to create the table in.

Returns:

  • (String)


548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end

#tags ⇒ Hash<String,String>

The tags to add to the table. A tag is a key-value pair that you apply to your resources. For more information, see Tagging for cost allocation or attribute-based access control (ABAC). If you specify tags, the migration role must have the s3tables:TagResource permission.

Returns:

  • (Hash<String,String>)


548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'gems/aws-sdk-s3tables/lib/aws-sdk-s3tables/types.rb', line 548

class DestinationTable < Struct.new(
  :table_bucket_arn,
  :namespace,
  :name,
  :encryption_configuration,
  :storage_class_configuration,
  :tags,
  :properties,
  :schema,
  :iceberg_sort_order)
  SENSITIVE = []
  include Aws::Structure
end