一、前言
数仓建模的成熟度在金融领域,尤其是银行、保险和证券行业得益于传统数据仓库服务厂商的推动,具有非常好的最佳实践,但是在互联网领域却从未形成真正的标准和规范。本文基于汽车电商零售领域的实践总结和沉淀而来,作为随笔,发布与此,共享给大家。
二、工作流程
数仓模型设计的工作流程,基于场景不同略有差异,Kimball维度建模工具箱中提到了四步骤建模法:活动选择、定义粒度、确定维度、确定指标,适合的是特定场景和特定业务活动的建模,并不适用开放型的场景和系统性的数仓建设。以下工作流程是改进之后的,自顶向下的数仓建模工作流程。具体的工作流程如下图所示:
该工作流程共分为是个步骤:
1. 业务建模:识别业务活动和业务对象等核心业务要素,包括业务规则和业务逻辑等;
2. 总线矩阵:建立业务主题的总线矩阵模型,输出上一环节识别出的业务活动的分析维度和度量指标,同时识别出公共维度;
3. 定义粒度:选择总线矩阵中的某一个业务活动进行数据聚合粒度的确认,包括识别聚合的维度和基于该维度的聚合粒度。
4. 数据建模:基于前面步骤确定的业务活动+分析维度+度量指标+聚合粒度,进行维度表和事实表的设计,并输出。
三、平台业务模型
业务建模是对业务活动抽象和提炼,通过构建某一特定主体的业务模型,从而识别该业务主题涉及的业务活动和业务对象,以某汽车电商零售项目为例,其平台业务模型如下图所示:
基本的业务建模逻辑,可以按照:渠道推广->消息推送->营销活动->终端流量->车商车源->交互行为->交易行为->交付行为->售后行为,九大业务环节进行拆分和梳理。渠道推广环节,完成app下载、用户注册登录等相关活动;消息推送,通过应用消息实现存量用户的活跃;营销活动中,用户作为目标受众,进行商品信息的推送;终端流量中,用户与平台之间进行信息交互,包括搜索、筛选、推荐、浏览、收藏、订阅、分享、对比等;车商车源环节,完成商家签约和车源上架;交互行为,包括预留线索、在线资源、电话咨询和微信互动等;交易环节主要涉及定金支付、身份认证、资料邮寄等;交付环节主要涉及尾款支付等;售后环节主要涉及评价、客诉和理赔等。
四、未完待续
方法大于技巧,任何案例都是基于特定场景和环境约束下的产物,案例的价值在于参考,通过案例学会做事的方法才是重点,并逐步迁移到自己所处的项目实践中去,才是终极目标。
实践随笔,持续更新,敬请关注。
作者:张子良
出处:http://www.cnblogs.com/hadoopdev
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。