未找到org.apache.hadoop.mapred.LocalClientProtocolProvider

 上官邱老 发布于 2023-01-11 10:50

我编写了一个用Java执行嵌入式猪句的程序.我执行了java语句registryQuery.但是当我尝试存储结果时,我发现了找不到org.apache.hadoop.mapred.localClientProtocolProvider的错误.我不明白这个错误.

附上句子:

这是java代码

 pigServer.registerQuery("source = load '"+ inputFile + "' USING    org.apache.pig.backend.hadoop.hbase.HBaseStorage( " +
"'datos:bikes', '-loadKey true')"+
"as (id1:int, bikes:int) ;");

Path output = new Path("consulta1");

 pigServer.store("source","consulta1");

这是java异常:

14/06/07 04:01:27 INFO pigstats.ScriptState: Pig features used in the script: UNKNOWN
14/06/07 04:01:27 WARN conf.Configuration: mapred.textoutputformat.separator is deprecated. Instead, use mapreduce.output.textoutputformat.separator
14/06/07 04:01:27 INFO mapReduceLayer.MRCompiler: File concatenation threshold: 100 optimistic? false
14/06/07 04:01:27 INFO mapReduceLayer.MultiQueryOptimizer: MR plan size before optimization: 1
14/06/07 04:01:27 INFO mapReduceLayer.MultiQueryOptimizer: MR plan size after optimization: 1
Exception in thread "main" java.util.ServiceConfigurationError: 
    org.apache.hadoop.mapreduce.protocol.ClientProtocolProvider: Provider  
    org.apache.hadoop.mapred.LocalClientProtocolProvider not found
at java.util.ServiceLoader.fail(ServiceLoader.java:214)
at java.util.ServiceLoader.access$400(ServiceLoader.java:164)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:350)
at java.util.ServiceLoader$1.next(ServiceLoader.java:421)
at org.apache.hadoop.mapreduce.Cluster.initialize(Cluster.java:90)
at org.apache.hadoop.mapreduce.Cluster.(Cluster.java:83)
at org.apache.hadoop.mapreduce.Cluster.(Cluster.java:76)
at org.apache.hadoop.mapred.JobClient.init(JobClient.java:478)
at org.apache.hadoop.mapred.JobClient.(JobClient.java:457)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher.launchPig(MapReduceLauncher.java:152)
at org.apache.pig.PigServer.launchPlan(PigServer.java:1266)
at org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1251)
at org.apache.pig.PigServer.storeEx(PigServer.java:933)
at org.apache.pig.PigServer.store(PigServer.java:900)
at org.apache.pig.PigServer.store(PigServer.java:868)
at bicing.pig.PigEstadisticas.runMyQuery(PigEstadisticas.java:97)
at bicing.pig.PigEstadisticas.main(PigEstadisticas.java:45)

什么是org.apache.hadoop.mapred.LocalClientProtocolProvider?

有人能帮帮我吗?

1 个回答
  • 这是一个老问题,但由于这可以帮助别人,我正在回答它.

    造成这个问题的原因就是上课

    org.apache.hadoop.mapred.LocalClientProtocolProvider

    在您的课程路径中找不到.我在我的设置中通过添加以下maven依赖项来解决此错误.

    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-common</artifactId>
        <version>2.4.1</version>
    </dependency>
    

    就本课程的功能而言,我目前没有更多信息,因为我自己正在学习hadoop和Pig.

    2023-01-11 10:52 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有