I have found that for output larger than a few GB, redirecting stdout results 
in an incomplete file.  For very large output, I do CREATE TABLE MYTABLE AS 
SELECT ... and then copy the resulting HDFS files directly out of 
/user/hive/warehouse.
 

________________________________
 From: Bertrand Dechoux <decho...@gmail.com>
To: user@hive.apache.org 
Sent: Thursday, July 4, 2013 7:09 AM
Subject: Re: How Can I store the Hive query result in one file ?
  


The question is what is the volume of your output. There is one file per output 
task (map or reduce) because that way each can write it independently and in 
parallel. That's how mapreduce work. And except by forcing the number of tasks 
to 1, there is no certain way to have one output file.

But indeed if the volume is low enough, you could also capture the standard 
output into a local file like Nitin described.

Bertrand



On Thu, Jul 4, 2013 at 12:38 PM, Nitin Pawar <nitinpawar...@gmail.com> wrote:

will hive -e "query" > filename  or hive -f query.q > filename will do ? 
>
>
>you specially want it to write into a named file on hdfs only? 
>
>
>
>On Thu, Jul 4, 2013 at 3:12 PM, Matouk IFTISSEN <matouk.iftis...@ysance.com> 
>wrote:
>
>Hello Hive users,
>>Is there a manner to store the Hive  query result (SELECT *.....) in a 
>>specfique  and alone file (given the file name) like (INSERT OVERWRITE LOCAL 
>>DIRECTORY '/directory_path_name/')?
>>Thanks for your answers
>>
>>
>>
>
>
>
>-- 
>Nitin Pawar
> 


-- 
Bertrand Dechoux 

Reply via email to