Java PigServer脚本执行
我有一个生成pig脚本的java代码。我想知道是否有直接在java代码中执行该脚本的选项。我发现有一个选项可以使用类在java代码中嵌入pig脚本执行 问题是我使用AvroStorage存储结果,而该类包含显然使用文件存储的方法Java PigServer脚本执行,java,hadoop,apache-pig,cloudera,Java,Hadoop,Apache Pig,Cloudera,我有一个生成pig脚本的java代码。我想知道是否有直接在java代码中执行该脚本的选项。我发现有一个选项可以使用类在java代码中嵌入pig脚本执行 问题是我使用AvroStorage存储结果,而该类包含显然使用文件存储的方法store() 有没有办法使用PigServer类在JAVA内部使用AvroStorage执行我的pig脚本 它的通用代码来自他们的文档,他们使用pigServer.store(“D”,“myoutput”);但是我需要调用AvroStorage来代替文件 public
store()
有没有办法使用PigServer类在JAVA内部使用AvroStorage执行我的pig脚本
它的通用代码来自他们的文档,他们使用pigServer.store(“D”,“myoutput”);但是我需要调用AvroStorage来代替文件
public class WordCount {
public static void main(String[] args) {
PigServer pigServer = new PigServer();
try {
pigServer.registerJar("/mylocation/tokenize.jar");
runMyQuery(pigServer, "myinput.txt";
}
catch (IOException e) {
e.printStackTrace();
}
}
public static void runMyQuery(PigServer pigServer, String inputFile) throws IOException {
pigServer.registerQuery("A = load '" + inputFile + "' using TextLoader();");
pigServer.registerQuery("B = foreach A generate flatten(tokenize($0));");
pigServer.registerQuery("C = group B by $1;");
pigServer.registerQuery("D = foreach C generate flatten(group), COUNT(B.$0);");
pigServer.store("D", "myoutput");
}
}
你的密码在哪里?你的意思是什么?作为PigServer类API的一部分,我找不到任何适用于该用例的可用方法。我有一个生成pig脚本的java代码-请将该代码添加到您的问题中,以便我们知道您在说什么。OK,请现在查看。您不能像使用AvroStorage()“”那样使用
注册表查询将数据存储到“myoutput”中吗?