如何向Tez添加其他库以支持不同的HDFS后端?

时间:2017-09-07 00:20:50

标签: hadoop hive hdinsight tez

当我使用MapReduce作为Hive背后的执行引擎时,我可以使用备用后端到我的defaultFS.impl。使用类似于:

的语法

LOCATION 'protocol://address:port/dir';

我想使用Tez执行引擎而不是MapReduce,但是无法找出添加我的填充库(jar文件)的位置,以便Tez识别我的新协议。

这些目录是什么目录?我是否需要向tez-site.conf添加指令?

附加输入:

Vertex failed, vertexName=Map 6, 
vertexId=vertex_1504790331090_0003_1_01, diagnostics=[Vertex 
vertex_1504790331090_0003_1_01 [Map 6] killed/failed due 
to:ROOT_INPUT_INIT_FA
ILURE, Vertex Input: item initializer failed, 
vertex=vertex_1504790331090_0003_1_01 [Map 6], 
java.lang.RuntimeException: java.lang.ClassNotFoundException: Class 
org.apache.
hadoop.fs.nfs.NFSv3FileSystem not found
    at 
org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2241)
    at         org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2780)
    at     org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2793)
    at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:99)
    at     org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2829)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2811)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:390)
    at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295)
    at org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.generateSplitsInfo(OrcInputFormat.java:1227)
    at org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.getSplits(OrcInputFormat.java:1285)
    at org.apache.hadoop.hive.ql.io.HiveInputFormat.addSplitsForGroup(HiveInputFormat.java:307)
    at org.apache.hadoop.hive.ql.io.HiveInputFormat.getSplits(HiveInputFormat.java:409)
    at org.apache.hadoop.hive.ql.exec.tez.HiveSplitGenerator.initialize(HiveSplitGenerator.java:155)
    at org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable$1.run(RootInputInitializerManager.java:273).....

我已将我的NFS连接器jar文件添加到/ usr / hdp // hiveserver2 / lib并重新启动了我的Hive服务器。我还添加了hive-conf.xml的辅助路径:

<property>
  <name>hive.aux.jars.path</name>
  <value>file:///netappnfs/hadoop-nfs-connector-2.0.0.jar</value>
</property>

我想我需要加载课程,但我不知道如何在Hive中这样做。在通用hadoop中,它载有:

      <name>fs.AbstractFileSystem.nfs.impl</name>
  <value>org.apache.hadoop.fs.nfs.NFSv3AbstractFilesystem</value>

Hive有没有相应的内容?

1 个答案:

答案 0 :(得分:1)

将jar详细信息添加到Hive-site.xml(/ etc / hive / conf)。

property>
  <name>hive.aux.jars.path</name>
  <value>file:///location/fle.jar</value>
</property>

重新启动配置单元