1.建表操作
1.1 展示表信息
show databases; --查看hive中所有的数据库
show tables; --查看hive中所有表
show create table 表名; --查看建表的信息
show functions; --查看hive数据库中所有的函数和方法名称
1.2 创建内部表
-
创建数据库产生一个文件夹(HDFS),创建一个表格产生一个子文件夹(user/hive/warehouse/数据库名.db),插入数据会在子文件夹生成文件
-
在表格的文件夹内上传符合格式的文件,相当于插入数据
hadoop fs -put linux的文件 hdfs表格文件夹
-
总结:
-
1.先有一个数据文件
-
2.建立一个与文件格式对应的表格
-
3.将文件导入到表格中.
-
1.创建普通表
create table 表名
(列1 数据类型,
列2 数据类型)
row format delimited fields terminated by '分隔符' --列与列之间的分隔符
collection items terminated by '分隔符' --数组与数据之间的分隔符
map keys terminated by '分隔符' --映射类型key与value 之间分隔符。
如果不指定分隔符:
列与列之间的默认分隔符是 ^A(ctrl+v ctrl+a)
数组元素之间的默认分隔符 ^B(ctrl+v ctrl+b)
映射类型KEY和VALUE之间的默认分隔符 ^C(ctrl+v ctrl+c)
2.仅仅复制表格结构
create table 表A like 来源表B;
1.3 创建外部表
- 1.自己建文件夹
- 2.丢内容进去
- 3.建外部表做关联
- 4.你甚至建完表还能丢数据进去
hadoop fs -mkdir 文件夹; --hdfs 创建文件夹,任意位置
hadoop fs -put 内容文件 hdfs位置; --把linux中的文件放入到hdfs的目录中
create external table 表名 --创建外部表,并和Hdfs目录进行关联
(列1 数据类型
列2 数据类型)
row format delimited fields terminated by ','
location 'hive文件夹位置';
select * from 表名; --查询数据