为了账号安全,请及时绑定邮箱和手机立即绑定

hive 数据库操作

标签:
Hadoop

前提

用户已经成功配置了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


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
数据库工程师
手记
粉丝
42
获赞与收藏
202

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消