Self-Hosted or Managed?

Choosing Self-Hosted Versus Managed for BookNest

Azure 6 's offering is Fabric's Apache Airflow 129 job, the successor to Data Factory's Workflow Orchestration Manager. It still runs Airflow 2.10.5 and consumes 5 or 10 Fabric capacity units while its pool is up. For BookNest's single daily DAG, about 26 seconds of task time a day, the options compare like this:

BookNest's daily pipeline, self-hosted or managed (list prices, October 2026; managed rows not run here)
Option You still operate Fixed cost a month Airflow
Docker Compose 514 (Airflow in Docker Compose) Everything A host with 2 GB free 3.3.2
Amazon MWAA 24 mw1.small DAGs, packages, IAM $364.56 plus workers 3.3.1
Google Gen 3 DAGs, packages, IAM DCU-hours at $0.06 3.3.1
Astro 17,728 Developer DAGs, Runtime image $260.40 plus worker time 3.3.2
Fabric Airflow job DAGs, packages 5-10 capacity units 2.10.5
Dagster 177,056 + Solo, Hybrid Code and agent About $22 n/a

Managed Airflow bills for an always-on scheduler, so one small DAG costs about as much as fifty. What the money buys is upgrades, a backed-up metadata database, autoscaling, monitoring and single sign-on. Ask who is on call when the stack's one owner is away; run the orchestrator in the cloud that holds your data, so tasks use IAM roles instead of long-lived keys; check how far behind Apache each service runs; and keep DAGs portable, since MWAA Serverless YAML and Fabric items do not move elsewhere.

BookNest stays self-hosted for now: one DAG, a database on its own server, and a team that knows the stack. A second team or a promised deadline (SLAs and Deadline Alerts) would change that. Because the DAGs, the dbt 37,942 project and booknest_pipeline.py are plain Airflow and Python, moving to MWAA or Astro means copying files, not rewriting.