Hive does not assume that it owns the data for an external table. Thus when an external table is dropped, the data is not deleted. People often use this as a way to load data into a directory in HDFS and then “cast” a table structure over it by creating an external table with that directory as its location.
Alan. > On Dec 1, 2016, at 06:15, Huang Meilong <ims...@outlook.com> wrote: > > Hi all, > > I found an enum TableType in package org.apache.hadoop.hive.metastore. What's > the difference between MANAGED_TABLE and EXTERNAL_TABLE? > > Will the table be an EXTERNAL TABLE with setting table type EXTERNAL_TABLE > when creating table? > > I found the code to determine whether a table is an external table in > MetaStoreUtils.java > https://github.com/apache/hive/blob/master/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java#L1425 > > I'm confused what is EXTERNAL_TABLE in TableType for?