在使用hive shell之前我们需要先安装hive,并启动hdfs

请参考:https://www.cnblogs.com/lay2017/p/9973298.html

hive shell

我们先进入安装目录

cd /usr/local/hadoop/hive/apache-hive-1.2.-bin

使用Hive命令启动hive shell

hive

查看一下数据库,发现有一个默认的default

我们需要创建一个新的test数据库

再看一下数据库,test数据库已经创建完成了

我们切换到test数据库

创建一张t_user表,你会看到创建表的语句显得似乎很麻烦,这么长一句

CREATE TABLE users(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' LINES TERMINATED BY '\n' STORED AS TEXTFILE;

我们分开来看,建表的简单语句,如

create t_user(id int, name String);

而每一列分隔符就是

ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '

每行的分隔符就是

LINES TERMINATED BY '\n'

最后存储的文件格式就是txt

STORED AS TEXTFILE;

为了更清楚建表语句为什么这么建,我们在/tmp目录下建立一个user.txt,内容如下(注意:每个单词之间是空格分隔,每行是\n分隔,这也是为什么我们在建立hive的表的时候需要配置它的格式,因为我们在读取txt数据的时候需要按照格式进行读取,否则你将查询到一堆的null)

1 lay
2 marry
3 gary

然后我们在hive shell中,把该txt数据给加载到hive中

load data local inpath '/tmp/user.txt' overwrite into table t_user; // 加载本地数据到t_user表中

然后我们查询一下t_user表中的数据,如下

数据就像关系型数据库一样展示,这就是hive的SQL简单查询功能

常用命令

create database test; // 创建数据库
drop database test; // 删除数据库
drop database test cascade; // 强制删除数据库
show databases; // 列出所有数据库
use test; // 使用数据库 create t_user(id int, name String); // 创建表
CREATE TABLE users(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' LINES TERMINATED BY '\n' STORED AS TEXTFILE; // 按照格式创建表,否则load data无法正常读取数据
describe t_user; // 查询表结构
drop table t_user; // 删除表
alter table t_user add columns(age int); // 更改表,新增列
load data local inpath '/tmp/user.txt' overwrite into table t_user; // 加载本地数据到t_user表中
load data inpath '/tmp/user.txt' overwrite into table t_user; // 从hdfs加载数据到t_user表中

参考文档:https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-InstallationandConfiguration

最新文章

  1. js数组转换问题
  2. LruCache缓存
  3. MAC 安装j2ee.sh的办法
  4. WPF学习之路(十三)URL
  5. HTTP 长连接和短连接
  6. 【BZOJ】3621: 我想那还真是令人高兴啊
  7. [每日一题] 11gOCP 1z0-053 :2013-10-11 Flashback Data Archive属性.........................43
  8. 2016 Multi-University Training Contest 1 GCD RMQ+二分(预处理)
  9. ubuntu下安装ssh
  10. 构造函数语义学之Copy Constructor构建操作(2)
  11. ZOJ 3728 Collision
  12. C#代码实现把网页文件保存为mht文件
  13. python学习之第一课时--初始python
  14. spring mvc 中自定义404页面在IE中无法显示favicon.ico问题的解决方法。
  15. 实训任务03: 使用Eclipse创建MapReduce工程
  16. Idea使用Maven创建Java Web项目
  17. wchar_t*转换string
  18. Linux驱动之一个简单的输入子系统程序编写
  19. jQuery EasyUI combobox多选及赋值
  20. windows下搭建docker

热门文章

  1. Windows7 64位下SDK Manager.exe无法运行问题解决方法
  2. canvas绘制简单的霓虹灯效果
  3. SpringAOP的应用实例与总结
  4. Java性能优化技巧及实战
  5. Spring 事务相关点整理
  6. Python【每日一问】16
  7. 51nod1965. 奇怪的式子(min_25筛)
  8. Bomb(要49)--数位dp
  9. ArduinoNano卡在上传,无法烧录
  10. header请求头信息详细介绍