Skip to content

Jobs & scheduling ​

Data Engineering → Jobs is where anything gets scheduled: ingestion, dbt and cube refreshes, in one ordered graph.

Nothing runs until it is scheduled or triggered. A deployed pipeline or a finished dbt model does not refresh by itself.

Job kinds ​

TemplateWhat it doesNotes
Ingest onlySchedules or triggers one Connect pipelineSets the pipeline's own schedule. A blank cron removes the schedule.
Transform onlyRuns dbt snapshots / bronze / silver / gold modelsChoose by layer, folder or individual model
Ingest + TransformPipeline → dbt → (optional) Refresh cubesTakes over the pipeline's own schedule so data isn't loaded twice

Building a job ​

  1. + Create job → pick a template.
  2. On the canvas, add nodes:
    • Ingestion: a deployed pipeline.
    • dbt: Snapshots / Bronze / Silver / Gold, selecting All, a Folder or a Model. Set the Engine per node (Spark by default, or Trino).
    • Refresh cubes: add this after gold if you use materialized cubes (Semantic Layer (Cubes)).
  3. Turn on Run dbt tests (recommended).
  4. Trigger: Scheduled (Hourly / Daily / Weekly / Monthly / Yearly / custom cron, with a timezone) or on demand.
  5. Save. The job appears in orchestration within about 10–30 seconds. For big dbt projects the first parse can take a few minutes.

Guardrails you may hit ​

MessageMeaning
409 conflictA pipeline or model can belong to only one job. Remove it from the other job first.
422 zero / unknown modelsYour selection matches nothing in the current project. Check the names, and push your dbt changes.
Save refused: pipeline not deployed / workflow never publishedDeploy the pipeline first
Can't trigger: already runningOne run of a job at a time

Timing rules ​

  • The first run is the next cron slot in the chosen timezone. Missed slots are not replayed (no catch-up).
  • Jobs created before the timezone fix ran on UTC regardless of the timezone picked. Re-save older jobs once after an upgrade and check the next-run time.
  • ⚠️ Re-save a job after changing its dbt models. Otherwise it may run an old copy of the project. The symptom is a run that "succeeds" in milliseconds with zero tasks. Newer releases fail loudly instead.
  • Schedule big ingestion outside source business hours, and stagger heavy jobs rather than starting them all at 00:00.

Monitoring ​

  • Job detail: Trigger now, run history with scheduled / manual / backfill badges, and View log per task.
  • Atlas → Monitoring (pipelines) and Atlas → Runs (dbt).
  • A skipped step reading no work due is normal. Nothing was due, or a backfill is handling the table.
  • Run times may be shown in UTC on some screens. Check the timezone label.

Troubleshooting ​

SymptomCauseDo
Job never appears in orchestrationSync delay, or a slow first parse on big projectsWait 1–3 min; contact your admin if you see an import timeout
Import error "not a valid dbt error name"Version-specific dbt flagsRemove flags.warn_error_options from dbt_project.yml
Tests fail 'dbt_expectations' is undefineddbt_packages/ not committedCommit packages (Transformation (dbt)), re-save job
Job fires at the wrong hourSaved before the timezone fixRe-save
"Success" in milliseconds, no tasksStale project copyRe-save the job
dag_not_ready on triggerWorkflow not yet in orchestrationRetry shortly; contact your admin if it persists
dag_import_errorBroken generated workflowContact your admin
Many jobs fail together with git-sync errorsVersion-control service briefly unavailableRe-trigger once it recovers (about 5 min); contact your admin if it doesn't

Built with VitePress · DataNature, a product by Dlytica Inc.