事实:订单、支付、库存变动
度量:数量、金额、时长
维度:客户、商品、门店、日期
属性:分类、区域、等级
关系:粒度、键与有效时间
结论:先问表中的一行是什么
若一行描述一次可计数的业务事件或某时点状态,通常属于事实;若一行描述客户、商品、门店等分析对象的属性,通常属于维度。
这不是按表名机械分类。库存快照是事实,商品当前售价可能是维度属性,也可能需要价格历史事实,取决于业务问题和变化方式。
事实表必须声明粒度和可加性
订单行事实是一行一个订单商品,支付事实是一行一次支付,不能在未处理关系前直接合并金额。每个事实记录粒度、业务键、时间和来源。
度量还要标记可加、半可加或不可加。余额不能跨时间直接求和,比率通常应从分子分母重算。
维度提供可理解的分析语境
维度保存名称、分类、区域、等级和层级,使技术键转成业务语言。枚举含义、未知成员和空值规则应明确。
属性随时间变化时,决定覆盖当前值、保留历史版本还是另建事件。AI 需要知道回答历史问题时使用哪个版本。
关系要限制允许的分析路径
事实通过键连接维度,通常形成多对一关系。多对多、角色扮演日期和跨事实分析需要桥接、公共维度或预聚合。
把关系、基数、过滤方向和有效时间写入语义模型,并测试 Join 前后行数与指标。
用业务问题验收分类
测试“本月订单金额按下单门店”“当前客户等级下的历史收入”“每日库存余额”等问题,检查事实、维度、时间和聚合方式。
BuildTable 的 AI 友好建模方向可作为组织事实、维度和关系的路径;具体自动识别、版本和测试能力需要项目核验。
