Grammar element · destinations.<id>.type
type chooses the writer
Three correct CSV declarations. The discriminator selects who interprets connection and load.
destinations.yaml4 steps
What type selects
The connector responsible for opening the target and loading final rows.
What destinations.<id>.type is
Destination type tells Hydra which connector must write the final rows.
It does not select the destination identifier or loading mode. Those remain separate so one connector family can serve many targets and policies.
What it contains
- One normalized name — The value is stripped and lower-cased.
- A registered writer — The registry builds the matching destination connector.
- A contract boundary — That connector owns the meaning of
connectionandload.
Reading and writing share a vocabulary
Sources and destinations use the same type slot, but the selected connector is built for a direction. Here it must accept final rows and apply the declared load policy.
Run the complete example
Copy this manifest from the verified documentation project, then run it from the repository root.
version: "1.0"
destinations:
dest_output:
type: csv
connection:
base_path: "examples/tutorial/dsl-elements/out"
load:
table: result.csv
mode: replace
batch_size: 10000
hdrctl run examples/tutorial/dsl-elements
✅ Pipeline completed successfully in 2.6s Rows read : 30 Rows written: 6
The relevant command syntax, copied from hdrctl run --help:
hdrctl run [PATH] -s, --sources FILE explicit path to sources.yaml -d, --destinations FILE explicit path to destinations.yaml -t, --transformations FILE explicit path to transformations.yaml -P, --param KEY=VALUE override a parameter, repeatable