赞
踩
1.首先在Linux本地新建/data/hivetest目录。
sudo mkdir -p /data/hivetest
2.切换到/data/hivetest目录下,使用wget命令,下载http://10.2.208.188:60000/allfiles/hive2中的cat_group文件
http://10.2.208.188:60000/allfiles/hive4中的goods_visit文件
cd /data/hivetest
sudo wget http://10.2.208.188:60000/allfiles/hive2/cat_group
sudo wget http://10.2.208.188:60000/allfiles/hive4/goods_visit
3.输入jps检查Hadoop相关进程,是否已经启动。若未启动,切换到/usr/local/hadoop/sbin目录下,启动Hadoop。
jps
cd /usr/local/hadoop/sbin
./start-all.sh
4.开启Hive,首先,需要保证Mysql启动。执行以下命令,查看Mysql的运行状态。
sudo service mysql status
输出显示Mysql未启动。执行以下启动命令。
sudo service mysql start
然后切换到/usr/local/hive/bin目录下,开启Hive。
cd /usr/local/hive/bin
./hive
1.在Hive中创建一个数据仓库,名为DB。
create database DB;
2.以上简单创建了一个DB库,但是这条sql可以更进一步的优化,我们可以加上if not exists。
create database if not exists DB;
解析:在创建库时,应避免新建的库名与已有库名重复,如果库名重复将会报出以下错误(我在已有DB库的前提下,再次创建了DB库)。
错误提示数据仓库DB已经存在, 那么加入的if not exists就起了作用,如下(在已有DB库的前提下,再次创建DB库,提示成功不会报错)
加入if not exists的意思是如果没有DB库就创建,如果已有就不再创建。
3.查看数据仓库DB的信息及路径。
describe database DB;
4.删除名为DB的数据仓库。
drop database if exists DB;
Hive的数据表分为两种:内部表和外部表。
Hive创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径,不对数据的位置做任何改变。在删除表的时候,内部表的元数据和数据会被一起删除,而外部表只删除元数据,不删除数据。这样外部表相对来说更加安全些,数据组织也更加灵活,方便共享源数据,生产中常使用外部表。
下面详细介绍对表操作的命令及使用方法:
即将创建的表,表名不能和已有表名重复,否则会报错,现在我们show tables一下,
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。