第4章 用户标签体系的建立:标签分类、采集清洗与存储更新
适用场景
本流程适用于以下场景:
- 需要基于用户标签进行精准营销、个性化推荐、用户分层运营的产品或业务。
- A/B测试中需要利用标签进行定向分流、同质化分组或效果分析。
- 数据中台或用户画像平台首次构建标签体系,或对现有标签体系进行规范化重构。
- 业务方提出标签需求后,数据团队按标准化流程完成标签设计、采集、存储的全生命周期管理。
前置条件
- 已接入用户基础数据:注册信息(性别、年龄、地域等)、行为日志(浏览、点击、收藏、下单等)、交易数据(客单价、复购周期等)。
- 具备数据仓库或数据湖环境(如Hive、ClickHouse、Iceberg),支持大规模数据存储与ETL调度。
- 部署或拥有标签管理平台(内部系统或商业化工具),支持标签元数据管理、值域校验、版本回溯。
- 数据开发工程师与业务分析师已确认标签的粒度与更新频率要求。
操作步骤
共分为三个阶段,依次执行:
阶段一:标签分类设计
- 梳理业务需求:收集各业务方(市场、运营、推荐、风控)的标签需求清单,按优先级排序。
- 定义标签分类:将标签划分为三类——基础属性、行为偏好、业务价值,并建立子类目录。
- 确定标签元数据:为每个标签定义名称、口径、值域、数据类型(字符串/数值/枚举)、更新周期、来源表。
- 输出标签字典:形成标准化文档,供后续清洗与存储环节参照。
阶段二:标签采集与清洗规范
- 配置采集任务:从源系统(MySQL、埋点日志、CRM)抽取原始数据,保留时间戳。
- 执行清洗规则:处理缺失值(默认值/剔除)、异常值(超出业务阈值则置空)、格式统一(如手机号脱敏、时间标准化)。
- 唯一标识对齐:以用户统一ID(如user_id)为中心,关联多源数据,合并同人不同ID。
- 写入清洗日志:记录每批数据清洗总量、异常条数、修复方式。
阶段三:标签存储与更新策略
- 选择存储模型:基础属性标签存入宽表(每天全量覆盖),行为偏好标签存入分区表(增量追加+最新快照),业务价值标签存入汇总表(T+1更新)。
- 设置更新策略:对时效性要求高的标签(如近7天活跃度)使用每日增量更新;对稳定标签(如性别)使用每周全量刷新。
- 建立索引与分区:按user_id哈希分桶,按日期分区,提升查询效率。
- 配置调度依赖:依赖上游数据任务完成后自动触发,失败时重试3次,超时告警。
输入输出物
| 类型 | 输入物 | 输出物 |
|---|---|---|
| 数据 | 用户注册表、行为日志表、交易记录表、CRM客户表 | 标签宽表(t_user_tag_all)、标签增量表(t_user_tag_delta) |
| 文档 | 业务方标签需求清单 | 标签字典(含口径、值域、更新周期)、清洗规则配置表 |
| 配置 | ETL调度平台默认参数 | 标签更新调度DAG、告警规则配置 |
责任边界
- 数据产品经理:负责标签需求调研、分类设计、标签字典评审。
- 数据工程师:负责采集清洗脚本开发、存储模型设计、调度配置与运维。
- 业务分析师:验证标签值域与实际业务一致性,反馈异常。
- 运维/数仓负责人:保障存储资源、调度稳定性、数据备份与恢复。
记录材料
- 标签字典 v1.0(Excel或Wiki):记录每个标签的名称、含义、枚举值、更新频率。
- 清洗规则清单:逐条描述字段级清洗逻辑(如“email字段无效格式统一设为NULL”)。
- 数据质量报告:每次采集后的清洗日志快照,保留30天。
- 调度运行记录:任务成功/失败/重试次数、执行耗时。
异常处理
常见异常及应对措施:
- 标签值大面积缺失:检查上游源表是否变更字段或数据延迟。回滚至历史分区,并通知业务方确认补录窗口。
- 标签冲突(同一用户同标签多值):按“最后写入时间”或“业务优先级”规则取唯一值,并在清洗日志中记录冲突条数。
- 更新超时/失败:调度自动重试3次,每次间隔5分钟;若仍失败则挂起任务并发送告警给数据工程师。
- 标签口径变更:新增标签版本号(v1→v2),同时保留历史版本数据,避免下游模型断裂。
验收标准
验收检查项(需逐条通过):
- 覆盖度:核心标签(性别、年龄、近30天下单次数)覆盖用户≥95%(以DAU为分母)。
- 准确性:随机抽选100条用户标签,与原始数据源人工比对,差异≤2条。
- 时效性:每日增量更新任务在次日08:00前完成,周级全量任务在每周一10:00前完成。
- 完整性:标签字典100%字段包含在存储表中,无未定义的衍生字段。
- 可回溯:存储表保留至少90天历史分区,支持回滚至任意历史日期。