粒度:一行记录代表什么
口径:指标如何计算
质量:缺失、重复和延迟如何标记
血缘:来源与变更影响谁
责任:谁批准、测试和回滚
连接成功不等于模型可用
AI 看到表和字段,只说明技术连接成立。字段缩写、隐含过滤、重复粒度和临时修正仍可能让同一个问题得到不同结果。数据契约把这些约定写在模型之外,成为数据生产者、建模者和分析使用者共同检查的边界。
契约不必一开始覆盖所有主题。先选销售、库存或交付等一个高频场景,明确一行记录代表什么、时间字段是什么、指标如何计算,再扩展到其他主题。
粒度和口径是最容易被忽略的部分
订单表可能是一单一行,订单明细表则是一商品一行;把两者直接 Join 会重复计算金额。契约应声明主键、粒度、可连接键和允许的汇总方式,并用具体例子说明。
指标也要写出过滤条件、退款处理、时区和生效时间。没有这些信息,AI 只能依赖猜测或隐含规则,答案即使数值正确也难以解释。
质量状态必须进入分析上下文
缺失、重复、延迟和部分失败不能都表示成空值或零。将质量状态作为字段或元数据暴露给分析层,用户才能知道结果是否适合立即决策。
BuildTable 的公开内容强调 AI 友好数据建模与业务语义;具体校验规则、连接器和部署范围仍需按项目确认,不能把方法论直接当成产品承诺。
用契约测试阻止静默变更
为每条契约建立自动检查:字段类型、唯一性、行数变化、时间新鲜度、指标对账和 Join 后膨胀。变更时先在测试数据上验证,失败则阻止下游发布或明确标注影响。
最终保存版本、变更人、审批人和回滚方式。这样 AI 分析出现变化时,可以回答“哪条数据契约何时变了”,而不是重新争论模型是否可靠。
