如何可视化烫伤工作的步骤



我的滤器作业被翻译成9个地图减少了作业(M/R Jobs(。我不容易理解每个M/R作业代表代码的哪一部分。有什么可以帮助我更好地了解我的工作吗?

//这已被复制从我们的内部Wiki粘贴。随时分享您的经验!

烫伤可以以.dot格式生成作业图。它是由此代码触发的。这是:

sbt
project mapreduce
run-main com.twitter.scalding.Tool com.company.YourJobClass 
  --tool.graph 
  --hdfs
  --arg1 value_1
  --arg2 value_2

您应该有2个以.dot结尾的文件。他们是文本文件。一个是您工作使用的所有级联功能的非常详细的图。以_steps.dot结尾的另一个文件是m/r作业的图。在您喜欢的编辑器中打开它们,并尝试找到节点及其连接。

可以使用GraphViz从.dot生成PDF或PNG文件。这是:

#if you don't have graphviz installed you can get it from brew on mac
brew install graphviz
#generate a pdf file
dot myjob_steps.dot -Tpdf myjob_steps.pdf
#generate a png file (could be huge!)
dot myjob_steps.dot -Tpng myjob_steps.png

奖励提示:仍然很难找出代码中每个M/R作业的位置。将描述添加到您的代码中,将它们添加到myjob_steps.dot文件中。尝试此功能并重新生成.dot文件。这是不需要生成.pdf文件的地方。您只需在您喜欢的编辑器中打开myjob_steps.dot,然后使用搜索来查找您对代码进行标记的说明。您可以在瓶盖回购中找到示例。

我一直在使用sahale。设置非常简单,但是有一个警告似乎仅适用于Scala 2.11.x和烫伤0.16.x(截至撰写本文时(。它可视化MapReduce的作业流,这些作业与作业相关的烫金线号。由于它是由数据库支持的Web应用程序,因此它可以存储以前的运行,您可以在开发时跟踪工作绩效。当我从Intellij运行跟踪作业时,缺少一些指标,但是当我在真正的群集上运行东西时,它们都在那里。

本文很好地参观了Sahale的工作。

相关内容

最新更新