ETL管理
ETL管理(页面标题「ETL执行日志」)记录画像指标的批量计算有没有跑成:每天凌晨把会员的消费、充值、次数、金额等流水汇总进画像指标表,每次执行留一行日志,写清执行时间、算的是哪天、耗时多久、影响多少行、成功还是失败、失败原因是什么。标签人数不对、忠诚度全员同档、营销圈不到人,第一步都来这里查批量计算是否成功。
功能路径:系统菜单 → 会员管理 → 会员画像 → ETL管理
一、功能概述
会员画像的所有条件判断都建立在指标表上,指标表由两种批量计算维护:
| 执行类型 | 算什么 | 什么时候跑 |
|---|---|---|
| 日计算 | 按某一天重算会员的日粒度消费与行为指标 | 部署为每天凌晨定时任务(建议 02:00–04:00) |
| 月计算 | 按整月汇总会员的月粒度指标 | 每月 1 日定时执行,计算上一个自然月 |
本窗口做两件事:看日志(历史每次执行的成败与耗时),以及手工补跑(定时任务没跑成、补历史某天数据时,页面上直接点日计算、月计算立即执行)。
批量计算跑完后会自动接着执行一次忠诚度评估,所以这一页也是忠诚度分级的间接状态来源。
二、界面布局说明
| 区域 | 内容 |
|---|---|
| 页面标题 | ETL执行日志 |
| 工具栏动作 | 日计算(当天)、月计算(上月) |
| 通用动作 | 查询、重置 |
| 查询条件 · 执行类型 | 下拉:日计算 / 月计算 |
| 查询条件 · 状态 | 下拉:执行中 / 成功 / 失败 |
| 查询条件 · 目标日期 | 文本框,占位「YYYY-MM-DD」 |
| 结果表格 | 列:执行时间 / 执行类型 / 目标日期 / 耗时(秒) / 影响行数 / 状态 / 错误信息 |
| 分页 | 默认每页 30 条,按执行时间倒序,最新一次在最上 |

「目标日期」是这次计算统计的业务日期,不是执行时间:夜里 03:00 跑的日计算,目标日期通常是当天;每月 1 日跑的月计算,目标日期是上月月末那天。
三、业务操作步骤
步骤 1:日常巡检
打开窗口看最上面几行。正常状态应该每天出现一条「日计算 / 成功」,每月 1 日多一条「月计算 / 成功」。耗时一般在几十秒到几百秒之间,视会员规模而定。
步骤 2:失败时看原因
状态为失败的行,「错误信息」列有报错原文。先看是不是当天数据库异常或过程超时,处理完再补跑。
步骤 3:手工补跑日计算
点工具栏日计算,确认框:
确定要执行日计算(当天)吗?此操作将遍历所有租户库。
确认后执行完毕提示结果:
日计算完成:租户 12 个,影响行数 38642,耗时 145 秒
个别租户失败时提示会变成部分失败形式,并把前几条错误原因列出来:
日计算完成(部分失败):成功 11 个,失败 1 个,耗时 152 秒。XX品牌: 错误原因
步骤 4:手工补跑月计算
点月计算,确认框:
确定要执行月计算(上月)吗?此操作将遍历所有租户库。
月计算按整月汇总,耗时明显长于日计算,建议在夜间执行。
步骤 5:补算历史某天
页面上的日计算默认算当天。需要补算指定日期(例如某天定时任务挂了、或上线首日要把历史数据补齐),联系厂商按日期执行补算任务;同一目标日期重复执行是安全的,过程内部按「先删后插」重写当日数据,不会产生重复。
四、字段详细说明
| 字段 | 含义 |
|---|---|
| 执行时间 | 本次批量计算开始的系统时间 |
| 执行类型 | 日计算 / 月计算 |
| 目标日期 | 本次计算统计的业务日期,格式 YYYY-MM-DD |
| 耗时(秒) | 本次执行总耗时,可用来观察是否逐渐变慢 |
| 影响行数 | 本次写入指标表的行数,仅作参考(过程内部先删后插,该数字取最后一步的影响行数,不等于会员总数) |
| 状态 | 执行中 / 成功 / 失败 |
| 错误信息 | 失败原因原文,成功时为空 |
五、典型使用场景
| 场景 | 操作路径 |
|---|---|
| 标签人数几天不动 | 打开本页看最近几天有没有「日计算 / 成功」→ 缺失或失败先补跑 → 再到条件引擎重算标签人数 |
| 新功能上线首日 | 上线后立即点一次日计算,让指标表当天就有数据,不等凌晨定时任务 |
| 忠诚度全员同档 | 本页确认指标正常 → 指标没问题再到忠诚度规则核对阈值 |
| 性能观察 | 按「执行类型 = 日计算」查询,对比近 30 天的「耗时(秒)」趋势,明显上升时反馈厂商优化 |
| 排查某天的数据异常 | 用「目标日期」填出问题那天,看当天是否执行、是否成功 |
六、权限控制与前置条件
- 日计算 / 月计算 两个按钮是跨全部客户库的写操作,一次点击会影响所有品牌的数据重算,因此本窗口定位为 IT 与实施顾问使用,不要开放给门店或日常运营角色;
- 手工执行前确认当前不在营业高峰:执行期间画像查询与条件试算会明显变慢;
- 单次执行有 600 秒超时保护,超时会被记为失败并留下错误信息;
- 定时任务由服务器计划任务调度(日计算每天凌晨、月计算每月 1 日),页面按钮只是补跑入口,不会替代定时任务;
- 新开通会员画像的账套,第一次使用前建议先执行一次日计算,把指标表初始化好。
七、常见问题
1. 页面一条记录都没有
- 原因:该账套的定时任务尚未部署或从未执行过;
- 处理:手工点一次日计算,执行成功后本页即出现日志;若按钮点了没反应或提示「操作失败」,把提示内容反馈厂商检查调度配置。
2. 状态一直是「执行中」
- 原因:执行过程的收尾更新没有落库,多为服务重启或数据库连接中断导致;
- 处理:等超过 600 秒后重新点一次日计算,同一目标日期重复执行是幂等的,不会产生脏数据。
3. 影响行数看起来偏小,不像是全部会员
- 原因:该列取的是过程最后一条语句的影响行数,只作粗略参考;
- 处理:需要确认数据是否刷新,看「执行时间/目标日期」对不对得上,再用条件引擎试算一个已知标签的人数交叉验证。
4. 显示成功,但标签人数仍然不对
- 原因:日计算刷新的是指标表,标签的会员关联要等条件引擎或夜间打标任务重算;
- 处理:到条件引擎对该标签执行一次查询与写入,即可立即得到新人数,见条件引擎。
5. 月计算和日计算有什么差别
- 原因:两者统计粒度不同;
- 处理:日计算按单日重算明细指标,日常每天跑;月计算按整月汇总,用于「本月/上月」口径的条件,每月 1 日跑上月数据。补历史月份用月计算,补某一天用日计算。
