Using within your ETL System#

Conceptually you can integrate Hamilton within your existing ETL system quite easily:

Compatibility Matrix#

Title#

Framework / Scheduler

Compatibility

Airflow

βœ… (see [airflow example](https://github.com/DAGWorks-Inc/hamilton/tree/main/examples/airflow))

Dagster

βœ…

Prefect

βœ… (see [prefect example](https://github.com/DAGWorks-Inc/hamilton/tree/main/examples/prefect))

Kubeflow Pipelines

βœ…

CRON

βœ…

dbt

βœ… (see dbt example)

kubernetes

βœ… but you need to setup kubernetes to run an image that can run python code - e.g. see Running a python application on kubernetes

docker

βœ… but you need to setup a docker image that can execute python code.

… in general if it runs python 3.7+ …

βœ…

ETL Recipe#

  1. Write Hamilton functions & β€œdriver” code.

  2. Publish your Hamilton functions in a package, or import via other means (e.g. checkout a repository & include in python path).

  3. Include sf-hamilton as a python dependency

  4. Have your ETL system execute your β€œdriver” code.

  5. Profit.