2012-09-04 45 views
3

我写了一个嵌入式猪程序,它在我的机器上执行并在服务器(hadoop机器)上执行查询并存储结果。但在这我给pig.property文件到我的课程路径。没有属性文件的嵌入式猪程序

我们可以在不给pig.property文件的情况下编写Pig-Embedded程序吗?

+0

另一种是硬编码的值,但我不知道你想这样做的 – Satya

+0

但我们如何设置猪的属性值?有没有任何课程? –

+0

检查此页:http://pig.apache.org/docs/r0.9.1/start.html#properties – Satya

回答

2

您可以使用org.apache.pig.PigServer从Java程序运行猪脚本。

PigServer pigServer = new PigServer(ExecType.MAPREDUCE); 
pigServer.registerScript("scripts/test.pig"); 

需要类路径中的'pig.properties'。

fs.default.name = HDFS://: mapred.job.tracker =: 或者通过java.util.Properties到PigServer构造的一个实例。

Properties props = new Properties(); 
props.setProperty("fs.default.name", "hdfs://<namenode-hostname>:<port>"); 
props.setProperty("mapred.job.tracker", "<jobtracker-hostname>:<port>"); 
PigServer pigServer = new PigServer(ExecType.MAPREDUCE, props); 

还要检查this

+0

我知道如何编写查询。我想知道如何在不使用属性文件的情况下设置属性............ 我以这种方式尝试过,但我无法找到setProperty()方法。 //我是否需要为此导入任何包? –

+0

afaik你可以做java.lang.System.setProperty() – Satya

+0

嘿@satya我认为这个“java.lang.System.setProperty()”属于那个系统不是我们的猪.//我不确定 –

相关问题