在hive中,外表是个很重要的组成部分,通过外表可以很方便进行数据的共享。
因为普通的表会将数据文件拷贝自己的目录下,这样想要分享数据只能保存多份数据。
但是外表很好的解决了这个问题。
CREATE EXTERNAL TABLE sunwg_test09(id INT, name string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ‘/t’
LOCATION ‘/sunwg/test08′;
上面的语句创建了一张名字为sunwg_test09的外表,该表有id和name两个字段,
字段的分割符为tab,文件的数据文件夹为/sunwg/test08
hive> select * from sunwg_test09;
OK
100 tom
101 mary
102 tim
103 kate
104 jone
Time taken: 1.237 seconds
可以查询到sunwg_test09中的数据。
在当前用户hive的根目录下找不到sunwg_test09文件夹。
此时hive将该表的数据文件信息保存到metadata数据库中。
mysql> select * from TBLS where TBL_NAME=’sunwg_test09′;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect…
Connection id: 16
Current database: h