我试图在我的Windows机器上使用eclipse在java中运行一个简单的pig代码。我正在启动这个代码cloudera VM。
这是我正在尝试执行的代码
import java.io.IOException;
import java.util.Properties;
import org.apache.hadoop.conf.Configuration;
import org.apache.pig.ExecType;
import org.apache.pig.PigServer;
public class PigConnect{
public static void main(String[] args) {
try {
PigServer pigServer = new PigServer("mapreduce");
runIdQuery(pigServer, "hdfs://quickstart.cloudera:8020/user/cloudera/myFile.txt");
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}
public static void runIdQuery(PigServer pigServer, String inputFile) throws IOException {
pigServer.registerQuery("A = load 'hdfs://quickstart.cloudera:8020/user/cloudera/myFile.txt' using PigStorage(':');");
pigServer.registerQuery("B = foreach A generate $0 as id;");
pigServer.store("B", "idout");
System.out.println("Success");
}
}
我在eclipse中的资源文件夹中添加了hdfs-site.xml,yarn-site.xml,core-site.xml,mapred-site.xml。在项目中添加了所有必需的jar。
在运行代码时,我遇到错误。
Error during parsing. Unable to check name hdfs://quickstart.cloudera:8020/user/shashi
shashi是我默认使用的Windows用户名。如何使用hdfs用户更改它?