APP下载

基于大数据技术的网站用户行为分析系统的实现

2019-10-21宋曼

科学与财富 2019年7期
关键词:大数据技术

摘 要:本文在对日志分析的基础上,结合日志收集发展出来的新技术新方法,将日志进行结构化处理,依靠现在的大数据技术进行存储,利用更高性能的数据分析工具进行数据的梳理,建立数据仓库,直至通过数据仓库中的数据自动生成的图表和报表直接呈现给需要改进产品的产品经理、想要了解网站现状的BI部口、以及负责做决断的公司决策者。

关键词:大数据技术; 网站用户行为分析;Hadoop;Hive

1. 引言

随着互联网的飞速发展,互联网企业每天产生的日志高达数TB的数量级,如何高效且准确的从日志中提取网站运行的情况、PV、UV、活跃用户数量、活跃用户构成、用户喜欢的页面类型等等关键的数据信息,已经是目前世界上所有主流互联网企业所迫切解决的问题,我们想要更加详细的了解用户在网站上的行为记录,分析出用户对网站功能和内容的偏好等,来辨别高质量的用户和活跃的用户,维护好这些高质量和活跃的用户,才是促进整个企业的网站建设和个性化服务发展的根本动力,从而提升企业产品在整个互联网市场上的综合竞争能力。

2. 关键技术

自2008年google提出big data的概念以来,已经过去了10年,这10年中,大数据技术飞速崛起,hadoop相关技术作为时代的领军者己经被成千上万的企业所采用,一些大型的企业,Google、Apache、Yahoo、IBM、Amazon、Baidu、Alibaba、Tencent等等动辄部署数千台hadoop服务器来进行数据的存储、统计和分析。而在技术不断迭代更新的今天,又有大量的新技术在这个生态圈中出现,批量配置管理工具puppet、SaltStack、Ambari;系统管理及监控工具Hue、Karmasphere、Zabbix;序列化处理和调度管理工具Avro、Zookeeper;数据收集工具Scribe、Logstash、Flume、Graylog2、Fluentd;类SQL查询数据仓库Hive、Impala;流式处理工具Pig;并行计算框架MapReduce、Tez和Spark;机器学习数据挖掘的Mahout;列式存储数据Hase;流式数据导入导出工具Sqoop、Kafka、Hiiho;还有适用于搜索的Elasticsearch及可视化工具Kibana等等。

本文包含的创新点和需要解决的技术难点如下:

(1)Linux系统、MySQL、Hadoop、HBase、Hive、Sqoop、R、Eclipse等系统和软件的安装和使用;

(2)大数据处理的基本流程的设计和优化;

(3)选择合适的数据预处理方法;

(4)在不同类型数据库之间进行数据相互导入导出;

(5)使用R语言进行可视化分析;

(6)使用Elipse编写Java程序操作HBase数据库。

3. 研究过程

本文的研究方法主要是结合大数据技术,通过各类大数据的系统软件和应用软件做实验研究。实验过程可以在单机上完成,也可以在集群环境下完成。建议计算机硬件配置为:500GB以上硬盘,8GB以上内存。本文对应的研究目标数据集是:网站用户购物行为数据集2000万条记录。研究的主要技术路线如下:

(1)安装Linux操作系统

(2)安装关系型数据库MySQL

(3)安装大数据处理框架Hadoop

(4)安装列族数据库HBase

(5)安装数据仓库Hive

(6)安装Sqoop

(7)安装R

(8)安装Eclipse

(9)对文本文件形式的原始数据集进行预处理

(10)把文本文件的数据集导入到数据仓库Hive中

(11)对数据仓库Hive中的数据进行查询分析

(12)使用Sqoop将数据从Hive导入MySQL

(13)使用Sqoop将数据从MySQL导入HBase

(14)使用HBase Java API把数据从本地导入到HBase中

(15)使用R对MySQL中的数据进行可视化分析

本课题研究的具体实验过程如下:

(1)实验环境准备

(2)本地数据集上传到数据仓库Hive

(3)Hive数据分析

(4)Hive、MySQL、HBase数据互导

每个实验步骤所需要的知识储备、实验难点和任务清单如下:

(1)实验环境准备

所需知识:Windows操作系统、Linux操作系统、大数据处理架构Hadoop的关键技术及其基本原理、列族数据库HBase概念及其原理、数据仓库概念与原理、关系型数据库概念与原理。

实验难点:双操作系统安装、虚拟机安装、Linux基本操作、Hadoop安装、HBase安装、Sqoop安装、Eclipse安装。

任务清单:1. 安装Linux系统;2. 安装Hadoop;3. 安装MySQL;4. 安装HBase;5. 安装Hive;6. 安装Sqoop;7. 安装R;8. 安装Eclipse。

(2)本地数据集上传到数据仓库Hive

所需知识: Linux系统基本命令、Hadoop项目结构、分布式文件系统HDFS概念及其基本原理、数据仓库概念及其基本原理、数据仓库Hive概念及其基本原理

实验难点:Hadoop的安装与基本操作、HDFS的基本操作、Linux的安装与基本操作、数据仓库Hive的安装与基本操作、基本的数据预处理方法。

任务清单:1. 安装Linux系统;2. 数据集下载与查看;3. 数据集预处理;4. 把数据集导入分布式文件系统HDFS中;5. 在数据仓库Hive上创建数据库。

(3)Hive数据分析

所需知识:数据仓库Hive概念及其基本原理、SQL语句、数据库查询分析。

实验难点: 数据仓库Hive基本操作、创建数据库和表、使用SQL语句进行查询分析。

任务清单:1. 启动Hadoop和Hive;2. 创建数据库和表;3. 简单查询分析;4. 查询条数统计分析;5. 关键字条件查询分析;6. 根据用户行为分析;7. 用户实时查询分析。

(4)Hive、MySQL、HBase数据互导

所需知识:数据仓库Hive概念与基本原理、关系数据库概念与基本原理、SQL语句、列族数据库HBase概念与基本原理。

实验难点:数据仓库Hive的基本操作、关系数据库MySQL的基本操作、Sqoop工具的使用方法、HBase API的Java编程、Eclipse开发工具使用方法。

任务清单:1. Hive预操作;2. 使用Sqoop将数据从Hive导入MySQL;3. 使用Sqoop将数据从MySQL导入HBase;4. 使用HBase Java API把数据从本地导入到HBase中。

作者简介:

宋曼(1984.03-),女,汉族,湖北天門人,专任教师,党员,副高,硕士,主要研究方向:Android开发、Web开发

猜你喜欢

大数据技术
大数据技术在电子商务中的应用
大数据技术对新闻业务的影响研究
大数据技术在电气工程中的应用探讨
大数据技术在商业银行中的应用分析