设为首页 加入收藏

TOP

大数据——综合案例(一)
2023-07-23 13:34:35 】 浏览:69
Tags:

一、本地数据集上传到到数据仓库Hive

1、 实验数据集的下载

1. 将user.zip下载到指定目录

 

2.给hadoop用户赋予针对bigdatacase目录的各种操作权限

 

3.创建一个dataset目录用于保存数据集

 

4.解压缩user.zip文件

 

 5.可以看到dataset目录下由两个文件

 

 6.查看文件前五条记录

 

 

2、 数据集的预处理

1. 删除文件第一行记录(即字段名称)

 

2. 对字段进行预处理

1)新建一个脚本文件pre_deal.sh并放在dataset目录下

 

2)在pre_deal.sh下面加入以下代码

 

3)执行pre_deal.sh脚本文件,对small_user.csv进行数据预处理操作

 

4)用head命令查看前10行数据

 

 

3、 导入数据库

1. 启动hdfs

 

执行jps命令查看当前运行的进程

 

 

2.把user_table.txt上传到hadoop中

1)在hdfs根目录下创建新目录

 

2)把本地文件系统中的user_table.txt上传到hdfs系统的目录下

 

3)查看HDFS中的user_table.txt的前10条记录

 

 

3. 在Hive上创建数据

1)启动MySQL数据库

 

2)进入hive

 

3)在Hive中创建一个数据库dblab

 

4. 创建外部表

 

 

5. 查询数据

1)查看bigdata_user表的信息

 

2)查看表的简单结构

 

 

3)查询相关数据

 

 

 

二、 Hive数据分析

1、 简单查询分析

1. 查看前10位用户对商品的行为

 

 

2.查询前20位用户购买商品时的时间和商品的种类

 

 

3.设置列的别名

 

 

2、 查询条数统计分析

1.用聚合函数count()计算出表内由多少行数据

 

 

2.在函数内部加上distinct,查出uid不重复的数据由多少条

 

 

3.查询不重复的数据有多少条(为了排除客户刷单情况)

 

 

3、关键字条件查询分析

1.以关键字的存在区间为条件的查询

(1)查询2014年12月10日到2014年12月13日有多少人浏览了商品

 

执行结果:

 

 

(2)以月的第n天为统计单位,依次显示第n天网站卖出去的商品的个数。

 

执行结果:

 

 

2.关键字赋予定值为条件,对其他数据进行分析

取给定时间和给定地点,求当天发出到该地点的货物的数量。

 

执行结果:

 

 

4、 根据用户行为分析

1.查询一件商品在某天的购买比例

 

执行结果:

 

查询一件商品在某天的浏览比例

 

执行结果:

 

 

2.查询某个用户在某一天点击网站占该天所有点击行为的比例

 

 

 

 

 

3.给定购物商品的数量范围,查询某一天在该网站的购买该数量商品的用户id

 

 

 

5、 用户实时查询分析

查询某个地区的用户当天浏览网站的次数,语句如下:

创建新的数据表进行存储

 

导入数据

 

显示结果

 

执行结果如下:

 

 

三、 Hive、MySQL、HBase数据互导

1、 Hive预操作

1.创建临时表user_action

 

查看是否创建成功

 

 

2.将bigdata_user表中的数据插入到user_action

 

查看是否插入成功

 

 

 

 

2、 使用Sqoop将数据从Hive导入MySQL

1.将前面生成的临时表数据从Hive导入到MySQL中

1)、登录MySQL

新建终端,执行以下命令

 

2)、创建数据库

 

使用以下命令查看数据库编码是否utf8

 

3)创建表

在MySQL数据库中dblab中创建一个新表user_action,并设置编码为utf8

 

Exit

 

查看是否创建成功

 

4)导入数据

 

 

2.查看MySQL中的user_action表数据

启动MySQL数据库

 

执行命令查询user_action表中的数据

 

 

3、使用sqoop将数据从MySQL导入HBase

1.启动Hadoop、MySQL、HBase

因为前面的操作所以除了HBase以外都启动了,故此次启动HBase,新建一个终端

 

 

2.启动Hbase shell

 

 

3.创建表user_action

 

 

4.新建终端,进入sqoop,导入数据

 

 

5.查看hbase中user_action表数据

 

 

 

 

4、 使用HBase Java API 把数据从本地导入到HBase中

1.启动Hadoop、HBase

 

 

 

2.数据准备

将之前的user_action数据从hdfs复制到linux系统的本地文件系统中,操作如下

先进入/usr/local/bigdatacase/dataset中

 

将hdfs上的user_action数据复制到本地当前目录中

 

查看前10行数据

 

将00000*文件复制一份重命名为user_action.output(*表示通配符)

 

查看user_action.output前十行

 

 

3.编写数据导入程序

启动eclipse

 

创建java project并命名为ImportHBase

 

 

新建HBaseImportTest class,并输入以下代码

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.List;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.hbase.HBaseConfiguration;

import org.apa

首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Linux中CentOS 7的安装及Linux常.. 下一篇Linux中CentOS 7版本安装JDK、Tom..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目