TBPROPERTIES 是 Impala(Hive) 中关键字,用于在创建表时来自定义写参数。
下面我们创建一个内部表:
CREATE TABLE IF NOT EXISTS test.studets(name STRING,age INT,gender STRING,birth STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','STORED AS textfile
加上 TBPROPERTIES 自定义参数后,可以将其变成外部表:
CREATE TABLE IF NOT EXISTS test.studets(name STRING,age INT,gender STRING,birth STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','STORED AS textfileTBLPROPERTIES("EXTERNAL"="TRUE")
常用的其他参数还有:
- auto.purge:当设置为 
ture时,删除或者覆盖的数据会不经过回收站,直接被删除。配置了此属性会影响到这些操作:Drop Table,Drop Partitions,Truncate Table,Insert Overwrite - immutable:当表的这个属性为 
true时,若表中无数据时可以insert数据,但是当表已经有数据时,insert 操作会失败。不可变表用来防止意外更新,避免因脚本错误导致的多次更新,而没有报错 - orc.compress: 用来指定 orc 存储的压缩方式
 
