gpt4 book ai didi

hadoop - 在 Hadoop 作业中找不到类

转载 作者:可可西里 更新时间:2023-11-01 16:31:18 26 4
gpt4 key购买 nike

我有一个 map reduce 作业,它从 DocumentDB 获取输入。我在源代码的 lib 目录下添加了 jar 文件,并在运行作业时使用了 -libjars。但我仍然收到 jar 文件中某个类的类未找到错误。这是我的驱动程序的一部分

public class MapReduceDriver extends Configured implements Tool  {

public static void main(String[] args) throws Exception {

int res = ToolRunner.run(new Configuration(), new MapReduceDriver(), args);
System.exit(res);

}



@Override
public int run(String[] args) throws Exception {

Configuration conf = this.getConf();
....

当使用 -libjars 时,我曾经将所需的 jar 文件放在本地驱动程序上,一次放在 hdfs 上,但都没有用。我如何确保 -libjars 有效?

附注我正在使用 2 节点 HDInsight 集群(在 Microsoft Azure 中运行)。

这是我得到的错误信息

 Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.microsoft.azure.documentdb.hadoop.DocumentDBInputFormat not found
at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1961)
at org.apache.hadoop.mapreduce.task.JobContextImpl.getInputFormatClass(JobContextImpl.java:174)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:726)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:340)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1594)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.ClassNotFoundException: Class com.microsoft.azure.documentdb.hadoop.DocumentDBInputFormat not found
at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:1867)
at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1959)
... 8 more

最佳答案

我假设您指的是在此处找到的 DocumentDB Hadoop 连接器 jar: https://github.com/Azure/azure-documentdb-hadoop

jar 不包含依赖项。您可以让 maven 为您检索依赖项,或者您自己手动下载并包含在构建路径中。

这里是依赖项:

关于hadoop - 在 Hadoop 作业中找不到类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30447465/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com