Как получить текущую отметку времени в PIG

1

У меня есть запрос относительно скрипта PIG, который я пишу.

Как я могу получить текущую временную метку Unix в скрипте PIG.? Нужен ли мне какой-либо UDF для этой цели.. или может ли PIG предоставить мне отметку времени currnet?

Пожалуйста, посоветуйте мне. благодаря

Теги:
hadoop
scripting
apache-pig

2 ответа

4

Я указываю два решения

первый:

используйте 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

Вам нужно использовать UDF. Хорошая новость заключается в том, что она поставляется с Pig. Он называется CurrentTime. Взгляните на страницу документов здесь для всех встроенных функций.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню