SuperAPI AI 工具集

authoring-data-quality-checks

数据与分析

查看项目

更新于 10-16 03:44

技能介绍

用途:在项目的仓库表、视图以及HogQL目录指标上编写并运行数据质量检查。每条检查是针对一个subject的一条断言,编译为仅计数的HogQL查询,零失败行即通过(类似dbt test);失败行不存储,只存计数与编译后的查询,需要自行重跑查询查看问题行。row_count例外:观测计数落在配置的min/max区间内才通过,失败行数为null。

读写方式:读取走SQL(system.information_schema.data_quality_*),写入与运行走data-quality MCP工具。

写前先查:用system.information_schema.data_quality_checks看已有检查,用system.information_schema.columns看列含义。完全相同的检查会因指纹相同而upsert为无操作;近似重复会放大噪声,应改为编辑已有检查。

检查类型优先级:not_null(下游依赖的列)、unique(模型粒度)、relationships(外键)、accepted_values(状态/分类列)、freshness(同步时间列)、row_count区间、custom_sql(无法用上述表达时)。可调用posthog:data-quality-check-types获取各类型config结构。用posthog:data-quality-subjects获取subject并传subject_type与subject_uuid给posthog:data-quality-check-create,之后按检查自身id使用-update、-delete、-run、-results。

PostHog表(events、persons、groups)同样支持检查,表较大可用lookback_hours限定;custom_sql不支持lookback_hours。指标检查仅支持带保存的HogQLQuery定义的指标,用custom_sql且column_name为空,SQL中恰含一次{metric},不可定义CTE。

严重级别:error表示下游数据不可信并通知,warn用于值得提示但暂不需行动的情况,不确定时用warn。表与视图在数据变化时触发,指标与PostHog表按计划(默认每日)运行,可用posthog:data-quality-check-schedule调整。

完成后应运行一次并查看结果;首跑失败需取compiled_query用posthog:execute-sql核查是真实坏数据还是断言写错。errored表示查询未执行,通常是列名错误或subject不存在。使用数据前可用system.information_schema.data_quality_health查看failing/erroring/warn/healthy判定,unknown或缺失不构成健康证据。