Hive数据分析实验报告

这篇具有很好参考价值的文章主要介绍了Hive数据分析实验报告。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Hive数据分析实验报告

实验要求

1 完成本地数据user_log文件上传至HDFS中

2 完成HDFS文件上传至Hive中

用户行为日志user_log.csv,日志中的字段定义如下:

  1. user_id | 买家id
  2. item_id | 商品id
  3. cat_id | 商品类别id
  4. merchant_id | 卖家id
  5. brand_id | 品牌id
  6. month | 交易时间:月
  7. day | 交易事件:日
  8. action | 行为,取值范围{0,1,2,3},0表示点击,1表示加入购物车,2表示购买,3表示关注商品
  9. age_range | 买家年龄分段:1表示年龄<18,2表示年龄在[18,24],3表示年龄在[25,29],4表示年龄在[30,34],5表示年龄在[35,39],6表示年龄在[40,49],7和8表示年龄>=50,0和NULL则表示未知
  10. gender | 性别:0表示女性,1表示男性,2和NULL表示未知
  11. province| 收货地址省份

3 Hive操作

(1)查看user_log表数据结构

(2)查看user_log表简单数据结构

(3)查看日志前10个交易日志的商品品牌

(4)查询前20个交易日志中购买商品时的时间和商品的种类

(5)用聚合函数count()计算出表内有多少条行数据

(6)在函数内部加上distinct,查出user_id不重复的数据有多少条

(7)排除顾客刷单(查询不重复的数据)

(8)查询双11当天有多少人购买了商品

(9)品牌2661,当天购买此品牌商品的数量

(10)查询多少用户当天点击了2661品牌的该店

(11)查询双十一当天男女购买商品比例

(12)查询某一天在该网站购买商品超过5次的用户id

(13)创建姓名缩写表 其中字段大于4条,并使查询插入,最后显示姓名缩写表格数据

IP地址规划表

Hive数据分析实验报告

实验步骤

1 数据集预处理

  • 安装unzip
yum install unzip
  • 创建数据存放文件夹
mkdir /usr/local/dbtaobao/dataset
  • 解压数据集zip包
cp -r /mnt/hgfs/data_format.zip /usr/local/dbtaobao/dataset/
cd /usr/local/dbtaobao/dataset/
unzip data_format.zip
  • 查看user_log.csv前5行数据
head -5 user_log.csv
  • 删除第一行
sed -i '1d' user_log.csv
  • 提取10000条user_log中日期为11月11日的数据,并存放于small_user_log中

    • 创建脚本predeal.sh
infile=$1
outfile=$2
awk -F "," 'BEGIN{
                    id=0;
                }
                {
                    if($6=11 && $7=11){
                        id=id+1;
                        print $1","$2","$3","$4","$5","$6","$7","$8","$9","$10","$11","$12
                        if(id==10000){
                            exit
                        }
                    }
                }'  $infile > $outfile
    • 为predeal.h提权
chmod +x ./predeal.sh
    • 运行脚本predeal.sh,查看输出
./predeal ./user_log.csv ./small_user_log.csv

2 数据集上传HDFS

  • 在hdfs中创建存放user_log的文件夹
start-all.sh
hdfs dfs -mkdir -p /dbtaobao/dataset/user_log
  • 向hdfs推送small_user_log.csv
hdfs dfs -put /usr/local/dbtaobao/dataset/small_user_log.csv /dbtaobao/dataset/user_log

Hive数据分析实验报告

  • 查看上传成功的数据文件前10行
hdfs dfs -cat /dbtaobao/dataset/user_log/small_user_log.csv | head -10

3 从HDFS中导出数据集至HIVE数据库

  • 创建HIVE数据库dbtaobao
create database dbtaobao;
  • 创建user_log表
create external table dbtaobao.user_log(user_id int,item_id int,cat_id int,merchant_id int,brand_id int,month string,day string,action int,age_range int,gender int,province string) comment 'Welcome to Alex dblab, now create dbtaobao.user_log!' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' stored as textfile location '/dbtaobao/dataset/user_log';
  • 查看表user_log前十行数据
use dbtaobao;
select * from user_log limit 10;

Hive数据分析实验报告

4 Hive操作

(1)查看user_log表数据结构
show create table user_log;
(2)查看user_log表简单数据结构
desc user_log;
(3)查看日志前10个交易日志的商品品牌
select brand_id from user_log limit 10;
(4)查询前20个交易日志中购买商品时的时间商品的种类
select month,day,brand_id from user_log limit 20;
(5)用聚合函数count()计算出表内有多少条行数据
select count(*) from user_log;

Hive数据分析实验报告

Result : 10000

(6)在函数内部加上distinct,查出user_id不重复的数据有多少条
select count(distinct user_id) from user_log;

Hive数据分析实验报告

Result : 358

(7)排除顾客刷单(查询不重复的数据
select count(distinct user_id,item_id,cat_id,merchant_id,brand_id,month,day,action,age_range,gender,province) from user_log;

Hive数据分析实验报告

Result : 9944

(8)查询双11当天有多少人购买了商品
select count(distinct user_id) from user_log where action='2';

Hive数据分析实验报告

Result : 358

(9)品牌2661,当天购买此品牌商品的数量
select count(*) from user_log where brand_id='2661' and action='2';

Hive数据分析实验报告

Result : 3

(10)查询多少用户当天点击了2661品牌的该店
select count(distinct user_id) from user_log where brand_id='2661' and action='0';

Hive数据分析实验报告

Result : 1

(11)查询双十一当天男女购买商品比例
select count(distinct user_id) from user_log where gender='0' and action='2';
select count(distinct user_id) from user_log where gender='1' and action='2';

Hive数据分析实验报告

Result : 238 (女)

Hive数据分析实验报告

Result : 214 (男)

男 女 比 例 = 214 / 238 = 89.916 % 男女比例 = 214 / 238 = 89.916\% =214/238=89.916%

(12)查询某一天在该网站购买商品超过5次的用户id
select user_id from user_log where action='2' group by user_id having count(action='2')>5;

Hive数据分析实验报告

Result :

user_id
1321
6058
16464
18378
23786
26516
32569
35260
41494
47958
55440
61703
69247
70816
71744
84400
106446
106629
153790
161778
171909
173427
179194
186568
188977
196638
203651
211273
212058
212504
217844
219316
234456
242845
249869
251260
256190
261596
270040
272775
274559
278823
278884
283204
284990
289429
310348
310632
320313
328230
330576
332670
333389
345251
356220
356408
366342
370679
378206
379005
389295
396129
407719
409280
422917

(13)创建姓名缩写表,其中字段大于4条,并使查询插入,最后显示姓名缩写表格数据
  • 创建表gr
create external table dbtaobao.GR(user_id int,item_id int,age_range int,gender int,province string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' stored as textfile;

Hive数据分析实验报告

  • 从表user_log中导入user_id,item_id,age_range,gender,province数据到表gr
insert into table gr select user_id,item_id,age_range,gender,province from user_log;

Hive数据分析实验报告文章来源地址https://www.toymoban.com/news/detail-458016.html

  • 查询表gr的前十条数据
select * from gr limit 10;

到了这里,关于Hive数据分析实验报告的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 数据分析笔记:基本概念,常用图表,报告大纲

    数据分析笔记:基本概念,常用图表,报告大纲

    对数据进行分析。 数据分析是为了 提取有用信息和形成结论 而对数据加以详细研究和概括总结的过程。 在实际工作中,帮助管理者 判断和决策 。 数据分析的基本步骤包括明确思路,制定计划、数据收集、数据处理、数据分析、数据显示和报告撰写。 明确思路 :分析的目

    2024年02月06日
    浏览(7)
  • 爬虫+数据分析+可视化大作业:基于大数据的高质量电影分析报告

    爬虫+数据分析+可视化大作业:基于大数据的高质量电影分析报告

    主要目的是为了学习Scrapy与Sklearn而不是写论文,结论是瞎扯的,轻喷求求了 在我们的日常生活中,电影已经成为了我们娱乐放松活动所不可缺少的元素。然而,自电影诞生以来,人们每天都在生产着电影,却又生产着质量良莠不齐的电影。在这些几乎是无穷无尽的电影洪流

    2024年02月03日
    浏览(29)
  • Python数据分析处理报告--实训小案例

    Python数据分析处理报告--实训小案例

    目录 1、实验一 1.1、题目总览 1.2、代码解析 2、实现二 2.1、题目总览 2.2、代码解析 3、实验三 3.1、题目总览 3.2、代码解析 4、实验四 3.1、题目总览 3.2、代码解析 哈喽~ 今天学习记录的是数据分析实训小案例。 就用这个案例来好好巩固一下 python 数据分析三剑客。 前期准备

    2024年02月10日
    浏览(14)
  • 【统计模型】大学生恋爱数据分析报告

    【统计模型】大学生恋爱数据分析报告

    目录 大学生恋爱数据分析报告 一、研究目的 二、数据来源和相关说明 三、描述性统计分析 3.1 基本情况 (1)年级、性别、家乡情况 (2)身高、体重情况 3.2 恋爱情况 (1)恋爱比例 (2)恋爱史 3.3 职务担任情况 3.4 运动情况 3.5 才艺情况 3.6 颜值情况 3.7 生活规划情况 3.8

    2024年02月09日
    浏览(12)
  • 大数据分析组件Hive-集合数据结构

    Hive是一个基于Hadoop的数据仓库基础设施,用于处理大规模分布式数据集。它提供了一个类似于SQL的查询语言(称为HiveQL),允许用户以类似于关系型数据库的方式查询和分析存储在Hadoop集群中的数据。 Hive常作为离线数仓的分析工具,当面临Json数据时,Hive需要用到其数据结

    2024年01月25日
    浏览(9)
  • 电影票房之数据分析(Hive)

    #进入hive #在hive中创建数据库 mydb #使用数据库 mydb #创建表moviecleaned并使用\\\"/t\\\"分割字段 #将本地清洗后的数据导入moviecleaned表中 #创建top10_boxoffice表,用来存放数据查询的结果 #查询,并将结果导入top10_boxoffice表中 #创建boxoffice_national_day表,用来存放数据查询的结果 #查询,并将

    2024年02月13日
    浏览(18)
  • 基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)

    基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)

    Hive介绍: Hive是建立在Hadoop之上的数据仓库基础架构,它提供了类似于SQL的语言(HQL),可以对大规模数据集进行查询和分析。通过Hive,我们可以在分布式存储系统中进行复杂的数据处理和分析。 Sqoop简介: Sqoop是一个用于在Apache Hadoop和关系型数据库之间传输数据的工具。

    2024年04月13日
    浏览(12)
  • 前程无忧岗位数据可视化分析报告

    前程无忧岗位数据可视化分析报告

    数据爬取的内容主要包括30个岗位种类(数据分析,产品经理,产品助理,交互设计,前端开发,软件设计,IOS开发,业务分析,安卓开发,PHP开发,业务咨询,需求分析,流程设计,售后经理,售前经理,技术支持,ERP实施,实施工程师,IT项目经理,IT项目助理,信息咨询

    2024年02月06日
    浏览(10)
  • Hive实战 —— 电商数据分析(全流程详解 真实数据)

    Hive实战 —— 电商数据分析(全流程详解 真实数据)

    该实战项目的目的在于通过基于 小型数据的Hive数仓构建 进行的业务分析来做到 以小见大 ,熟悉实际生产情况下构建Hive数仓解决实际问题的场景。本文内容较多,包含了从前期准备到数据分析的方案,代码,问题,解决方法等等, 分析的数据文件 和 Zeppelin中的源文件 都已

    2024年02月21日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包