Wavelength

Data quality checks with dbt tests diagram

This is a worked example. Wavelength built the diagram below from the description on this page. Nobody drew it by hand.

What was said

Raw data lands in the Snowflake raw schema. dbt runs source freshness checks first. If a source is stale, the pipeline stops and posts to the data on-call Slack channel. If the sources are fresh, dbt builds the models and runs the tests. Failed tests open a ticket in Linear for the data engineer. Passing models are published to the analytics schema for Tableau.

The diagram

G n1 Raw Data Landing n2 Snowflake Raw Schema n1->n2 lands in n3 dbt n2->n3 runs source freshness checks n4 Source Stale? n3->n4 checks freshness n11 Tests Failed? n3->n11 runs tests n4->n3 No n5 Data On-Call Slack Channel n4->n5 Yes n10 Pipeline Stop n5->n10 pipeline stops n6 Linear n11->n6 Yes n8 Analytics Schema n11->n8 No n7 Data Engineer n6->n7 assigns ticket n9 Tableau n8->n9 published to
Hexagons are systems. Cylinders are data stores. Diamonds are decisions. Rounded orange boxes are people and teams. A dashed amber arrow is a link the AI inferred. Pink arrows are decision branches. Blue arrows move data.

Opens an editable copy you can change by voice or by hand. Free account, no card.

What is in this flow

  • Systems: dbt, Data On-Call Slack Channel, Linear and Tableau.
  • Data stores: Snowflake Raw Schema and Analytics Schema.
  • People and teams: Data Engineer.
  • Decisions: Source Stale? and Tests Failed?.
  • Size: 11 steps and 11 connections.

Questions to confirm

The AI inferred these links. On a real call, you ask the customer to confirm them.

  • Does Data On-Call Slack Channel pipeline stops Pipeline Stop?

Mermaid code

Copy this into any Markdown file, GitHub README, or Mermaid Live to render the same flow.

flowchart TD
  n1(["Raw Data Landing"])
  n2[("Snowflake Raw Schema"])
  n3{{"dbt"}}
  n4{"Source Stale?"}
  n5{{"Data On-Call Slack Channel"}}
  n10(["Pipeline Stop"])
  n11{"Tests Failed?"}
  n6{{"Linear"}}
  n7("Data Engineer")
  n8[("Analytics Schema"])
  n9{{"Tableau"}}
  n1 -->|lands in| n2
  n2 -->|runs source freshness checks| n3
  n3 -->|checks freshness| n4
  n4 -->|Yes| n5
  n5 -.->|pipeline stops| n10
  n4 -->|No| n3
  n3 -->|runs tests| n11
  n11 -->|Yes| n6
  n6 -->|assigns ticket| n7
  n11 -->|No| n8
  n8 -->|published to| n9

Map your own process

Describe your version out loud, or paste the transcript of a call. Wavelength draws the flow as you talk, and you can edit it by voice, by prompt, or by hand.

Every new account starts with 7 days of Pro. No card needed.

Related

More examples

See all flow diagram examples