有没有办法在oozie中捕获spark作业的控制台输出?我想在spark作业之后的下一个操作节点中使用特定的打印值。
我在想也许我可以用 ${wf:actionData("action-id")["Variable"]}
但似乎oozie没有从spark动作节点捕获输出的能力,这与shell动作不同 echo "var=12345"
然后调用oozie中的wf:actiondata作为整个工作流中的oozie变量。
我想实现这一点,因为我想打印可能处理的记录数,并将其存储为oozie变量,并将其用于工作流中的下一个操作节点,而不需要执行任何需要在工作流之外存储数据的功能,如将其保存在表中或通过在spark scala程序中实现它们。
任何帮助都将不胜感激,因为我还是一个新手Spark程序员。非常感谢你。
1条答案
按热度按时间bkhjykvo1#
由于spark action不支持捕获输出,因此必须将数据写入hdfs的文件中。这篇文章解释了如何在spark中做到这一点。