外部表与管理表

外部表:

create external table  if not exists stocks{
exchange STRING,
}
ROW FORMAT DELIMITED FIELDS TERMINATED BY ","
LOCATION '/local/stocks'

关键字external 告诉hive 这个表示外部的,而后面的LOCATION .. 子句则用于告诉hive数据位于哪个路径下

因为表是外部的,所以hive并非认为其完全拥有这份数据。因此,删除该表并不会删除掉这份数据,不过描述该表的元数据信息会被删掉。


管理表:

hive默认情况下会将这些表的数据存储在有配置项  hive.metastore.warehouse.dir  所定义的目录子目录下




管理表与外部表的区别:HQL的语法结构并不适用于外部表

你可能感兴趣的:(hive)