HBase如何添加其依赖项jar并使用HADOOP_CLASSPATH



48。HBase、MapReduce和CLASSPATH

默认情况下,部署到MapReduce集群的MapReduce作业既不能访问$HBase_CONF_DIR下的HBase配置,也不能访问HBase类。

要为MapReduce作业提供所需的访问权限,可以将hbase-site.xml_To_$HADOOP_HOME/conf添加到$HADOOP_HOME/lib目录中,并将hbase jar添加到$HADOOP_HOME/lib目录中。然后,您需要在集群中复制这些更改。或者,您可以编辑$HADOOP_HOME/conf/HADOOP-env.sh,并将hbase依赖项添加到HADOOP_CLASSPATH变量中。这两种方法都不推荐,因为它会用HBase引用污染Hadoop安装。它还要求在Hadoop可以使用HBase数据之前重新启动Hadoop集群。

推荐的方法是让HBase添加其依赖项jar并使用HADOOP_CLASSPATH或-libjar。

我正在学习HBase如何与MapReduce 交互

我知道以上两种方式的含义,但我不知道如何配置推荐的方式

有人能告诉我如何以推荐的方式配置它吗?

如文档所示,在运行hadoop jar之前,您可以使用export HADOOP_CLASSPATH=$(hbase classpath)hadoop jar ... -libjars [...]


真正推荐的方法是将HBase依赖项捆绑为mapreduce应用程序中的Uber JAR

唯一需要注意的是,您需要确保您的项目使用与服务器相同/兼容的hbase-mapreduce客户端版本。

这样,除了指定hbase-site.xml之外,您不需要任何额外的配置

相关内容

  • 没有找到相关文章

最新更新