AI/TLDR

Dagster

Build, run, and observe data and ML pipelines as declarative Python assets

GPU & Compute CloudsOpen source
Language
Python
License
Apache-2.0
$uv add dagster dagster-webserver dagster-dg-cli

Overview

Dagster is an open-source orchestrator for data and machine learning pipelines. Instead of writing tasks, you declare the data assets you want to build (tables, datasets, ML models, reports) as Python functions, and Dagster figures out when to run them and how to keep them up to date.

It is built for data and ML engineers who manage pipelines across the whole development lifecycle, from local development and unit tests through staging and production. The same asset definitions run in each environment, which makes pipelines easier to test and review.

As a compute-orchestration tool, Dagster centralizes pipeline metadata in one place. It tracks lineage between assets, exposes a web UI to inspect runs, and offers observability so you can spot data quality issues and performance problems early.

What it does

  • Declarative asset model: define data and ML outputs as Python functions and let Dagster schedule and materialize them
  • Built-in lineage that maps dependencies between assets, with a graph view in the web UI
  • Observability, diagnostics, and cataloging from a single control plane
  • Designed for the full lifecycle: local dev, unit tests, integration tests, staging, and production
  • A growing library of integrations for common data stack tools
  • Web UI (dagster-webserver) for inspecting pipelines, runs, and asset status

Getting started

Dagster runs on Python 3.9 through 3.14 and installs from PyPI. The example below mirrors the quickstart and a minimal asset graph from the project README.

Install Dagster

Add Dagster along with the web UI and CLI packages. The README uses uv.

bashbash
uv add dagster dagster-webserver dagster-dg-cli

Define your assets

Declare each data asset as a Python function decorated with @dg.asset. Dependencies are passed as function arguments.

pythonpython
import dagster as dg
import pandas as pd

@dg.asset
def country_populations() -> pd.DataFrame:
    df = pd.read_html("https://tinyurl.com/mry64ebh")[0]
    df.columns = ["country", "pop2022", "pop2023", "change", "continent", "region"]
    df["change"] = df["change"].str.rstrip("%").astype("float")
    return df

@dg.asset
def continent_stats(country_populations: pd.DataFrame) -> pd.DataFrame:
    return country_populations.groupby("continent").sum()

Explore in the web UI

Open the docs and tutorial to load your assets into Dagster's web UI, where you can view the asset graph, run pipelines, and inspect lineage.

Commands and code are distilled from the project's own documentation — always check the official repo for the latest.

When to use it

  • Orchestrate ETL and analytics pipelines that build and refresh data warehouse tables
  • Train and update machine learning models on a schedule with tracked dependencies
  • Track lineage and observe data quality across a multi-tool data stack
  • Develop and unit-test pipelines locally before promoting the same code to production

How Dagster compares

Dagster alongside other open-source gpu & compute clouds tools AI/TLDR tracks, ranked by GitHub stars.

ToolStarsWhat it does
Ray★ 43.8kA distributed computing framework that scales Python and ML workloads for training, tuning, data processing, and serving.
Prefect★ 23.8kA Python-native workflow orchestration tool for scheduling, running, and monitoring data and ML pipelines.
Dagster★ 16.1kBuild, run, and observe data and ML pipelines as declarative Python assets
Kubeflow★ 15.9kA Kubernetes toolkit that brings together pipelines, notebooks, and training operators for running ML workflows at scale.
Kedro★ 11kPython framework for production-ready data engineering and data science pipelines, hosted by the LF AI & Data Foundation: a project template, a Data Catalog of connectors, and a dependency-resolving pipeline abstraction.
SkyPilot★ 10.6kA framework that runs AI jobs across clouds and Kubernetes, automatically finding and provisioning the cheapest available GPUs.
Metaflow★ 10.3kA Python framework from Netflix for building and running data science and ML workflows that scale from laptop to cloud.
Flyte★ 7.5kA Kubernetes-native workflow engine for building reproducible, versioned ML and data pipelines.