离线数仓实战---网站流量日志分析系统
一、项目需求及架构设计
在大数据—离线数仓实战项目(二)中,介绍了数仓的一些概念,这一部分介绍具体项目需求及架构设计。
1.1、项目需求分析
1.1.1、此项目需求
1、用户行为数据采集平台搭建
2、数据仓库维度建模
3、分析访客主题,统计的报表指标
4、可视化展示
1.1.2、实际项目需求
1、用户行为数据采集平台搭建
2、业务数据采集平台搭建
3、数据仓库维度建模
4、分析,设备、会员、商品、地区、活动等电商核心主题,统计的报表指标近100个。
5、采用即席查询工具,随时进行指标分析
6、对集群性能进行监控,发生异常需要报警。
7、元数据管理
8、质量监控
9、权限管理
1.2、项目架构
1.2.1、技术选型
技术选型主要考虑因素:数据量大小、业务需求、行业内经验、技术成熟度、开发维护成本、总成本预算
数据采集传输: Flume,Kafka,Sqoop ,Logstash,DataX
数据存储: MySQL,HDFS,HBase,Redis,MongoDB
数据计算:Hive,Tez, Spark,Flink,Storm
数据查询:Presto,Kylin ,Impala,Druid,ClickHouse,Doris
数据可视化:Echarts,Superset,QuickBI,DataV
任务调度:Azkaban,Oozie,DolphinScheduler,Airflow
集群监控:Zabbix,Prometheus
元数据管理: Atlas
权限管理: Ranger,Sentry
此项目的技术选型
数据采集传输: Flume(1.9.0),Kafka(2.4.1),Sqoop(1.4.6)
数据存储: MySQL(5.7.16),HDFS(3.1.3)
数据计算:Hive(3.1.2), Spark(3.0.0)
数据可视化:Superset
任务调度:Azkaban(3.84.4)