# 指标体系 > 本文档记录 `poyee-data-warehouse` 指标体系的建设方法论、评估维度与指标字典规范。 > 与 `数仓分层与建模.md` 的总线矩阵配套使用。 ## 1. 核心概念 ### 1.1 指标的构成 ``` 指标 = 度量 + 维度 + 条件 派生指标 = 原子指标 + 时间周期 + 修饰词 ``` - **度量(Measure)**:对物理量的测定,数字 + 单位(金额、次数、率) - **维度(Dimension)**:看问题的角度(时间、用户、渠道、店铺、商品) - **条件(Filter)**:取值限定(端=PC、首次购买、会员等级=VIP) ### 1.2 指标体系逻辑结构 ``` 业务板块 │ └── 数据域 │ ├── 业务过程 ──► 原子指标 ──┐ │ │ │ │ └─ 修饰类型 ─┐ │ │ ├──► 派生指标 │ 修饰词 ───┤ │ │ 时间周期 ───┘ │ │ │ └── 维度 ──► 度量 / 属性 ────┘ ``` **示例(出行业务):** | 层级 | 取值 | |----|----| | 业务板块 | 出行业务 | | 数据域 | 日志域 | | 业务过程 | 搜索 | | 维度 - 方式 | PC 端 | | 度量 | 访问次数 PV | | 时间周期 | 最近 1 天 | | 派生指标 | 最近 1 天通过 PC 端高德地图搜索次数 | | 指标编码 | `pv_1d_099` | | 属性 | POI → 订单 ID、创建时间 …… | ### 1.2 指标的一义性 一个指标一经录入,其命名、默认口径及下钻维度口径必须确定。例如"交易额"默认时间口径 = 支付时间、默认城市口径 = 下单所在城市。**在某些维度上口径不确定的指标是不能被使用的。** ## 2. 指标分类 | 类型 | 定义 | 示例 | |------|------|------| | **基础指标** | 基于实体属性的简单计算,无上游指标(父指标即自身) | "交易额" | | **普通指标** | 在单一父指标基础上通过维度取值限定得到 | "PC 端首次购买用户数"(父=购买用户数,限定 端=PC & 首次=true) | | **计算指标** | 基于若干注册指标通过四则运算、排序、累计、汇总得到 | "GMV 环比增长率" | ## 3. 指标体系评估维度 | 维度 | 说明 | 评估方式 | |------|------|---------| | **完善度** | 汇总数据能否直接满足查询需求 | 应用层访问汇总层比例;跨层引用率(ODS 被 DWS/ADS/DM 直接引用占比越低越好) | | **复用度** | 一个模型被多少下游复用 | 模型引用系数 = 平均产出下游模型数 | | **规范度** | 命名、分层、主题域归属是否合规 | 对照命名规范与词根字典 | | **稳定性** | 能否保证 SLA(时效保障) | 任务优化、SLA 报表 | | **扩展性** | 新模型与老模型是否冲突 | 评审机制 | | **准确性&一致性** | 数据质量、指标口径一致性 | 需要质量管理系统 + 指标管理平台 | | **健壮性** | 业务快速迭代下底层模型稳定性 | 抽象程度与解耦度 | | **低成本** | 计算时间、计算资源、存储成本 | 监控 + 成本归因 | > **完善度/复用度/规范度**:需要了解业务,基于元数据统计分析。 > **稳定性/低成本**:任务优化(SQL 调优)。 > **准确性/一致性**:需要配套的质量管理系统和指标一致性管理平台。 ## 4. 指标字典 > 收录**可复用的、上调度的**指标;临时指标不录入。 ### 4.1 指标字典表结构(简表) | 字段 | 说明 | |------|------| | 指标编码 | 全局唯一(推荐 `域_过程_度量_修饰` 结构) | | 主题域 | `trd` / `usr` / `prd` / `shp` / `pub` | | 指标名 | 中文名称 | | 指标等级 | 基础 / 普通 / 计算 | | 计算公式 | SQL 表达式或自然语言 | | 口径 | 默认时间/维度口径 | | 粒度 | 统计粒度(用户/订单/SKU) | | 业务描述 | 业务含义 | | 示例 | 典型查询示例 | ### 4.1.1 指标字典要素(完整) | 要素 | 要素说明 | 要素实例 | |------|---------|---------| | 指标名称 | 维度(业务线 + 一级维度 + 二级维度 + 三级维度 + …) + 度量 | 羊毛衣支付订单量 | | 别名 | 描述指标的其他命名 | `null` | | 含义 | 描述指标的计算方式或定义方法,是指标的关键 | 支付成功的订单数量 | | 指标类型 | 基础 / 普通 / 计算 | 普通指标 | | 限定条件 | 描述指标的限定条件,可以限定指标查询的条件 | 羊毛衣订单,订单状态=支付成功 | | 限制维度 | 描述用户在查询该指标时,如果要使用该类型维度进行切分,必须限定该类型维度指定的维度 | 平台:订单支付时所在平台日期时间、订单支付时间 | ### 4.2 维度字典 需同步维护,收录所有一致性维度(时间、用户、地区、渠道、商品、店铺、活动、支付方式等)。 **时间维度示例:** | 一级维度 | 二级维度 | 维度取值 | 维度表 | 备注 | |--------|---------|---------|-------|------| | 时间 | T:时段 | 1-24 小时 | 根据需求自行划分时间 | | | | D:日 | 20160419 | | | | | W:周 | 2016W14 | | | | | M:月 | 201604 | | | | | Q:季度 | 2016Q2 | | | | | Y:年 | 2016 | | | ### 4.3 度量字典 收录所有可度量的数值字段(金额、次数、率等)。 **流量度量示例:** | 一级量度 | 二级量度 | 含义 | 限制维度 | 备注 | |----|----|----|----|----| | 流量 | PV | | 时间 / 平台 | 基础指标 | | | DAU | 所以页面 UV 去重 | 时间 / 平台 | 基础指标 | | | 点击设备数 | APP 点击设备的数量 | 时间 / 平台 / 版本 | 基础指标 | | | 展示设备数 | APP 展示设备的数量 | 时间 / 平台 / 版本 | 基础指标 | | | A 页面总停留时长 | 每个用户在该页面停留时长的总和 | 时间 / 平台 | 计算指标 | | 率 | 访购率 | 支付用户数 / 总 UV | 时间 / 平台 | 计算指标 | ## 5. 指标字典建设原则 1. **明确、通用、易懂**:命名规则统一,见名知意 2. **统一口径**:避免歧义,同一指标全局一致 3. **覆盖核心维度/量度**:以此为基础推动数据建设 4. **对接元数据中心**:注入元数据,接入指标提取工具,后续可实现无 SQL 查询 5. **评审制**:指标录入前经过业务 PM 评审,达成一致后由数据产品推广 ## 6. 建设建议 - 指标字典可先用 Docmost 维护,资源充足后开发指标管理模块 - 配合血缘关系追踪数据流转 - 指标字典好坏的标准:"像二叉树一样,由单维度/粗糙维度分析开始,再细拆维度——由大到小、由内到外" ## 7. 相关文档 - [数仓分层与建模](20-数仓分层与建模.md) — 总线矩阵定义业务过程与维度 - [命名规范](21-命名规范.md) — 字段词根字典(gmv/cnt/rto/...) - [标签体系](23-标签体系.md) — TDM 层画像/标签口径