(本项目为涛哥数据运营系统学习笔记)
1、项目背景
1.1 整体背景:
需求1:需要针对线上访问行为、消费行为、业务行为进行统计分析!以支撑公司的业务运营,提高业务转化率,改善公司运营效果!
解决:构建一个数仓系统,作为数据的管理和运算中心、数据存档、各种统计、运算任务的核心平台。
需求2:基于数仓,针对每个用户进行精准营销,个性化推荐,改善用户体验、提高用记粘性、增大销售额。
解决:对用户进行精准用户画像(深入分析用户后给用户打上各种规范标签:年龄、性别、地域特征、偏好特征、价值指数、行为习惯、消费习惯……)
需求3:基于画像,开发推荐系统,用于支撑精细化营运:
如:针对不同的人群发放不同的优惠券,定制不同的打折规则、推行不同的营销活动、针对流失率大的人群进行挽留。
针对不同的人,不同的场景推荐不同的物品。
技术:可进行离线计算:如用户画像计算时间跨度长的,运算量大的任务
可实时计算:统计推荐系统的营销手段进行实时效果反馈,运算相对简单的需求
1.2 技术架构
第一步:数据采集:数据源
1、pc埋点,手机端埋点日志:使用Flume集群
2、业务系统数据库:Sqoop
Flume:读取埋点日志传输到HDFS(离线)或Kafka(实时)
Sqoop:从业务数据库把数据进行迁移过来
第二步:对数据进行预处理(从非结构化转结构化)
1、数据清洗
2、信息回补(数据缺失)
3、JSON解析
4、GUID生成(同一个人数据全局区分开)
5、数据集成等
第三步:数仓ODS层(结构化存储)加载到HIVE
1、PC端埋点日志表
2、移动端埋点日志表
3、用户注册信息表
4、订单信息表……
第四步:数仓DWD层(从ODS层算出来的中间表)、DWS层
1、事件全量明细