Creating DAGs
Via CLI
ash proai dag create user-processing-dag
Via YAML
dag:
name: user-processing-dag
description: "User data processing workflow"
schedule: "0 3 * * *"
nodes:
- id: extract
type: source
connector: prod-postgres
query: "SELECT * FROM users"
- id: validate
type: transform
depends_on: [extract]
sql: "SELECT * FROM extract WHERE email IS NOT NULL"
- id: enrich
type: transform
depends_on: [validate]
sql: "SELECT * FROM validate LEFT JOIN geo_data ON validate.country = geo_data.code"
- id: load
type: destination
depends_on: [enrich]
connector: prod-snowflake
table: enriched_users
`
## Via Designer
1. Open the DAG Builder
2. Add nodes from the component palette
3. Connect nodes by drawing edges
4. Configure each node's properties
5. Validate and save
## See Also
- [Dependencies](/docs/dag-builder/dependencies) — Node dependencies
- [Conditionals](/docs/dag-builder/conditionals) — Conditional branching