HIVE建表
2020-09-24 本文已影响0人
emm_simon
[参考link]
[参考link]
[参考link]
[参考link]
1. 表类型MANAGED_TABLE
、EXTERNAL_TABLE
、INDEX_TABLE
、VIRTUAL_VIEW
MANAGED_TABLE
-- MANAGED_TABLE 建表语句
-- table
create table test_mamaged_table
(
context string
)
;
这种表也被称作Internal Table.这是Hive中的默认的类型.如果你在创建表的时候没有指明Managed或者External,那么默认就会给你创建Managed Table。
Managed Table的数据,会存放在HDFS中的特定的位置中,通常是/user/hduser/hive/warehouse.当然,也不一定,看你的Hive的配置文件中是如何配置的。
EXTERNAL_TABLE
-- EXTERNAL_TABLE 建表语句
-- external table
create external table test_external_table
(
Name String,
Sal Int
)
row format delimited
fields terminated by ','
;
External Table特别适用于想要在Hive之外使用表的数据的情况.当你删除External Table时,只是删除了表的元数据,它的数据并没有被删除。
INDEX_TABLE
VIRTUAL_VIEW
2. 分隔符设置
ROW FORMAT DELIMITED
分隔符设置开始语句
FIELDS TERMINATED BY
设置字段与字段之间的分隔符
COLLECTION ITEMS TERMINATED BY
设置一个复杂类型(array,struct)字段的各个item之间的分隔符
MAP KEYS TERMINATED BY
设置一个复杂类型(Map)字段的key value之间的分隔符
LINES TERMINATED BY
设置行与行之间的分隔符
3. 压缩存储格式
TEXTFILE
SEQUENCEFILE
RCFILE
ORCFILE