我有这个Java程序,它以MapReduce模式执行一个Pig脚本。这是代码:
import java.io.IOException;
import java.util.Properties;
import org.apache.pig.ExecType;
import org.apache.pig.PigServer;
import org.apache.pig.backend.executionengine.ExecException;
public class pigCV {
public static void main(String args[]){
PigServer pigServer;
try {
Properties props = new Properties();
props.setProperty("fs.default.name", "hdfs://hdfs://localhost:8022");
props.setProperty("mapred.job.tracker", "localhost:8021");
pigServer = new PigServer(ExecType.MAPREDUCE, props);
pigServer.registerScript("Desktop/text_v3.pig");
}
catch (ExecException e) { e.printStackTrace(); }
catch (IOException e) { e.printStackTrace(); }
}
}
问题在于输出确实很冗长。
因此,我想知道是否可以在静默模式下运行脚本。
谢谢你的帮助。
最佳答案
我不认为PigServer
支持在静默模式下运行。但是,您可以编写Java代码来拦截stdin
和/或stdout
,然后编写代码来决定将哪些内容打印到屏幕上以及将哪些内容忽略或写入文件中。在link中有一个如何执行此操作的示例。