apache pig-如何显示脚本的执行时间?

axzmvihb  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(376)

有没有可能显示一个pig脚本的整个执行时间?最好是生成一个单独的文件,其中包含执行脚本所花费的总时间(例如hh:mm:s)。
请给我一个Pig代码的例子来实现这一点。

mkh04yzy

mkh04yzy1#

为自定义项计时
提高绩效和效率的第一步是衡量时间的去向。pig提供了一种轻量级方法,用于大致测量在不同的用户定义函数(udf)和装入器中花费的时间。只需将pig.udf.profile属性设置为true。这将导致跟踪脚本生成的所有map reduce作业的新计数器:approx\u microsecs度量在udf中花费的大致时间量,approx\u invocations度量调用udf的大致次数。请注意,这可能会产生大量计数器(每个udf两个)。过多的计数器会导致jobtracker性能不佳,因此请小心使用此功能,最好在测试集群上使用。
您可以在资源管理器web ui中查看所有作业计数器。
从-https://pig.apache.org/docs/r0.11.1/perf.html

r1zk6ea1

r1zk6ea12#

a=使用hadoopjobhistoryloader()加载'/mapred/history/done'(j:map[],m:map[],r:map[]);b=foreach a生成j#'pig#script#u id'作为id,j#'user'作为user,j#'jobname'作为script#u name,(long)j#'submit#time'作为start,(long)j#'finish#time'作为end;c=groupb by(id,user,script\u name)d=foreach c generate group.user,group.script\u name,(max(b.end)-min(b.start)/1000;倾倒区d;

相关问题