如何在 PIG 中获取 EPOCH 时间?
How to get EPOCH time in PIG?
我对猪完全陌生。
开始自学并尝试了解 PIG。
任何人都可以建议我通过阅读 words.txt 包含单词的文件来使用 pig 获取 当前系统纪元时间。
我需要输出为
word1_1234567890 word2_1234567890 word3_1234567890
和我们如何在 PIG 脚本中调用 shell 脚本
因为我已经写好了Shell脚本
任何帮助。
提前致谢。
Mohan.v
使用 CONCAT 将你的单词与 epochtime.You 结合使用 ToUnixTime()
A = LOAD 'words.txt' AS (word:chararray);
B = FOREACH A GENERATE CONCAT(CONCAT(A.word,'_'),(chararray)ToUnixTime(CurrentTime());
DUMP B;
假设您的 shell 脚本是 names test.sh
%declare my_shell_script 'test.sh'
A = LOAD 'data.txt' AS (f1:int,f2:chararray);
B = FOREACH A GENERATE '$my_shell_script';
如果您的 shell 脚本有参数 param1
%declare my_shell_script 'test.sh $param1'
A = LOAD 'data.txt' AS (f1:int,f2:chararray);
B = FOREACH A GENERATE '$my_shell_script';
我对猪完全陌生。 开始自学并尝试了解 PIG。 任何人都可以建议我通过阅读 words.txt 包含单词的文件来使用 pig 获取 当前系统纪元时间。
我需要输出为
word1_1234567890 word2_1234567890 word3_1234567890
和我们如何在 PIG 脚本中调用 shell 脚本
因为我已经写好了Shell脚本
任何帮助。
提前致谢。
Mohan.v
使用 CONCAT 将你的单词与 epochtime.You 结合使用 ToUnixTime()
A = LOAD 'words.txt' AS (word:chararray);
B = FOREACH A GENERATE CONCAT(CONCAT(A.word,'_'),(chararray)ToUnixTime(CurrentTime());
DUMP B;
假设您的 shell 脚本是 names test.sh
%declare my_shell_script 'test.sh'
A = LOAD 'data.txt' AS (f1:int,f2:chararray);
B = FOREACH A GENERATE '$my_shell_script';
如果您的 shell 脚本有参数 param1
%declare my_shell_script 'test.sh $param1'
A = LOAD 'data.txt' AS (f1:int,f2:chararray);
B = FOREACH A GENERATE '$my_shell_script';