Hydra ETL
Build your first job
Hydra DSL3 · Destinationsload
Grammar element · destinations.<id>.load

load binds a target to a write policy

Three executable CSV policies. The same writer can replace, append, or change batch size.

destinations.yaml4 steps

      
What the writer receives

A target object, a mode, optional key columns, and a batch size.

✓ replace policy ready

What destinations.<id>.load is

load is the concrete write request passed to a destination connector.

It does not establish the connection or choose which destination the pipeline uses. It starts after pipeline.to and connector construction have resolved.

What it contains

  • A targettable, or the collection alias for MongoDB.
  • A modeappend, replace, or upsert.
  • Delivery controls — Optional upsert keys and a batch size from 10 to 100,000.

The mode describes this run

Connection tells Hydra where a writer can reach. load says what this particular run must do there, making append, replace, and upsert explicit at the edge.

Load applies a policy to final rows Six final rows pass through replace mode and become the new contents of result.csv. 6 final rowspipeline output load: replacetarget policy result.csvnew contents The data is already final; load controls only its arrival.
Target and policy travel together in one block.

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

Close by

0 / 0 on this page