电商数仓:用户行为数据仓库(一)数据仓库建设和技术选型
数据仓库概念
数据仓库(Data WareHouse),简写为DW或DWH,为企业决策制定过程,提供所有系统数据支持的战略集合,通过对数据仓库中的数据分析,帮助企业改进业务流程,控制成本,提高产品质量
数据仓里不是数据的最终目的地,而是为数据最终目的地做好准备,这些准备对数据:清洗,转义,分类,重组,合并,拆分,统计
项目需求分析
1.数据采集平台搭建
2.用户行为数据仓库的分层搭建
3.实现业务数据仓库的分层搭建
4.针对数据仓库中的数据进行留存,转化率,CMV,复购率,活跃等报表分析
架构设计
技术选型
数据采集传输 : Flume,Kafka,Logstash,DataX,Sqoop
数据存储: Hive.Mysql,HDFS,HBase,S3
数据计算:spark,Hive,Tez,Flink,Storm
数据查询 : Presto,Impala,Kylin
系统结构设计
数据流程设计
框架和版本选型
产品 | 版本 |
---|---|
Hadoop | 2.7.2 |
Flume | 1.7.0 |
Kafka | 0.11.0.2 |
Kafka Manager | 1.3.3.22 |
Hive | 1.2.1 |
Sqoop | 1.4.6 |
MySQL | 5.6.24 |
Azkaban | 2.5.0 |
Java | 1.8 |
Zookeeper | 3.4.10 |
Presto | 0.189 |
注意: 框架选择最近半年左右稳定版
集群资源规划设计
服务器hadoop102 | 服务器hadoop103 | 服务器hadoop104 | |
---|---|---|---|
HDFS | NameNode DataNode | DataNode | DataNode SecondaryNameNode |
Yarn | NodeManager | Resourcemanager NodeManager | NodeManager |
Zookeeper | Zookeeper | Zookeeper | Zookeeper |
Flume(采集日志) | Flume | Flume | |
Kafka | Kafka | Kafka | Kafka |
Flume(消费Kafka) | Flume | ||
Hive | Hive | ||
MySQL | MySQL | ||
Presto | Presto |