如何解读从数据需求到数仓构建的整体流程?这篇文章里,作者结合实际案例,从需求分析、可视化看板设计、数据采集、数仓规划、维度建模等方面进行了描述和拆解,不妨来看一下,或许会对你有做帮助。
一、背景
最近发文章,发现在文章中有插入广告功能,假设广告插入为新上线的新功能。
1. Web端链路
2. 业务需求
运营人员希望分析广告投放、广告曝光、落地页曝光、支付页、支付成功转化链路的转化情况?
本文以此为背景,从需求分析、可视化看板设计、数据采集、数仓规划、维度建模等几个阶段去描述数据需求到数仓构建的整体流程。
二、需求分析阶段
1. 目的
了解清楚业务问题和目标后,搞清楚数据怎么定义和描述这个问题?列出结果指标和过程指标,确定指标的展现形式。
2. 业务过程调研
3. 需求调研
根据业务调研及业务目标,使用不同的数据分析分析方法列出指标体系,最终大致遵循常用指标分类方式。
2)了解以前的报表,对现有报表系统中的报表进行研究分析,了解关键性指标。
4. 确定指标
5. 确定指标统计含义及口径
在筛选指标时,需要考虑指标的数据来源、数据质量、数据可靠性等因素。在此过程中,需要补充数据来源系统,来源表,来源字段,计算方式等。
三、可视化看板设计阶段
1. 根据指标需求设计可视化看板
2. 确定展示内容和筛选条件
1)卡片展示内容:指标名称、统计口径、指标值、指标单位、统计日期、同比值、环比值、更新时间。
筛选条件:日期、支持选择今日、昨日、本周、上周、本年、去年、最近7天、最近30天等等。不能选择今天及以后。
筛选条件:日期范围。支持选择今日、昨日、本周、上周、本年、去年、最近7天、最近30天等等。不能选择今天及以后,支持按日、按月、按年去对比。
筛选条件:日期范围,支持选择今日、昨日、本周、上周、本年、去年、最近7天、最近30天等等。不能选择今天及以后。
四、数据采集阶段
1)熟悉业务数据:明确业务过程与表之间的关系,表与表之间的关系,字段之间的关联关系。
2)调研数据源情况:是否具备采集条件,数据库类型,存储格式,通过什么方式采集。对缺失的用户行为数据进行埋点。
埋点时需根据不同埋点类型以及业务情况选择合适的埋点方案和前后端采集方案。
1. 埋点需求分析
2. 自定义埋点方案设计
在设计埋点前,可做一些埋点文档和埋点评审的规范定义,方便文档的维护和工作的开展。
未了保障数据的准确性,需注意触发时机和规则定义:比如什么样的曝光是有效的?商品停留时间超过2s,卡片至少漏过50%。商品曝光重复:如果之前已经可见且上报了,那么不做二次上报等规则。
五、数仓规划阶段
1. 数仓分层规划
操作数据层:ODS(Operational Data Store):把操作系统数据几乎无处理地存放在数据仓库系统中。
事实明细层:DWD(Data Warehouse Detail):DWD 层是在ODS层基础上,根据业务过程建模出来的事实明细层。
公共汇总层:DWS(Data Warehouse Summary):一般根据维表数据和明细事实数据加工生成,作为通用的数据模型使用。
应用数据层:ADS(Application Data Store):存放数据产品个性化的统计指标,根据明细层、汇总层及维表数据加工生成。
想了解更多数仓分层可查阅上篇文章《带你轻松理解数仓为啥分层?》https://www.woshipm.com/share/5892372.html
2. 主题域规划
我们选择按照业务过程划分主题域:划分的前提,先理清业务过程,根据业务过程去抽象出主题,比如浏览,曝光,点击,都属于用户行为的业务过程,就可以划分成流量主题。
六、数仓设计阶段
1. 构建业务总线矩阵
在数据仓库领域中,业务总线矩阵是一种用于设计和组织数据仓库的业务模型的工具。它是基于业务需求和业务过程的分析,明确业务过程与维度的关系。它帮助将业务需求转化为数据模型,并指导数据仓库的建模和设计过程。
从该业务矩阵中,我们可以得知需要建设哪些DIM层维度表,DWD层的事实表。
2. 指标拆分
指标的拆分是运算过程的拆分,维度模型里的指标拆分是一种思路,是模型设计很重要的一环。想了解更多可看《原子指标、派生指标、复合指标》。
派生指标:派生指标是由原子指标、时间周期、修饰词构成,用于反映企业某一业务活动在指定时间周期及目标范围中的业务状况。
复合指标:由派生指标直接运算而来,通常是比率型指标。比如最近七天广告点击率,他的特点就是产生了新的原子指标。
3. 维度表设计
根据业务总线矩阵,可构建用户维度表、时间维度表、地理位置维度表等等。
4. 事实表设计
此处拓展事实表构建流程。
事实表说明:
业务过程定义:业务过程是从企业的经营收益、成本出发,价值链条上有影响力的用户需求事情或者事件。而且,这样的过程非常多,我们要分析当中的核心关键过程,不断细分。
2)声明粒度:定义事实表的每一行所表示的业务含义,尽量选择最细级别的原子粒度,以确保事实表的应用具有最大的灵活性。
3)确定维度:选择能够描述清楚业务过程所处的环境的维度信息。
4)确定事实:事实有可加性、半可加性、非可加性三种类型 需要将不可加性事实分解为可加的组件。
5)冗余维度:考虑更多的是提高下游用户的使用效率,降低数据获取的复杂性,减少关联的表数量。
文章阅读事实表:
页面浏览事实表:
下单累计快照事实表:
根据需求,汇总表还需要统计每月、每年、近7天、近30天等数据汇总情况,此处不做过多表格展示。需要注意命名规范以及事实是否可加。