Vishal
Vishal

Reputation: 1492

Pig overwrite data in hive using LOAD

I am new to Pig and hive ,I need to load the data from csv file stored on hdfs to the hive table using pig load-store. for which I am using

load_resource_csv = LOAD '/user/hadoop/emp.csv' USING PigStorage(',')
 AS
 (dates:chararray,
  shipnode_key:chararray,
  delivery_method:chararray,

  );

STORE load_resource_csv
INTO 'employee'
USING org.apache.hive.hcatalog.pig.HCatStorer();

I need to overwrite the data in the hive table every time I run the Pig script . ow can I do that ?

Upvotes: 0

Views: 768

Answers (1)

Ronak Patel
Ronak Patel

Reputation: 3849

use fs shell command: fs -rm -f -r /path/to/dir:

load_resource_csv = LOAD '/user/cloudera/newfile' USING PigStorage(',')
 AS
 (name:chararray,
  skill:chararray
  );

fs -rm -r -f /user/hive/warehouse/stack/

STORE load_resource_csv INTO '/user/hive/warehouse/stack' USING PigStorage(',');

-------------- BEFORE ---------------------------
$ hadoop fs -ls /user/hive/warehouse/stack/
-rwxrwxrwx   1 cloudera supergroup         22 2016-08-05 18:31 /user/hive/warehouse/stack/000000_0

hive> select * from stack;
OK
bigDataLearner  hadoop

$ hadoop fs -cat /user/cloudera/newfile
bigDataLearner,spark

-------------- AFTER -------------------
$ hadoop fs -ls /user/hive/warehouse/stack
Found 2 items
-rw-r--r--   1 cloudera supergroup          0 2016-08-05 18:56 /user/hive/warehouse/stack/_SUCCESS
-rw-r--r--   1 cloudera supergroup         21 2016-08-05 18:56 /user/hive/warehouse/stack/part-m-00000

$ hadoop fs -cat /user/hive/warehouse/stack/*
bigDataLearner,spark

hive> select * from stack;
OK
bigDataLearner  spark
Time taken: 0.183 seconds, Fetched: 1 row(s)

Upvotes: 1

Related Questions