利用Hive处理大数据实例

一、Hive CLI命令行演示

搭建Hive环境请看这篇文章:Hive介绍与环境搭建-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_70988704/article/details/137839237?spm=1001.2014.3001.5501

1.在终端输入下面的指令。进入Hive CLl交互式命令行模式

hive

2.创建数据库

create database db1;

3.创建表 hiveTestTable

hive> create table if not exists db1.hiveTestTable1(
    > ip string,
    > time string,
    > url string,
    > size string
    > )
    > row format delimited fields terminated by '\t';

4.载入数据到hiveTestTable1表中

load data local inpath '此处为你的数据地址'into table db1.hiveTestTable1;

5.查看表 hiveTestTable1中的数据

select * from db1.hiveTestTable1;

6.从表hiveTestTable1查询部分数据,并将其作为依据来创建表hiveTestTable2

create table db1.hiveTestTable2 as select ip,time,url from db1.hiveTestTable1;

7.查询表hiveTestTable2中的数据

select * from db1.testTestTable2;

8.利用表hiveTestTable2的结构创建表hiveTestTable3

create table if not exists db1.hiveTestTable3 like db1.hiveTestTable2;

9.查看表hiveTestTable3的表结构

desc db1.TestTable3;

二、利用Hive对淘宝用户数据进行处理

1.将要用的数据文件放到/usr/local目录下

[qyf@master local]$ sudo mv /home/qyf/Desktop/user.zip /usr/local

2.给予权限并解压

[qyf@master local]$ sudo chmod -R 777 /usr/local
[qyf@master local]$ sudo unzip ./user.zip -d /usr/local

3. 查看前五行数据

[qyf@master local]$ head -5 raw_user.csv

 

 4.对解压好的两个文件 raw_user.csv和small_user.csv进行操作,删除user_id一列

[qyf@master local]$ sed -i '1d' raw_user.csv
[qyf@master local]$ head -5 small_user.csv # 查看是否删除
[qyf@master local]$ sed -i '1d' small_user.csv

 5.利用shell脚本分别格式化small_user.csv和raw_user.csv文件,将里面的内容分别加入到f.txt文件g.txt文件里

[qyf@master local]$ bash ./pre_deal.sh small_user.csv f.txt
[qyf@master local]$ bash ./pre_deal.sh raw_user.csv g.txt

 

6. 启动hadoop集群,并且打开hive命令行,创建表taobao_user_data1

hive> create table if not exists db1.taobao_user_data1(
    > id string,
    > user_id string,
    > item_id string,
    > behavior string,
    > user_geohash string,
    > time string,
    > location string
    > )
    > row format delimited fields terminated by '\t';

7. 将f.txt文件里的内容导入到该表

8.利用Hive CLI提取出地址为山东的所有数据

9.利用Hive -e命令执行sql语句并导出结果到f1.txt

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值