上传数据到HDFS
执行如下命令,创建HDFS目录。
说明:在LX终端中,粘贴快捷键为SHIFT+CTRL+V。
hdfs dfs -mkdir -p /data/student
- 上传文件到hadoop文件系统。
a.执行如下命令,创建u.txt文件。
创建u.txt文件
vim u.txt
b.按 "i" 键进入编辑模式,通过粘贴快捷键(SHIFT+CTRL+V)将下方内容复制到文件中,按"Esc"返回命令模式,输入":wq"保存
说明:第一列表示userid,第二列表示movieid,第三列表示rating,第四列表示unixtime。
- 使用hive创建表
本步骤将指导您如何使用hive创建数据表,并使用hadoop文件系统中的数据加载到hive数据表中。
- 执行如下命令,登录hive数据库。
hive
- 创建user表。
CREATE TABLE emrusers (
userid INT,
movieid INT,
rating INT,
unixtime STRING )
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
;
- 执行如下命令,从hadoop文件系统加载数据到hive数据表。
LOAD DATA INPATH '/data/student/u.txt' INTO TABLE emrusers;
- 对表进行操作
本步骤将指导您如何使用hive对数据表进行查询等操作。
- 查看5行表数据。
select * from emrusers limit 5;
- 查询数据表中有多少条数据。
select count(*) from emrusers;
返回结果如下,您可以看到您数据表中一共有多少数据,
- 查询数据表中评级最高的三个电影。
select movieid,sum(rating) as rat from emrusers group by movieid order by rat desc limit 3;
返回结果如下,您可以看到您数据表中评级最高的三个电影。