Data foundation & delivery plan
数据建设现状与规划
不是从零建设,也不是简单增加几张表。当前重点是让正在使用的 Tableau 数据准确可用,在此基础上补齐两条业务链路,并形成可复用的数据资产与业务自助 AI 取数能力。
1. Tableau 当前已经展示什么
| 分析内容 | 当前页面已有 | 使用时需要注意 |
|---|---|---|
| 获客规模 | 安装/激活、注册、安装注册率和部分渠道数据 | 广告消耗、曝光、点击目前尚未接入 |
| 产品转化 | 体验进入、体验完课、付费等阶段数据 | 发生日和同批用户视角需要分开使用 |
| 收入结果 | 付费人数、订单/流水、毛收入及部分 ARPPU | 首购人数和毛收入仅统计确认成功、金额确认且为正的订单;退款、净收入未闭环 |
| 留存活跃 | 已有留存和活跃相关看板 | 活跃事件仍在调整,完整留存升级顺序待确认 |
| 分析维度 | 当前页面已有日期、国家、平台和渠道;账户、Campaign、Ad set、Ad 在历史归因数据中已有字段 | 新的投放命名规范已确认,需要完成新旧名称映射并逐项验收页面使用;广告消耗、曝光、点击仍未接入 |
2. 两条业务链路分别卡在哪里
In-App 链路
广告平台 → 归因安装 → App 注册/行为 → 服务端订单(含订单状态)。
(含订单状态)已有基础
当前断点广告消耗、曝光、点击尚未接入AppsFlyer 晚到数据没有稳定回刷
CC 链路
广告平台 → Landing Page → CRM / 销售过程 → App 注册/行为 → 服务端订单(含订单状态)。
(含订单状态)已有基础
当前断点Landing Page 部分字段仍需修复CRM 数据和 Landing—App—订单身份关系尚未打通
3. 现有基础与待补齐事项
| 建设项 | 当前情况 | 需要做什么 |
|---|---|---|
| 来源与输入核心业务明细(DWD) | 已有基础 已有安装、注册、App 行为和服务端订单数据 | 确认每天更新正常;退款数据另行补充 |
| 来源与输入广告平台数据 | 待推进 消耗、曝光、点击尚未接入数仓和 Tableau | 接入消耗、曝光和点击,并与各广告平台核对 |
| 来源与输入Landing / Web 数据 | 需补齐 已有事件和看板基础,部分字段仍需修复 | 修复必要字段,并核对注册和支付结果 |
| 来源与输入CRM / 销售数据 | 待推进 可用数据和用户关联方式尚不清楚 | 先盘点能提供什么数据、怎样关联用户,再决定是否接入 |
| 关联与模型用户身份关联 | 需补齐 App 内身份关系已有基础,Landing 留资与 App 账号尚未关联 | 打通 Landing 留资、App 账号和订单 |
| 关联与模型现有汇总数据(DWS / ADS) | 需补齐 已有经营、漏斗、留存和 Tableau 使用的数据 | |
| 业务产品Tableau「整体项目数据」 | 需补齐 页面已经投入使用,部分数据仍需完善 | 在副本验证新数据,准确稳定后再更新正式入口 |
| 业务产品AI 自助取数 | 待推进 尚未形成可供业务使用的产品 | 先选择一类可信数据试用,再逐步扩展 |
当前数据血缘
当前图按非 _legacy 的 Tableau 消费表展示;表级关系已有只读证据,工作簿内部绑定、刷新与结果准确性仍需验收。
dwd_appsflyer_installs_di一行一次归因安装dim_user_df一行一个用户dwd_firebase_event_di一行一次行为事件dwd_order_di一行一个订单dwd_user_identity_map_di用户、设备、GA4 与 AppsFlyer 标识dwd_ops_event_fact_di → ads_tableau_ops_fact_didwd_ops_event_ad_di → ads_tableau_ops_ad_di经营明细与归因维度dwd_funnel_user_di → ads_tableau_funnel_user_di安装用户的转化节点dwd_retention_cohort_user_di → dws_retention_result_di → ads_tableau_retention_di现有留存分析数据展开查看具体表名与数据内容
| 数据表 | 主要数据 | 当前用途 |
|---|---|---|
de_dwd.dwd_appsflyer_installs_di | 安装时间、平台、安装国家、媒体、渠道、Campaign、AppsFlyer ID | 安装规模、安装归因和 App 安装用户漏斗母群 |
de_dwd.dim_user_df | 用户 ID、注册时间、用户类型、AppsFlyer ID 和用户属性 | 注册人数、注册转化和用户—安装关系 |
de_dwd.dwd_firebase_event_di | 事件时间、事件名称、用户与设备标识、课程、页面和行为结果 | 产品漏斗、体验课和 Landing Page 行为分析 |
de_dwd.dwd_order_di | 订单 ID、用户 ID、订单状态、首购/续费、确认金额和支付时间 | 付费人数、订单数、首购和毛收入;不含完整退款事实 |
de_dwd.dwd_user_identity_map_di | App 用户、设备、GA4 与 AppsFlyer 标识关系 | 辅助 App 内身份关联;尚不包含 Landing 留资用户 |
de_dws.dws_ops_metric_dide_ads.ads_ops_dashboard_di | 按日期和渠道汇总的运营人数与收入 | 现有经营汇总;与 Tableau 明细链并存,现行表与 _legacy 历史表的保留边界待确认 |
de_ads.ads_tableau_ops_fact_dide_ads.ads_tableau_ops_ad_di | Tableau 经营明细及归因/投放维度明细,不含尚未接入的广告消耗、曝光和点击 | 旧看板对账参考,不直接作为新版可信底表 |
de_ads.ads_tableau_funnel_user_di | 安装用户级的漏斗节点 | 复用结构思路;漏斗节点和体验口径需要升级 |
de_ads.ads_tableau_retention_di | Tableau 留存宽表 | 现有留存分析;新版主留存视角仍需确认 |
统一可信的经营数据入口
以当前 Tableau「整体项目数据」为基础持续升级,形成统一可信、可解释、可追溯的经营数据入口。
可复用数据资产与 AI 取数产品
打通关键系统,将用户行为、销售过程和交易结果沉淀为可信、可复用的数据资产,并建设业务自助 AI 取数工具。
4.1 · 共同数据基础
从标准明细建设可复用认证数据
绿色是当前已有基础,蓝色是本轮需要建设或升级;存在前置门槛的事项直接写在节点内。
dwd_appsflyer_installs_didim_user_dfdwd_firebase_event_didwd_order_diTableau / AI 共用
三种数据看法
UTC+0 时间,周从周一开始、月按自然月;周、月人数和转化率按完整期间重新计算,不累加每日人数,也不平均每日转化率。产品 / 开发展开:实施与质量规则
时间处理细则
保留源时间和广告账户时区,再统一转换为 UTC+0 stat_date;D0 为安装或留资当日,D7 在第 8 天 00:00 UTC 结束。国家当地日如确有需求,使用单独且明确标记时区的视图。
人数与比率细则
人数从用户粒度重新去重,或提供日、周、月预汇总;比率由相同粒度的分子分母重算,禁止累加每日 UV 或平均每日转化率。
身份关联原则
- 优先使用显式 Lead ID、后端账号绑定和受控手机号哈希;App 内使用经验证的 AppsFlyer ID—user_id 关系。
- 每条关系保留
match_method、来源证据、有效期、唯一性和冲突标记。 - 设备标识仅在覆盖率和唯一性验收后使用;歧义匹配不自动合并。
- 输出覆盖率、一对多冲突率、未关联比例,并遵守最小化使用与访问权限。
回刷与刷新依赖
- 以“上游分区完整”作为下游触发条件;未完成分区不得发布。
- 采用可重复执行的
MERGE或分区替换,失败可从指定分区安全重跑。 - 首期滚动回刷最近三天,并记录来源水位、处理分区、行数、状态和运行时间。
- DWD 修正后,相关 DWS、ADS 与 Tableau 数据同步失效并重算,语义状态同步标记为不可用。
- 积累晚到分布后按 P95 / P99 调整窗口;三天不是永久承诺。
发布前的最小质量闸门
- 最新完整日期与分区水位可见;失败分区不会被标记为可用。
- 唯一键、空主键、关键值域和 D0–D7 累计结果检查通过。
- 身份 Join 覆盖率、冲突率和未关联比例可见并完成业务验收。
- 按成熟日期、主要国家和渠道完成源数据 → DWD → 认证接口 → Tableau 对账。
- 广告数据与平台原报表核对;Landing 注册和支付与后端事实核对。
- 支付人数、订单和毛收入与服务端订单事实核对。
- 真实 0、未接入、未成熟和不可计算分别表达。
- 关键异常产生运行记录和责任角色通知;首期不建设独立完整质量平台。
4.2 · 现有 Tableau 升级
升级现有入口,不重做一套看板
以「整体项目数据」为正式基线,复制验证版本接入认证数据。成熟日期对账并连续验证两个刷新周期后,再更新正式入口。
发现问题,不承载全部细节
1. 经营总览
- 规模:广告消耗、安装/Lead、注册、体验进入、体验完课、付费人数。
- 结果:付费成功订单、毛收入;首购用户成本与首购毛投产比在时间配对规则验收后开放。
- 维度:时间、国家、获客链路、渠道;Campaign 作为下钻。
- 支持日、周、月查看,人数按完整筛选范围重新去重。
- 首期明确标注毛收入未扣退款。
2. 投放获客
- 广告指标:消耗、曝光、点击、归因安装、CPM、CTR、CPC、CPI。
- 下钻:媒体、代理、账户、Campaign、Ad set、Ad。
- 结果摘要:D7 体验完课人数、D7 首购人数、D7 首购成功订单数;时间语义验收后再展示首购用户成本和首购毛投产比。
- 支持从渠道或 Campaign 跳转到对应的 App 安装用户漏斗。
3. App 安装用户漏斗
- 母群:AppsFlyer 首次、非重定向安装用户。
- 路径:安装 → 注册 → 体验进入 → 体验完课 → Paywall → 首购。
- 窗口:D0–D7 累计结果横向展示。
- 完课:
class_lesson_end + result='complete' + 8个lesson_id。 - 支持成熟状态、平台、安装国家、媒体、Campaign 和安装版本。
- 归因维度冻结在安装时;观察期未完成的用户批次不进入默认主转化率。
4. CC 留资用户漏斗
- 母群:在 Landing Page 留资且经业务确认有效的用户。
- 路径:留资 → 体验进入 → 体验完课 → 首购。
- 销售分配、触达、接通和预约作为辅助过程分析。
- 支持 Lead 日期、国家、来源渠道及必要销售状态。
- 同时展示身份覆盖率、冲突率和未关联比例。
4.3 · 业务自助 AI 取数
从认证主题开始,而不是开放全部数仓
第一版先支持经营总览、投放获客、App 安装用户漏斗、毛收入和首购结果。CC、退款和净收入在数据认证完成后再开放。
每次返回什么
- 一句话结论。
- 数据表和必要的简单图表。
- 指标定义、时间视角、筛选和去重主体。
- 数据截至时间与限制说明。
- 当前结果导出。
受控查询边界
- 只查询认证主题和批准维度。
- 通过语义模型或批准模板生成查询,不根据字段名猜指标。
- 执行前做 dry-run、扫描量上限和权限校验。
- 歧义问题先确认再查询。
- 无法可靠回答时明确拒绝。
- 所有查询只读,保留问题、语义解析、查询与结果状态审计。
MVP 上线门槛
- 上线测试前冻结 Golden Questions、期望结果/容差、拒答规则和验收 Owner。
- 与 Tableau 同题对账按预设容差通过,差异按指标契约解释。
- V1 仅返回聚合结果;权限、越权、扫描上限、拒答和歧义场景测试通过。
- 业务试用能识别错误并回溯到指标版本和查询记录。
- 通过后再选择飞书、网页或其他正式载体。
以当前 Lark 数据任务总表 · ✅ 任务拆解 的进度为准,仅纳入直接支撑两大目标的事项,其他历史或一次性任务继续保留在 Lark。“需求池未单列”表示本规划需要、但当前没有对应任务记录。优先级和计划时间留空,待统一排期。
统一可信的经营数据入口
业务来源 → 刷新与关联 → 可复用认证数据 → Tableau 模块
| 路径 | 建设事项 | 当前需求池状态 | 优先级 | 计划时间 | 依赖项 |
|---|---|---|---|---|---|
| G1-01 来源 | 广告消耗、曝光、点击接入与新命名映射 | 开发中对应“广告数据看板 for 老板汇报”;完整接入仍按本页验收 | 广告账户权限、已确认命名规范、平台原报表 | ||
| G1-02 来源 | Landing / Web 字段与数据准确性修复 | 开发中对应“landing page 埋点问题排查、Tableau 数据看板” | 埋点规范、前后端上报、服务端注册与订单事实 | ||
| G1-03 来源 | CRM / 销售数据可行性盘点 | 需求池未单列 | CRM 访问权限、稳定 Lead 键、API / 导出和历史数据 | ||
| G1-04 刷新 | AppsFlyer 及下游每日回刷最近 3 天 | 未开始对应“tab 数据回刷机制” | 上游完整分区、幂等重跑、任务日志 | ||
| G1-05 关联 | 统一安装、设备、App 账号、留资与订单关系 | 未开始需求池已有 uid 与 device id 映射任务;Lead 扩展未单列 | App 显式标识关系;Landing 扩展依赖 G1-02,Lead 扩展依赖 G1-03 | ||
| G1-06 交易 | 退款、净收入与相关看板字段 | PRD 编写中对应“增加退款笔数、退款金额、退款后流水” | 服务端/支付渠道退款事实、平台状态映射 | ||
| G1-07 认证数据 | App 安装用户 D0–D7 漏斗数据 | 部分子任务开发中“进入体验课人数”开发中;注册日漏斗任务未开始 | G1-04、安装母群、冻结归因维度、UTC+0 与体验完课口径 | ||
| G1-08 认证数据 | 留存与活跃数据升级 | 部分子任务开发中回访事件替换开发中;安装留存任务未开始 | 新活跃事件发版和验收、安装用户关联 | ||
| G1-09 Tableau | 升级经营总览、投放获客和 App 安装用户漏斗 | 部分子任务开发中广告看板开发中;Landing 看板优化未开始;其他模块未单列 | G1-01、G1-02、G1-04、G1-07 的认证数据;验证副本 | ||
| G1-10 Tableau | CC 留资用户漏斗 | 需求池未单列 | G1-03 可行性结论和 G1-05 Lead 身份扩展均通过 |
可复用数据资产与 AI 取数产品
业务问题与权限 → 标准语义 → 首个认证主题 → AI MVP → 业务验收
| 路径 | 建设事项 | 当前需求池状态 | 优先级 | 计划时间 | 依赖项 |
|---|---|---|---|---|---|
| G2-01 场景 | 确认首批 AI 取数问题、使用人和权限边界 | 需求池未单列 | 业务方提供高频问题,权限 Owner 确认可查范围 | ||
| G2-02 语义 | 指标口径字典与标准数据语义 | 未开始对应“指标口径字典” | 业务 Owner 确认指标定义;目标一中的时间、去重和来源规则 | ||
| G2-03 认证数据 | 选定并稳定第一个可复用认证主题 | 需求池未单列 | G2-01、G2-02;并复用目标一已对账的经营总览、投放或 App 漏斗数据 | ||
| G2-04 产品 | 建设受控的 AI 取数 MVP | 需求池未单列 | G2-03;指标/维度白名单、只读访问、查询模板、扫描上限和审计记录 | ||
| G2-05 验收 | Golden Questions 对账与业务试用 | 需求池未单列 | G2-04;预先确定的期望结果/容差、拒答规则和验收人 |
补充说明与证据
主页面保持紧凑,技术细节仍可追溯
以下内容用于解释现状判断和规划取舍,不在主叙事反复展开。
现行 V1 契约与本规划的处置建议(需 Owner 批准)
本 HTML 是规划建议,不自动取代当前数仓交接工作簿。开发排期前必须形成批准记录并同步更新 V1 / V1.1。
已确认变更:统一统计时区为 UTC+0。V1 / V1.1 中仍按 UTC+8 标注的日期、周期和 D0–D7 字段,开发前必须同步修订并使用跨 UTC 日界线样本对账。
| V1 逻辑接口 | 建议处置 | 本轮关系 | 仍需确认 | 契约动作 |
|---|---|---|---|---|
| 投放日 | 继续 | 目标一 G1-01 / G1-09 | 广告来源、汇率、账户映射 | 保留并由数仓回填实现 |
| 安装用户 D0–D7 漏斗 | 继续 | App 安装用户漏斗核心 | Paywall / checkout 技术覆盖 | 保留并完成认证 |
| 产品行为日漏斗 | 继续作为基础接口 | 支撑经营大数和产品诊断 | 是否需要独立 Tableau 页面 | 接口不因页面精简而取消 |
| 体验课课程明细 | 继续作为诊断接口 | 支撑 8 节课完课口径 | 页面优先级 | 保留口径;展示可后排 |
| 正式课学习 | 是否纳入主路径待确认 | 当前未进入四个核心 Tableau 模块 | 业务 Owner 的范围决定 | 决定前仍视为 V1 有效范围 |
| 同批用户留存 | 现有能力继续;完整升级待确认 | 对应目标一 G1-08 | 活跃事件与三类留存范围 | 根据范围决定更新主路径或候选需求 |
| 交易收入日 | 毛实付继续;净收入扩展 | 毛收入与首购结果核心 | 退款事实与归因 | 拆分已可做与 blocked 字段 |
| 数据质量状态 | 最低规则继续 | 作为发布闸门,不先做独立平台 | 任务日志和告警载体 | 保留验收;延后独立产品化 |
V1.1 候选扩展:acquisition_path_type、Landing/CRM 来源状态、Lead—App—订单身份质量、CC 留资用户漏斗、国家 × 链路 × 渠道经营汇总。
其他候选需求(未填写优先级与计划时间)
以下事项尚未纳入上方两条主路径;是否加入当前需求池需后续确认。涉及 V1 的项目须先完成上方契约处置。
- 正式课学习专题。
- 完整安装/注册/付费三类留存体系。
- 独立质量状态产品和完整自动监控平台;最低发布质量规则不后置。
- 完整 CRM 数据域。
- 净投产比;退款和净收入已在目标一 G1-06 中跟进。
- 独立 KOL/KOC 模型、预算门禁和目标计划模型。
已收敛的展示与实现假设
- 不再把“8 张 DWS+7 个 ADS”作为固定实施数量;当前采用逻辑数据需求,由数仓决定物理实现。
- 早期六个页面是完整蓝图,不是当前必须一次性交付的页面清单。
- 经营总览首期使用明确标注的毛收入,不等待净收入闭环。
- 正式课学习、完整三类留存和独立质量产品是否进入主路径待确认,涉及 V1 时需同步契约处置。
- 投放获客不再重复完整的 App 安装用户漏斗。
业界做法校准与本项目取舍
- 统一语义层:采用“指标定义一次、多消费端复用”的原则;当前不强制引入特定商业产品。
- 数据感知编排:采用“上游资产完成再触发下游”的原则;具体编排工具由数仓选择。
- Tableau 认证数据源:正式入口应展示认证状态、负责人和说明,而不是仅看页面有数字。
- 增量数据质量检查:首期采用关键规则和分区级检查;暂不建设完整独立可观测平台。
主要证据来源
- 项目记忆:当前事实、决策、优先级和已知风险
- 管理需求的数据建设提炼
- 现有「整体项目数据」优化规格
- 指标、来源、主题和现有表映射
- 正式逻辑数据需求与验收工作簿
- Lark 数据任务总表
- 历史对话:
019ff3e4-ee53-7f90-b289-6dca07098387、01a00964-7249-7143-89b3-accabdffd291