Hydra ETL
Build your first job

Open source · AGPL-3.0 · Python 3.9+

Declarative ETL pipelines, validated before they run

Hydra ETL turns data pipelines into readable YAML. Check them with one command, then run them from the terminal, a REST API or a visual editor, with a single pip install and nothing else to deploy.

pip install "hydra-etl[server]"

Then run hdrctl serve: Studio and API open on localhost:5678. No Node, no database, no broker.

Hydra Studio showing a job with three CSV sources joined and written to one destination
Hydra Studio: build a job on the canvas, get YAML out.

Why Hydra ETL

Readable

A pipeline is a set of short YAML manifests that anyone on the team can review in a pull request. No Python glue to maintain.

Validated before it runs

hdrctl validate checks sources, steps, types and destinations before a single row is read or written.

One job, three interfaces

The same manifests run from the terminal, a REST API or the visual Studio. Build with the mouse, get YAML out.

A job in four small files

A job connects one source to one destination through an ordered list of transformations. Each manifest answers a single question: where the data comes from, how it is reshaped, where it goes, and which source feeds which destination.

  • sources.yaml: where the data comes from
  • transformations.yaml: how it is reshaped
  • destinations.yaml: where it goes
  • pipeline.yaml: which source feeds which destination
Build your first job →
transformations.yaml
version: "1.0"
steps:
  - cast:
      mapping:
        amount: float
  - filter:
      expr: "amount > 0"
  - aggregate:
      by: [name]
      agg:
        total: { func: sum, col: amount }
terminal
hdrctl init my_job        # scaffold from a template
hdrctl validate my_job    # strict checks, no data touched
hdrctl run my_job         # execute

How Hydra compares

Hydra targets file-and-database pipelines that should stay readable and run without extra infrastructure. It is not a replacement for every tool below.

ToolPipelines defined inScopeTo get startedComparison
Hydra ETLYAMLExtract, transform, load + workflowspip install hydra-etl
AirflowPythonOrchestrationScheduler, webserver, metadata DB Airflow vs Hydra
dbtSQL + YAMLTransform in the warehouseA data warehouse dbt vs Hydra
AirbyteUI / configExtract & loadDocker / Kubernetes Airbyte vs Hydra
DagsterPythonOrchestrationPython code + daemon Dagster vs Hydra
PrefectPythonOrchestrationPython code + server or cloud Prefect vs Hydra

Describe your first pipeline in minutes

0 / 0 on this page