Hi Wei Definitely you can do it. And infact the purpose of external tables is to manage the data dir on their own instead of making hive manage the same. It is not just meant for reading some already existing data on hdfs but also processing the same with hive QL. In the LOCATION try out specifying a hdfs dir rather than a local fs dir Try out the same DDL with the following modification ...LOCATION '/dir/in/hdfs'
And for your question. Definitely you can insert data into External Tables Regards Bejoy.K.S ________________________________ From: hadoop hive <hadooph...@gmail.com> To: user@hive.apache.org Sent: Wednesday, March 14, 2012 4:04 PM Subject: Re: We cannot insert data to external table right? But you can put the data at same place and read through hive (actually no need to insert data through table) On Wed, Mar 14, 2012 at 12:04 PM, Lu, Wei <w...@microstrategy.com> wrote: Hi , > >Can we insert data to external hive tables? > >1) Create an external table >create external table binary_tbl_local(byt TINYINT, bl boolean, it int, lng >BIGINT, flt float, dbl double, shrt SMALLINT, str string) row format serde >'org.apache.hadoop.hive.contrib.serde2.TypedBtesSerDe' stored as sequencefile >location 'file:////home/wlu/hive_local'; > >/home/wlu/hive_local is empty, and I insert data to the external table: >2) Insert data to the table >insert overwrite table binary_tbl_local select * from another_tbl_hdfs; > >But there is still nothing under the local folder. And “select * from >binary_tbl_local” returns no results. > >So I guess we cannot insert data to external table right? > >Regards, >Wei