系统数据流通过程:
电商数据来源分为两部分:
(1)第一部分在网站做埋点,用户点击产生的日志数据,通过nginx,springboot将数据分发到日志服务器,logfile保存在日志服务器上。
(2)第二部分是网站的业务数据,一般保存在mysql数据库。
数据传输
日志数据通过flume收集,然后保存到kafka,再通过flume传输到hdfs。
业务数据直接通过sqoop导入到hdfs。
数据处理
编写hql以及脚本程序,放在azkaban上作为每日定时任务,将最后结果导入到mysql数据库。
数据展示
在页面上展示完成后放在mysql的数据。
flume采集日志:
1.自定义了ETL拦截器和分类型拦截器。
ETL拦截器实现了简单的数据过滤和清洗。注意复杂的清洗还是在hive中清洗,flume只适合做一些最简单的清洗,因为它在复杂的数据清洗上性能并不是很好。
分类型拦截器主要是对数据进行分发到kafka不同的topic中去,所以需要配置不同通道的selector。
问题:为什么增加一层kafka和一层flume而不是直接由flume采集日志到h