关于hive的练习归纳

本文详细介绍了Hive的操作,包括理解映射、设置分隔符,如FIELDS TERMINATED BY和LINES TERMINATED BY,以及如何处理默认分隔符。接着,讨论了分区的概念和好处,并展示了创建和加载数据到分区表的步骤。此外,还讲解了分桶的概念,如何创建分桶表,以及分桶抽样查询的用法。最后,演示了使用Hive分析函数进行用户浏览日志行为分析的过程。
摘要由CSDN通过智能技术生成

理解什么是映射

1、首先呢,在指定的目录下创建一个hive文件夹作为我们存储数据文件的一个地方。

mkdir  hivedata

2、编辑一个文本文件内容:
vim 1.txt
1,张三,21
2,李四,20
3,蔡英文,54

3、将文件上传到hdfs上
现在hdfs上也创建一个hivedata来存放数据文件(–在hdfs的根目录下创建hivedata文件夹)

hdfs dfs -mkdir /hivedata

4、将我们的数据文件上传到hdfs的hivedata目录下
hdfs dfs -put 1.txt /hivedata (在你的本地上的hivedata目录下执行)

5、打开hive命令行窗口:
先启动hdfs和yarn

hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
yarn-daemon.sh start resuorcemanager
yarn-daemon.sh start nodemanager

再去启动你的mysql数据库:

cd /usr/local/mysql
sudo ./support-files/mysql.server start 

最后启动你的hive

bin/hive

展示一下你的数据库:show databases;
创建一个数据库:create database itcast;
使用这个数据库:use itcast;
创建一张表:create table t_u1(id int, name string, age int) row format delimited fields terminated by ‘\t’;

6、去hdfs上看一下我们的hive的默认的路径。
/user/hduser/warehouse/

7、需要将我们的数据文件放到你建立的表的目录下:hdfs dfs -cp /hivedata/1.txt /user/hive/warehouse/itcast.db/t_u1

8、再去查询一下你的表里的内容:select * from t_u1;

9、我们需要查询它的数据有几条:
select count(*) from t_u1;

分隔符

hive建表语法中的分隔符设定
ROW FORMAT DELIMITED 分隔符设置开始语句
FIELDS TERMINATED BY:设置字段与字段之间的分隔符
COLLECTION ITEMS TERMINATED BY:设置一个复杂类型(array,struct)字段的各个item之间的分隔符
MAP KEYS TERMINATED BY:设置一个复杂类型(Map)字段的key value之间的分隔符
LINES TERMINATED BY:设置行与行之间的分隔符

例如:
数据1如下:
zhangsan beijing,shanghai,xiamen,hangzhou
wangwu tonglu,chengdu,guiyang,bijie

create table t_u2(name string,work_locations array< string>)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值