Class S3Table
java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.Resource
software.amazon.awscdk.services.glue.TableBase
software.amazon.awscdk.services.glue.S3Table
- All Implemented Interfaces:
IEnvironmentAware,IResource,ITable,software.amazon.jsii.JsiiSerializable,software.constructs.IConstruct,software.constructs.IDependable
@Generated(value="jsii-pacmak/1.139.0 (build 26a6b54)",
date="2026-09-17T14:54:05.083Z")
@Stability(Stable)
public class S3Table
extends TableBase
A Glue table that targets a S3 dataset.
Example:
Database myDatabase;
S3Table.Builder.create(this, "MyTable")
.database(myDatabase)
.columns(List.of(Column.builder()
.name("data")
.type(Schema.STRING)
.build()))
.partitionKeys(List.of(Column.builder()
.name("date")
.type(Schema.STRING)
.build()))
.dataFormat(DataFormat.JSON)
.partitionProjection(Map.of(
"date", PartitionProjectionConfiguration.date(DatePartitionProjectionConfigurationProps.builder()
.min("NOW-3YEARS")
.max("NOW")
.format("yyyy-MM-dd")
.build())))
.build();
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$DefaultNested classes/interfaces inherited from interface software.amazon.awscdk.IResource
IResource.Jsii$DefaultNested classes/interfaces inherited from interface software.amazon.awscdk.services.glue.ITable
ITable.Jsii$Default -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedS3Table(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protectedS3Table(software.amazon.jsii.JsiiObjectRef objRef) S3Table(software.constructs.Construct scope, String id, S3TableProps props) -
Method Summary
Modifier and TypeMethodDescriptionprotected StringS3 bucket in which the table's data resides.The KMS key used for client-side encryption of the table's data, ifclientSideEncryptionwas configured.This table's partition indexes.S3 Key Prefix under which this table's files are stored in S3.ARN of this table.Name of this table.protected CfnTablegrantRead(IGrantable grantee) Grant read permissions to the table and the underlying data stored in S3 to an IAM principal.grantReadWrite(IGrantable grantee) Grant read and write permissions to the table and the underlying data stored in S3 to an IAM principal.grantWrite(IGrantable grantee) Grant write permissions to the table and the underlying data stored in S3 to an IAM principal.Methods inherited from class software.amazon.awscdk.services.glue.TableBase
addPartitionIndex, fromTableArn, fromTableAttributes, getColumns, getCompressed, getDatabase, getDataFormat, getHasEncryptedData, getParameters, getPartitionKeys, getPartitionProjection, getStorageParameters, grant, grantToUnderlyingResourcesMethods inherited from class software.amazon.awscdk.Resource
applyCrossStackReferenceStrength, applyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isOwnedResource, isResource, withMethods inherited from class software.constructs.Construct
getNode, isConstruct, toStringMethods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface software.constructs.IConstruct
getNode, withMethods inherited from interface software.amazon.awscdk.interfaces.IEnvironmentAware
getEnvMethods inherited from interface software.amazon.awscdk.IResource
applyRemovalPolicy, getStackMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
PROPERTY_INJECTION_ID
Uniquely identifies this class.
-
-
Constructor Details
-
S3Table
protected S3Table(software.amazon.jsii.JsiiObjectRef objRef) -
S3Table
protected S3Table(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
S3Table
@Stability(Stable) public S3Table(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull S3TableProps props) - Parameters:
scope- This parameter is required.id- This parameter is required.props- This parameter is required.
-
-
Method Details
-
generateS3PrefixForGrant
-
grantRead
Grant read permissions to the table and the underlying data stored in S3 to an IAM principal.[disable-awslint:no-grants]
-
grantReadWrite
Grant read and write permissions to the table and the underlying data stored in S3 to an IAM principal.[disable-awslint:no-grants]
- Specified by:
grantReadWritein classTableBase- Parameters:
grantee- the principal. This parameter is required.
-
grantWrite
Grant write permissions to the table and the underlying data stored in S3 to an IAM principal.[disable-awslint:no-grants]
- Specified by:
grantWritein classTableBase- Parameters:
grantee- the principal. This parameter is required.
-
getBucket
S3 bucket in which the table's data resides. -
getS3Prefix
S3 Key Prefix under which this table's files are stored in S3. -
getTableArn
ARN of this table.- Specified by:
getTableArnin interfaceITable- Specified by:
getTableArnin classTableBase
-
getTableName
Name of this table.- Specified by:
getTableNamein interfaceITable- Specified by:
getTableNamein classTableBase
-
getTableResource
- Specified by:
getTableResourcein classTableBase
-
getClientSideEncryptionKey
The KMS key used for client-side encryption of the table's data, ifclientSideEncryptionwas configured. Otherwise,undefined.For server-side (bucket) encryption, read
bucket.encryptionKeyinstead. -
getPartitionIndexes
This table's partition indexes.- Specified by:
getPartitionIndexesin classTableBase
-