来源标记是什么
维度数据来源标记指在维表上保留一列(常叫 src_system 或 source_code),记录这一行或这一个属性值来自哪个系统,并配一份合并优先级规则。当客户、商品这类实体同时被主数据、CRM、ERP 与外部导入维护时,同名实体的属性冲突不可避免。来源标记的价值是让冲突可裁决、可追溯:按规则选值,同时把落选的原值留痕备查。
基本信息
| 标记列 | src_system / source_code,取值来自已注册的源清单 |
|---|---|
| 优先级 | 常见顺序:主数据 > 核心业务系统 > 外部导入 |
| 留痕 | 冲突落选的原值另存一列或进冲突明细表 |
| 标记粒度 | 可按行标来源,也可按属性列分别标 |
| 治理 | 源清单集中登记,新源接入先注册后使用 |
典型使用场景
- 多源客户主数据:MDM 与 CRM 都在维护客户等级,需要明确以谁为准
- 商品资料整合:采购系统与电商后台各有一套商品名称,口径要统一
- 冲突排查:两个报表同一天同名客户手机号不同,靠来源标记定位到源
- 系统切换期:新系统逐步接管数据,按来源统计接管进度
- 质量分摊:按来源统计缺失率与错误率,把责任落到源头
- 灰度验证:新源小流量接入,按来源对比新旧口径的指标差异
来源分布巡检
来源分布巡检
SELECT src_system,
count(1) AS rows_cnt,
sum(case when phone is null then 1 else 0 end) AS phone_null
FROM dim_user
WHERE is_current = 1
GROUP BY src_system
ORDER BY rows_cnt DESC; -- 某源行数骤降,先查它是不是同步断了
-- 多源取值不一致清单
SELECT user_id, count(distinct name) AS name_variants
FROM dim_user
WHERE is_current = 1
GROUP BY user_id
HAVING count(distinct name) > 1;优先级规则示例
| 来源 | 字段优先级 | 说明 |
|---|---|---|
| 主数据 MDM | 全属性最高 | 标准口径来源,冲突时以它为准 |
| CRM | 客户等级、归属销售 | 贴近业务过程,主数据未覆盖时采用 |
| ERP | 财务编码、结算信息 | 权威但同步频率低,滞后于业务 |
| 外部导入 | 仅补空不覆盖 | 质量不可控,只填已有空字段 |
| 手工维护 | 白名单字段 | 必须留操作人与时间,便于追溯 |
来源标记回答的是「这个值是谁说的」,不回答「这个值对不对」,两者要分开处理:前者靠规则裁决,后者靠数据质量校验。冲突原值必须留痕,否则按规则覆盖之后就再也无法核对源端当初给过什么。