论文部分内容阅读
在大型的企业和互联网公司中,每天都会产生非常多的日志文件,数据的量级早已突破了TB (Terabyte)的范畴,如何解决日志数据分散的问题,如何快速而高效的处理这些日志中的数据,如何和业务数据库相互结合,将用户的访问行为、动作偏好分析出来,已经是每一个开始接触大数据的公司都需要考虑的问题。这些问题的解决,可以使企业在发展的路上更清晰的了解自身,能使平时累积的数据为公司带来更大的商业价值。本文从数据分析人员的角度出发,研究企业中常用的数据分析技术和方案,同时参照大数据环境下不断涌现出的各种新兴技术和工具,将各种技术的特点进行分析,提出了利用它们的配合来优化用户行为数据分析的方案,最后设计出一套涵盖数据收集、数据处理、数据计算、数据可视化的用户行为分析系统。本文主要研究和完成的主要工作包括:(1)对系统中所需的相关技术工具进行分析,包括数据收集部分中的Flume、 Kafka,构建数据仓库的MySQ LInfobrigh、Hive,可用于数据计算的Pig,Impa、Spark,生成的可视化图表的Kibana及用于它源数据存储分析和管理的 Elasticsearch等,通过整理它们的特点,确定最后整个系统中对于技术工具的选择。(2)构建数据仓库,通过对不同种类不同类型的日志文件做格式的梳理、数据的清洗,产生格式标准的干净数据文件,将其和从业务数据库导入的数据相互配合,来构建每个产品的数据集,形成数据仓库,以此作为整个用户行为分析系统的核心数据。(3)设计和研发自动的数据可视化工具,将我们在数据仓库之中产生的数据,自动映射至Elasticsearch的文件系统,同时,在Kibana系统里生成默认的图表,解决常规数据可视化方案操作繁琐的问题。依照本文设计方案来构建的用户行为分析系统已在国内某社区互联网公司部署使用,经过数月的运行,情况稳定,效果良好,大大提升了数据分析人员的工作效率,让针对用户行为的分析变的更简单,分析人员也更专注于分析时的逻辑。