跳到主要内容
知仓学习社ZHICANG

data-quality-checks

Design the data quality checks for a table or pipeline across the standard dimensions. Use when asked to add data quality tests, define DQ checks, c…

不碰外部(只输出文字)无严重或高危命中mohitagw15856/pm-claude-skills

它会碰到什么

扫了多少1 个文本文件,4 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Data Quality Checks Skill

Bad data quietly poisons dashboards and models until someone notices the number is wrong. The fix is

checks that fail loudly before that — across the standard DQ dimensions. This skill designs them for a

specific table/pipeline: the exact rule per dimension, its severity (block vs. warn), and where it runs

(dbt test, Great Expectations, or a SQL assertion), so quality is enforced, not hoped for.

Required Inputs

Ask for these only if they aren't already provided:

  • The table/pipeline and what it represents (grain, key columns).
  • The columns that matter — keys, required fields, enums, ranges, dates.
  • Freshness expectation — how current the data must be.
  • Tooling — dbt tests, Great Expectations, Soda, or raw SQL assertions.

Output Format

Data Quality Checks: [table]

Checks organised by dimension — each with the rule, severity (🔴 block the pipeline / 🟡 warn), and where it runs:

| Dimension | Check | Rule | Severity | Implement as |

|---|---|---|---|---|

| Completeness | required fields non-null | not_null on [cols] | 🔴 | dbt test |

| Uniqueness | grain key unique | unique on [key] | 🔴 | dbt test |

| Validity | values in allowed set/range | accepted_values / range | 🟡 | GE / SQL |

| Freshness | data is current | max(loaded_at) within SLA | 🔴 | dbt source freshness |

| Consistency | cross-field / cross-table | e.g. totals reconcile, FK exists | 🟡 | SQL assertion |

| Accuracy | matches a source of truth | reconcile vs. system-of-record | 🟡 | SQL assertion |

Notes:

  • Severity discipline — only block on checks that should stop the pipeline (a duplicated grain key, stale critical data). Over-blocking trains people to ignore alerts.
  • Where to check — at ingestion (catch early) vs. in the model vs. post-build; recommend per check.
  • On failure — what happens (halt, quarantine rows, alert + continue) and who's paged.

Quality Checks

  • [ ] Covers the core dimensions (completeness, uniqueness, validity, freshness, consistency)
  • [ ] Each check has an explicit rule and a severity (block vs. warn)
  • [ ] Severity is disciplined — only truly critical checks block the pipeline
  • [ ] Freshness has a measurable SLA, not "should be recent"
  • [ ] Each check names where it runs and what happens on failure

Anti-Patterns

  • [ ] Do not block the pipeline on every check — alert fatigue makes people ignore the real failures; reserve 🔴 for critical
  • [ ] Do not only test the happy path — the grain key, nulls, and freshness are where the real breakage hides
  • [ ] Do not write checks with no failure action — a test that fails into the void changes nothing
  • [ ] Do not skip freshness — stale data that looks fine is the most dangerous kind
  • [ ] Do not check only one table in isolation — cross-table consistency (FKs, reconciliations) catches integration bugs

Based On

Data-quality practice — the six DQ dimensions, dbt tests / Great Expectations / source-freshness, severity-tiered enforcement.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。

同名技能的其他版本

有 3 个不同仓库或目录里都有叫 data-quality-checks 的技能。它们内容并不相同,别混用: