码迷,mamicode.com
首页 > 其他好文 > 详细

Pig系统分析(7)-Pig实用工具类

时间:2014-05-07 06:03:35      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:pig   hadoop   分布式应用   

Explain

Explain是Pig提供的调试工具,使用explain可以输出Pig Lation的执行计划。值得一提的是,explain支持-dot选项,将执行计划以DOT格式输出, (DOT是一种图形描述语言,请参考http://zh.wikipedia.org/zh/DOT%E8%AF%AD%E8%A8%80)

代码实现详见org.apache.pig.impl.plan.DotPlanDumper,这部分实现为我们设计执行计划可视化提供了参考。 下图部分截取了使用Graphviz打开物理执行计划DOT文件之后生成的图。(Graphviz介绍请参考http://zh.wikipedia.org/wiki/Graphviz

bubuko.com,布布扣

Illustrate

Illustrate比Explain更进一步,它还会根据具体语句表达式条件自动生成适合执行计划的样本数据,并模拟执行,将每一步的结果按照表格输出,模拟一次完整的数据处理流程。代码实现详见org.apache.pig.pen.Illustrator。

PigContext

PigContext类包含Pig执行过程各个阶段需要的上下文基本信息,PigContext从前端传递到后端,一直到Hadoop Job阶段都可用。在Map&Reduce的初始化方法中,从Hadoop Configuration中获取PigContext。

pigContext= (PigContext)ObjectSerializer.deserialize(job.get("pig.pigContext"));
PigContext中比较重要信息有:

  1. execType:执行类型,local/mr。
  2. HExecutionEngine:后端执行引擎。
  3. Script files/各种jar包等。
  4. definedFunctions:funcName与funcSpec的映射。
  5. dataStorage:文件系统接口,dfs&lfs。

Pig系统分析(7)-Pig实用工具类,布布扣,bubuko.com

Pig系统分析(7)-Pig实用工具类

标签:pig   hadoop   分布式应用   

原文地址:http://blog.csdn.net/idontwantobe/article/details/25034323

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!