从pig中的hive表加载最新分区

时间:2015-05-06 18:51:51

标签: hive

我想知道如何从pig脚本中的hive表加载最新的分区。显然,我可以加载整个数据,然后使用FILTER命令过滤相应的分区。

但是,如果我们不知道hive表的最新日期分区是什么,我们如何获取最新日期本身并加载相应日期的分区?

1 个答案:

答案 0 :(得分:0)

据我所知,我们无法直接这样做。我正在指出shell脚本。希望你的分区列是按照日期格式或按照增量顺序排列的。

hive -e 'select max(datehour) from tweets1' > datehour.txt;

   # i am storing of above query output to one temp file datehour.txt

datehour=$(awk '{print $0}' /home/winit/Desktop/needtocopy1/hivequeries/datehour.txt)

   # reading that file with above command.

 hive -e 'describe formatted tweets1  partition (datehour='$datehour')' > partitionloc.txt;

   # with describe command i am storing output to onemore temp file.

 partionLocation=$(awk '/Location:/ { print $2 }' partitionloc.txt)

  # i am reading the temp file with pattern 'Location',its partition location

  # pass the location to pig script as parameter to load data from..

 pig  -f  pigfile.pig --param location=$partionLocation

让我知道如果不起作用