Skip to main content

Tooling to assist with migrating from Airflow to Dagster.

Project description

Airlift

Airlift is a toolkit for observing Airflow instances from within Dagster and for accelerating the migration of Airflow DAGs to Dagster assets.

Goals

  • Observe Airflow DAGs and their execution history with no changes to Airflow code
  • Model and observe assets orchestrated by Airflow with no changes to Airflow code
  • Enable a migration process that
    • Can be done task-by-task in any order with minimal coordination
    • Has task-by-task rollback to reduce risk
    • That retains Airflow DAG structure and execution history during the migration

Process

  • Peer
    • Observe an Airflow instance from within a Dagster Deployment via the Airflow REST API.
    • This loads every Airflow DAG as an asset definition and creates a sensor that polls Airflow for execution history.
  • Observe
    • Add a mapping that maps the Airflow DAG and task id to a basket of definitions that you want to observe. (e.g. render the full lineage the dbt models an Airflow task orchestrates)
    • The sensor used for peering also polls for task execution history, and adds materializations to an observed asset when its corresponding task successfully executes
  • Migrate
    • Selectively move execution of Airflow tasks to Dagster Software Defined Assets

Compatibility

REST API Availability

Airlift depends on the the availability of Airflow’s REST API. Airflow’s REST API was made stable in its 2.0 release (Dec 2020) and was introduced experimentally in 1.10 in August 2018. Currently Airflow requires the availability of the REST API.

  • OSS: Stable as of 2.00
  • MWAA
    • Note: only available in Airflow 2.4.3 or later on MWAA.
  • Cloud Composer: No limitations as far as we know.
  • Astronomer: No limitations as far as we know.

Using the tutorial

We've provided sample code in a tutorial which can be found here

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dagster_airlift-0.0.10.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

dagster_airlift-0.0.10-py3-none-any.whl (32.1 kB view details)

Uploaded Python 3

File details

Details for the file dagster_airlift-0.0.10.tar.gz.

File metadata

  • Download URL: dagster_airlift-0.0.10.tar.gz
  • Upload date:
  • Size: 27.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.11.1 requests/2.32.3 setuptools/70.3.0 requests-toolbelt/1.0.0 tqdm/4.66.4 CPython/3.10.14

File hashes

Hashes for dagster_airlift-0.0.10.tar.gz
Algorithm Hash digest
SHA256 bbd80311e347dcde2ae1bd7184c46a6f3b57ced33fddb822599694924406c0ed
MD5 a22bcd0fe5496f179f470e166d556e5a
BLAKE2b-256 aee5d42f71017d496bcc40e769ade1d289801496487912da841fc0dcf2054633

See more details on using hashes here.

File details

Details for the file dagster_airlift-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: dagster_airlift-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 32.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.11.1 requests/2.32.3 setuptools/70.3.0 requests-toolbelt/1.0.0 tqdm/4.66.4 CPython/3.10.14

File hashes

Hashes for dagster_airlift-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 c615a0706a72c02a6d469ca71f23eda61a3e2e60cb49c679f85708196c953204
MD5 773769901e0591ed3b33099c7a9ba6bc
BLAKE2b-256 93566acf5c5775560673714ac7a2891be168ad2678236476324125210cc89a4a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page