我创建了没有任何位置的外部表。现在,即使我们删除了表,数据也将存储在何处。
CREATE EXTERNAL TABLE forest( animal string, food string)
6ju8rftf1#
创建不带out位置的外部表时,数据将存储在配置单元默认位置。通常 /apps/hive/warehouse/<database_name>.db/<table_name> .如果您在测试数据库中创建表,您的配置单元位置将是
/apps/hive/warehouse/<database_name>.db/<table_name>
/apps/hive/warehouse/test.db/forest
如果删除表,则可以在此位置找到数据。使用命令 show create table forest; 如果你没有把它丢在地上,它会告诉你具体位置。
show create table forest;
7lrncoxx2#
如果不指定外部表的位置,它将存储在默认的配置单元仓库位置下。参见下面的示例。
hive> USE ramesh; OK Time taken: 0.013 seconds hive> CREATE EXTERNAL TABLE test > (col1 BIGINT, col2 STRING) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY ',' > STORED AS TEXTFILE; OK Time taken: 0.056 seconds hive> SHOW CREATE TABLE test; OK CREATE EXTERNAL TABLE `test`( `col1` bigint, `col2` string) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' WITH SERDEPROPERTIES ( 'field.delim'=',', 'serialization.format'=',') STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' **LOCATION 'hdfs://quickstart.cloudera:8020/user/hive/warehouse/ramesh.db/test'** TBLPROPERTIES ( 'COLUMN_STATS_ACCURATE'='false', 'numFiles'='0', 'numRows'='-1', 'rawDataSize'='-1', 'totalSize'='0', 'transient_lastDdlTime'='1510257748') Time taken: 0.044 seconds, Fetched: 21 row(s)
2条答案
按热度按时间6ju8rftf1#
创建不带out位置的外部表时,数据将存储在配置单元默认位置。通常
/apps/hive/warehouse/<database_name>.db/<table_name>
.如果您在测试数据库中创建表,您的配置单元位置将是
如果删除表,则可以在此位置找到数据。使用命令
show create table forest;
如果你没有把它丢在地上,它会告诉你具体位置。7lrncoxx2#
如果不指定外部表的位置,它将存储在默认的配置单元仓库位置下。
参见下面的示例。