离线数据分析平台实战——210项目综述与需求分析
项目综述
项目分别分为bf_track,
bf_transforer和
bf_dataapi。
本次项目主要以分析七个模块的数据,
分别为用户基本信息分析、操作系统分析、地域信息分析、用户浏览深度分析、外链数据分析、订单信息分析以及事件分析。
那么针对不同的分析模块,我们又不同的用户数据需求,所以我们在bf_track项目中提供不同的客户端来收集不同的数据。
在bf_transformer中分别采用hive+mr两种方式进行数据分析。在bf_dataapi中进行分析结果的api提供以及结果图表展示。
收集系统(bf_track)总述
我们需要将用户浏览的数据采集到我们的存储系统(hdfs)中,
我们只收集pc端数据和程序后台的部分数据。在pc端我们通过集成js来收集用户浏览行为数据;
在程序后台,通过集成java的jar文件来收集我们需要的数据。
在这里只考虑java开发环境。
js/jar将收集的数据发送到nginx,然后flume监控nginx日志,将数据写入到hdfs中。
java sdk
由于本次课程中涉及到的七个模块数据,只有订单信息的分析由于需要明确是否进行支付,那么需要程序后台发送消息通知,故这里只有该订单分析模块需要在后台程序中调用。
档详见:..\文档\Java SDK需求文档&设计文档 .doc
js sdk
由于我们本次项目的重点就是分析pc端的数据,所以我们最终分析的七个模块基本上都需要从pc端获取不同的数据。具体需求文档详见:..\文档\JS SDK需求文档&设计文档.doc