继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

hive 数据库操作

九州编程
关注TA
已关注
手记 475
粉丝 42
获赞 202

前提

用户已经成功配置了hadoop 的 hdfs 和 yarn 环境。

成功安装了hive。

通过hive shell 访问hive

直接通过hive 命令进入shell

webp

显示如上内容就表示已经成功进入hive shell 了。

hive 创建数据库

$hive>create database mydb2 ;

$hive>use mydb2 ;

查看刚创建的数据库

webp

可以看到已经有了 mydb2 这个库了。

hive 创建表

$hive>CREATE external TABLE IF NOT EXISTS t2(id int,name string,age int) COMMENT 'xx' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE ;

webp

删除表

drop table t2;

webp

hive 插入数据

为了测试把刚才删除的表重新create

insert into t2(id,name,age) values(6,'moon',44);

webp

可以看到插入数据的过程是MapReduce 过程。

hive 查询数据

webp

hive 删除数据

webp

提示不能执行删除操作
这是因为Hive是不支持更新操作的,你可以这样子做,从Hive表中查询出你想保留的数据,并且输入到原来的表中。

执行如下操作

insert overwrite table t2 select * from t2 where id != 6;

webp

再查看数据

webp

ok 已经删除了

hive load 数据

在linux 本地目录 编辑文件 customers.txt

webp

载入数据到hive

load data local inpath '/home/river/workspace/customers.txt' into table t2 ;

webp

通过 命令  hdfs dfs -lsr /user/hive    查看文件是否已经上传成功

可以看到 customers.txt 文件已经在t2 表中

webp

通过hive 查看 数据

webp

可以看到数据已经在表里。

因为数据是以文件的形式存在在hive中的,所以我们通过hdfs 看到是文件形式。

测试 是否可以通过put命令将文件直接put到hdfs内后,是否可以通过hive查询出来

通过命令将文件直接put到hdfs 的hive 目录下

webp

再查看

webp

ok 可以看到数据查询出来了。看来真的就是文件。而hive的load命令就是文件copy

              



作者:良人与我
链接:https://www.jianshu.com/p/4fdb10386109


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP