我正在尝试运行 HBase importTSV hadoop 作业以将数据从 TSV 文件加载到 HBase 中。我正在使用以下代码。
Configuration config = new Configuration();
Iterator iter = config.iterator();
while(iter.hasNext())
{
Object obj = iter.next();
System.out.println(obj);
}
Job job = new Job(config);
job.setJarByClass(ImportTsv.class);
job.setJobName("ImportTsv");
job.getConfiguration().set("user", "hadoop");
job.waitForCompletion(true);
我收到此错误
错误 security.UserGroupInformation:PriviledgedActionException as:E317376 原因:org.apache.hadoop.security.AccessControlException:org.apache.hadoop.security.AccessControlException:权限被拒绝:user=E317376,access=WRITE,inode="staging":hadoop:超群:rwxr-xr-x
我不知道如何设置用户名 E317376。这是我试图在远程集群中运行此作业的 Windows 机器用户。我在 linux 机器上的 haddop 用户帐户是“hadoop”
当我在 linux 机器上运行它时,它是 hadoop 用户帐户下的 Hadoop 集群的一部分,一切正常。但我想以编程方式在 java web 应用程序中运行这项工作。我做错什么了吗。请帮忙...