Tutorials
Quick: pipeline from Postgres to S3
Nightly extract, validated, written to object storage.
Short recipe — the smallest useful cross-system pipeline. Assumes a connected Postgres source and an S3 destination; see Connect data for both setups.
Steps
- In Pipeline Studio, describe it: "Every night, extract new orders from Postgres and write them to S3 as a dated file."
- Check the proposal graph: source node on the Postgres endpoint in incremental mode, optional transform for shaping, destination node on the S3 endpoint in append mode.
- Confirm the read scope on the source node — one table, new rows only. Full rereads every night are the classic first-pipeline waste.
- Confirm the write target on the destination node — bucket, prefix, dated filenames — and the append mode.
- Put a node-level approval on the destination node. First writes to a new target always pass a human.
- Dry-run: inspect the preview rows, then commit and verify the file landed in S3 with the expected shape and count. Check three things at the other end: row count matches the preview, the filename carries today's date, and one spot-checked row matches its source.
Image: S3 target with the dated file beside the preview count it was verified against.
{
"kind": "destination",
"dataEndpointName": "s3.order-extracts",
"source": "new_orders",
"writeMode": "append"
}Image: three-node graph (source, optional transform, destination) with the approval gate on the write.
Done means tonight's file lands without you watching. Node detail in Workflow nodes; write rules in Write policies.