如何在PIG中获取当前时间戳

时间:2015-03-23 09:29:02

标签: java hadoop scripting apache-pig

我有一个关于我正在编写的PIG脚本的查询。

如何在PIG脚本中获取当前的Unix时间戳。 我是否需要任何UDF ...或者PIG能为我提供currnet时间戳吗?

请建议我。 感谢

2 个答案:

答案 0 :(得分:5)

我指的是两个解决方案

第一个:

使用CurrentTime(),将其转换为ToUnixTime()以获取时间戳。

Ex:
 X = load "xx"  .........  ;

 X1 = FOREACH X GENERATE ToUnixTime(CurrentTime())
第二个:

从命令行传递作为参数。

   pig  -f  myscript.pig --param timestamp=$(date +%s)

   ----in myscript.pig ----

     %declare time '$timestamp ';

     X1 = FOREACH X GENERATE '$time' ;

答案 1 :(得分:1)

您确实需要使用UDF。好消息是它随猪一起出货。它被称为CurrentTime。查看所有内置函数的docs page here