当前位置: 首页 > 后端技术 > Node.js

MaxCompute如何在电商场景下进行漏斗模型分析

时间:2023-04-03 20:40:06 Node.js

简介:本文以一个电商案例为例,介绍如何使用离线计算并制作漏斗图。后台漏斗模型其实是一种通过产品各种数据的转化率来判断产品运营情况的工具。转化漏斗就是通过每个阶段的数据转化来判断产品的哪一部分有问题,进而不断优化产品。电子商务漏斗模型,用户购买产品的路径,从浏览产品到支付订单的每一个环节的转化。本文将展示从用户“浏览-点击-购买”链接的漏斗分析和展示。前提条件开通日志服务开通MaxCompute开通Dataworks开通QuickBI案例一、业务架构图二、业务流程通过阿里云日志服务采集日志数据。日志服务的数据同步到大数据计算服务MaxCompute。MaxCompute做离线计算。通过阿里云QuickBI可视化数据。3.准备工作将日志服务采集的增量数据同步到MaxCompute分区表中(本文示例以时间和天为单位,展示各环节的转化率)。详见:日志服务迁移至MaxCompute。并通过Dataworks设置定时调度执行,每天早上定时抓取前一天的数据,计算出以天为单位的转化率漏斗图。详见:调度参数表1.日志源表:ods_user_trans_d表2.创建ODS层表:ods_user_trace_data。相关数据仓库模型的定义见:数据引入层(ODS)CREATETABLEIFNOTEXISTSods_user_trace_data(md5STRINGCOMMENT'useruid的md5值的前8位',uidSTRINGCOMMENT'useruid',tsBIGINTCOMMENT'用户操作时间戳',ipSTRINGCOMMENT'ip地址',statusBIGINTCOMMENT'服务器返回状态码',bytesBIGINTCOMMENT'返回客户端字节数',device_brandSTRINGCOMMENT'设备品牌',deviceSTRINGCOMMENT'终端型号',system_typeSTRINGCOMMENT'系统类型,Android,IOS,ipad,Windows_phone',customize_eventSTRINGCOMMENT'自定义事件:登录/退出/购买/注册/点击/后台/切换用户/浏览/评论',use_timeBIGINTCOMMENT'APP单次使用时长,事件退出、后台、切换用户时,有此项',customize_event_contentSTRINGCOMMENT'用户关注内容信息,customize_event在浏览评论时,包含该栏目')PARTITIONEDBY(dtSTRING--以dt为时间分区,单位为天。);CREATETABLEIFNOTEXISTSods_user_trace_data(md5STRINGCOMMENT'用户uid的md5值的前8位',uidSTRINGCOMMENT'用户uid',tsBIGINTCOMMENT'用户操作时间戳',ipSTRINGCOMMENT'ip地址',statusBIGINTCOMMENT'服务端返回状态码',bytesBIGINTCOMMENT'返回给客户端的字节数',device_brandSTRINGCOMMENT'设备品牌',deviceSTRINGCOMMENT'终端型号',system_typeSTRINGCOMMENT'系统类型,Android,IOS,ipad、Windows_phone',customize_eventSTRINGCOMMENT'自定义事件:登录/退出/购买/注册/点击/后台/切换用户/浏览/评论',use_timeBIGINTCOMMENT'APP单次使用时长,事件退出时,后台,switch用户时有此项',customize_event_contentSTRINGCOMMENT'用户关注内容信息,customize_event浏览评论时包含该栏')PARTITIONEDBY(dtSTRING--dt作为时间分区,单位是天。);表3.创建dw层表:dw_user_trace_data。相关数据仓库模型的定义可以参考:详细的GranularityFactLayer(DWD)CREATETABLEIFNOTEXISTSdw_user_trace_data(uidSTRINGCOMMENT'用户uid',device_brandSTRINGCOMMENT'设备品牌',deviceSTRINGCOMMENT'终端型号',system_typeSTRINGCOMMENT'系统类型,Android,IOS,ipad,Windows_phone',customize_eventSTRINGCOMMENT'自定义事件:登录/退出/购买/注册/点击/后台/切换用户/浏览/评论',use_timeBIGINTCOMMENT'APP的单使用时间,事件退出、后台、切换用户时,有此项',customize_event_contentSTRINGCOMMENT'用户关注内容信息,customize_event浏览评论时,包含该栏目')PARTITIONEDBY(dtSTRING--dt用作时间分区,单位为天。);表4.创建ADS层结果表:rpt_user_trace_data。相关数据仓库模型的定义请参考:DataWarehouseHierarchicalCREATETABLEIFNOTEXISTSrpt_user_trace_data(browseSTRINGCOMMENT'views',clickSTRINGCOMMENT'clicks',purchaseSTRINGCOMMENT'purchase',browse_rateSTRINGCOMMENT'浏览转化rate',click_rateSTRINGCOMMENT'点击转化')PARTITIONEDBY(dtSTRING--以dt为时间分区,单位为天。);4。写业务逻辑用户路径:浏览->点击->购买,每个链接的转化率(转化率=从一个页面进入下一页的人数比例)。insertOVERWRITEtablerpt_user_trace_dataPARTITION(dt=${bdp.system.bizdate})SELECTbrowseaspageviews,clickasclicks,purchaseaspurchases,concat(round((click/browse)*100,2),'%')as点击转化率,concat(round((purchase/click)*100,2),'%')aspurchaseconversionratefrom(SELECTdt,count(1)browsefromdw_user_trace_datawherecustomize_event='browse'anddt=${bdp.system.bizdate}groupbydt)aleftJOIN(selectdt,count(1)clickfromdw_user_trace_datawherecustomize_event='click'anddt=${bdp.system.bizdate}groupbydt)bona.dt=b.dtleftJOIN(selectdt,count(1)purchasefromdw_user_trace_datawherecustomize_event='purchase'anddt=${bdp.system.bizdate}groupbydt)cona.dt=c.dt;5。结果6.数据可视化展示通过QuickBI创建网站用户分析画像仪表盘,实现数据表的可视化。详见:QuickBI从上图我们发现从浏览到点击的业务量呈现明显的萎缩趋势,转化率偏低。分析当前业务流程中哪个环节是薄弱环节,可以帮助人们更加关注薄弱环节,提高整个流程的产出。这提高了整个过程的效率。测试数据根据上述漏斗模型的案例,阿里云为大家提供了一些DEMO数据。大家可以按照上面的例子下载数据,完成整个案例的操作,得到你的漏斗模型图。数据如下:测试数据以上是如何使用MaxCompute制作漏斗图的介绍。作者:张雅静原文链接本文为阿里云原创内容,未经允许不得转载