S3CsvSource - AWS Glue

S3CsvSource

Specifies a command-separated value (CSV) data store stored in Amazon S3.

Contents

Name

The name of the data store.

Type: String

Pattern: ([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\r\n])*

Required: Yes

Paths

A list of the Amazon S3 paths to read from.

Type: Array of strings

Pattern: ([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\S\r\n"'])*

Required: Yes

QuoteChar

Specifies the character to use for quoting. The default is a double quote: '"'. Set this to -1 to turn off quoting entirely.

Type: String

Valid Values: quote | quillemet | single_quote | disabled

Required: Yes

Separator

Specifies the delimiter character. The default is a comma: ",", but any other character can be specified.

Type: String

Valid Values: comma | ctrla | pipe | semicolon | tab

Required: Yes

AdditionalOptions

Specifies additional connection options.

Type: S3DirectSourceAdditionalOptions object

Required: No

CompressionType

Specifies how the data is compressed. This is generally not necessary if the data has a standard file extension. Possible values are "gzip" and "bzip").

Type: String

Valid Values: gzip | bzip2

Required: No

Escaper

Specifies a character to use for escaping. This option is used only when reading CSV files. The default value is none. If enabled, the character which immediately follows is used as-is, except for a small set of well-known escapes (\n, \r, \t, and \0).

Type: String

Pattern: ([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\S\r\n])*

Required: No

Exclusions

A string containing a JSON list of Unix-style glob patterns to exclude. For example, "[\"**.pdf\"]" excludes all PDF files.

Type: Array of strings

Pattern: ([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\S\r\n"'])*

Required: No

GroupFiles

Grouping files is turned on by default when the input contains more than 50,000 files. To turn on grouping with fewer than 50,000 files, set this parameter to "inPartition". To disable grouping when there are more than 50,000 files, set this parameter to "none".

Type: String

Pattern: ([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\S\r\n"'])*

Required: No

GroupSize

The target group size in bytes. The default is computed based on the input data size and the size of your cluster. When there are fewer than 50,000 input files, "groupFiles" must be set to "inPartition" for this to take effect.

Type: String

Pattern: ([\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF]|[^\S\r\n"'])*

Required: No

MaxBand

This option controls the duration in milliseconds after which the s3 listing is likely to be consistent. Files with modification timestamps falling within the last maxBand milliseconds are tracked specially when using JobBookmarks to account for Amazon S3 eventual consistency. Most users don't need to set this option. The default is 900000 milliseconds, or 15 minutes.

Type: Integer

Valid Range: Minimum value of 0.

Required: No

MaxFilesInBand

This option specifies the maximum number of files to save from the last maxBand seconds. If this number is exceeded, extra files are skipped and only processed in the next job run.

Type: Integer

Valid Range: Minimum value of 0.

Required: No

Multiline

A Boolean value that specifies whether a single record can span multiple lines. This can occur when a field contains a quoted new-line character. You must set this option to True if any record spans multiple lines. The default value is False, which allows for more aggressive file-splitting during parsing.

Type: Boolean

Required: No

OptimizePerformance

A Boolean value that specifies whether to use the advanced SIMD CSV reader along with Apache Arrow based columnar memory formats. Only available in AWS Glue version 3.0.

Type: Boolean

Required: No

OutputSchemas

Specifies the data schema for the S3 CSV source.

Type: Array of GlueSchema objects

Required: No

Recurse

If set to true, recursively reads files in all subdirectories under the specified paths.

Type: Boolean

Required: No

SkipFirst

A Boolean value that specifies whether to skip the first data line. The default value is False.

Type: Boolean

Required: No

WithHeader

A Boolean value that specifies whether to treat the first line as a header. The default value is False.

Type: Boolean

Required: No

WriteHeader

A Boolean value that specifies whether to write the header to output. The default value is True.

Type: Boolean

Required: No

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: