StorageParameter

class aws_cdk.aws_glue_alpha.StorageParameter(key, value)

Bases: object

(experimental) A storage parameter. The list of storage parameters available is not exhaustive and other keys may be used.

If you would like to specify a storage parameter that is not available as a static member of this class, use the StorageParameter.custom method.

The list of storage parameters currently known within the CDK is listed.

See:

https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_TABLE.html#r_CREATE_EXTERNAL_TABLE-parameters - under “TABLE PROPERTIES”

Stability:

experimental

ExampleMetadata:

infused

Example:

# my_database: glue.Database

glue.S3Table(self, "MyTable",
    storage_parameters=[
        glue.StorageParameter.skip_header_line_count(1),
        glue.StorageParameter.compression_type(glue.CompressionType.GZIP),
        glue.StorageParameter.custom("separatorChar", ",")
    ],
    # ...
    database=my_database,
    columns=[glue.Column(
        name="col1",
        type=glue.Schema.STRING
    )],
    data_format=glue.DataFormat.JSON
)
Parameters:
  • key (str) –

  • value (str) –

Stability:

experimental

Attributes

key

experimental

Type:

stability

value

experimental

Type:

stability

Static Methods

classmethod column_count_mismatch_handling(value)

(experimental) Identifies if the file contains less or more values for a row than the number of columns specified in the external table definition.

This property is only available for an uncompressed text file format.

Parameters:

value (ColumnCountMismatchHandlingAction) –

Stability:

experimental

Return type:

StorageParameter

classmethod compression_type(value)

(experimental) The type of compression used on the table, when the file name does not contain an extension.

This value overrides the compression type specified through the extension.

Parameters:

value (CompressionType) –

Stability:

experimental

Return type:

StorageParameter

classmethod custom(key, value)

(experimental) A custom storage parameter.

Parameters:
  • key (str) –

    • The key of the storage parameter.

  • value (Any) –

    • The value of the storage parameter.

Stability:

experimental

Return type:

StorageParameter

classmethod data_cleansing_enabled(value)

(experimental) Determines whether data handling is on for the table.

Parameters:

value (bool) –

Stability:

experimental

Return type:

StorageParameter

classmethod invalid_char_handling(value)

(experimental) Specifies the action to perform when query results contain invalid UTF-8 character values.

Parameters:

value (InvalidCharHandlingAction) –

Stability:

experimental

Return type:

StorageParameter

classmethod num_rows(value)

(experimental) A property that sets the numRows value for the table definition.

To explicitly update an external table’s statistics, set the numRows property to indicate the size of the table. Amazon Redshift doesn’t analyze external tables to generate the table statistics that the query optimizer uses to generate a query plan. If table statistics aren’t set for an external table, Amazon Redshift generates a query execution plan based on an assumption that external tables are the larger tables and local tables are the smaller tables.

Parameters:

value (Union[int, float]) –

Stability:

experimental

Return type:

StorageParameter

classmethod numeric_overflow_handling(value)

(experimental) Specifies the action to perform when ORC data contains an integer (for example, BIGINT or int64) that is larger than the column definition (for example, SMALLINT or int16).

Parameters:

value (NumericOverflowHandlingAction) –

Stability:

experimental

Return type:

StorageParameter

classmethod orc_schema_resolution(value)

(experimental) A property that sets the column mapping type for tables that use ORC data format.

This property is ignored for other data formats. If this property is omitted, columns are mapped by OrcColumnMappingType.NAME by default.

Parameters:

value (OrcColumnMappingType) –

Default:

OrcColumnMappingType.NAME

Stability:

experimental

Return type:

StorageParameter

classmethod replacement_char(value)

(experimental) Specifies the replacement character to use when you set INVALID_CHAR_HANDLING to REPLACE.

Parameters:

value (str) –

Stability:

experimental

Return type:

StorageParameter

classmethod serialization_null_format(value)

(experimental) A property that sets number of rows to skip at the beginning of each source file.

Parameters:

value (str) –

Stability:

experimental

Return type:

StorageParameter

classmethod skip_header_line_count(value)

(experimental) The number of rows to skip at the top of a CSV file when the table is being created.

Parameters:

value (Union[int, float]) –

Stability:

experimental

Return type:

StorageParameter

classmethod surplus_bytes_handling(value)

(experimental) Specifies how to handle data being loaded that exceeds the length of the data type defined for columns containing VARBYTE data.

By default, Redshift Spectrum sets the value to null for data that exceeds the width of the column.

Parameters:

value (SurplusBytesHandlingAction) –

Stability:

experimental

Return type:

StorageParameter

classmethod surplus_char_handling(value)

(experimental) Specifies how to handle data being loaded that exceeds the length of the data type defined for columns containing VARCHAR, CHAR, or string data.

By default, Redshift Spectrum sets the value to null for data that exceeds the width of the column.

Parameters:

value (SurplusCharHandlingAction) –

Stability:

experimental

Return type:

StorageParameter

classmethod write_kms_key_id(value)

(experimental) You can specify an AWS Key Management Service key to enable Server–Side Encryption (SSE) for Amazon S3 objects.

Parameters:

value (str) –

Stability:

experimental

Return type:

StorageParameter

classmethod write_max_file_size_mb(value)

(experimental) A property that sets the maximum size (in MB) of each file written to Amazon S3 by CREATE EXTERNAL TABLE AS.

The size must be a valid integer between 5 and 6200. The default maximum file size is 6,200 MB. This table property also applies to any subsequent INSERT statement into the same external table.

Parameters:

value (Union[int, float]) –

Stability:

experimental

Return type:

StorageParameter

classmethod write_parallel(value)

(experimental) A property that sets whether CREATE EXTERNAL TABLE AS should write data in parallel.

When ‘write.parallel’ is set to off, CREATE EXTERNAL TABLE AS writes to one or more data files serially onto Amazon S3. This table property also applies to any subsequent INSERT statement into the same external table.

Parameters:

value (WriteParallel) –

Default:

WriteParallel.ON

Stability:

experimental

Return type:

StorageParameter