S3 CSV source
tap-s3-csv discovers CSV objects in S3 and maps matching object keys to
target tables.
Source |
Status |
Important limitation |
|---|---|---|
S3 CSV |
Experimental |
Every CSV field is emitted as a string. |
Authentication
Credential resolution follows the AWS profile/environment/instance-role chain. Prefer an instance role or temporary profile. Static access keys can be supplied and vault-encrypted but increase secret-management risk.
Setting |
Environment fallback |
Behaviour |
|---|---|---|
|
|
Selects a named profile when no static key pair is configured. |
|
|
Static access-key ID; configure it together with
|
|
|
Static secret; encrypt it and never commit the clear-text value. |
|
|
Session token required with temporary static credentials. |
When none of these settings or environment variables is supplied, Boto3 uses its default credential chain, including workload and instance roles.
Configuration
id: "csv_orders"
name: "Orders CSV feed"
type: "tap-s3-csv"
owner: "data-platform@example.com"
db_conn:
bucket: "orders-feed"
start_date: "2024-01-01"
aws_profile: "pipelinewise"
target: "snowflake"
batch_size_rows: 20000
stream_buffer_size: 0
schemas:
- source_schema: "s3_feeds"
target_schema: "s3_feeds"
tables:
- table_name: "orders"
s3_csv_mapping:
search_prefix: "orders/"
search_pattern: "^orders_.*[.]csv$"
key_properties: ["id"]
delimiter: ","
Setting |
Required |
Default |
Effect |
|---|---|---|---|
|
Yes |
— |
Regular expression matched against candidate object keys. |
|
No |
Empty |
Limits the S3 listing before pattern matching. |
|
No |
None |
Defines fields used to deduplicate records. |
|
No |
|
Selects the one-character CSV delimiter. |
Without key properties, repeated or overlapping files can create duplicates. Validate object naming, headers, quoting, and malformed-row handling before enabling a schedule.