zoukankan      html  css  js  c++  java
  • 使用Java连接HBASE过程中问题总结

    本文是我个人在连接服务器的HBASE过程的一些问题总结。


    一、用户和主机名的设置

      1.1 报错:Insufficient permissions(user=Administartor)

      原因:本地hostname为Administrator,而HBASE表的用户没有这个用户,所以报错。

      措施:设置电脑的环境变量,步骤如下:

      1)右击我的电脑->属性->高级系统;

      2)新增变量名HADOOP_USER_NAME,值为mr(HBASE表的用户名

      如图:

     

      1.2 hosts文件设置

      提示:WARN RecoverableZooKeeper:146 - Unable to create ZooKeeper Connection

      原因:是无法读取配置文件中主机名,可以通过ping IP地址和主机名验证

      在本机的hosts文件设置IP与主机名的映射,如10.23.231.5 mr。

      【问题延伸

      一般经过上述配置后,就可以在cmd的小黑框里ping通IP和主机名(最好两者都试一下),可能出现,能ping通IP地址但是ping不同主机名的情况,代码里可能报错信息为,unkown hostname。

      这种情况可能是所配置的主机名没有生效,解决办法,如图所示:

    注意事项:

    1)选择正在使用的网络,单击右键选择属性

    2)最后导入的是修改后的hosts文件;

     二、本地连接服务器HBASE导致的相关错误

      2.1 ERROR Shell:400 - Failed to locate the winutils binary in the hadoop binary path java.io.IOException:Could not locate executable nullinwinutils.exe in Hadoop binaries.

      2.2 java.io.IOException:HADOOP_HOME or hadoop.home.dir are not set

    解决方案:设置路径,具体如图

    注意事项:

    1)路径是自定义的;

    2)在该路径下新建bin文件夹(如:D:hadoopin),然后上网找到winutils.exe放在bin目录中;

    3)重启电脑,再次编译即可

    三、运行报类找到不到(Hadoop 2.7.3,HBase 1.2.0)

      3.1 运行的时候说找不到org.apache.hadoop.tracing.SpanReceiverHost的类

      原因:依赖的jar没有,

      解决方案:添加hadoop-common-*.jar(对应的版本),最好的是在maven中添加对此jar的依赖。

       3.2 报:Caused by:java.lang.ClassNotFoundException:org.apache.hadoop.fs.FsTracer

      原因:缺jar包

      解决方案:增加对hadoop-hdfs包的依赖。

    待续............

  • 相关阅读:
    【BZOJ 4151 The Cave】
    【POJ 3080 Blue Jeans】
    【ZBH选讲·树变环】
    【ZBH选讲·拍照】
    【ZBH选讲·模数和】
    【CF Edu 28 C. Four Segments】
    【CF Edu 28 A. Curriculum Vitae】
    【CF Edu 28 B. Math Show】
    【CF Round 439 E. The Untended Antiquity】
    【CF Round 439 C. The Intriguing Obsession】
  • 原文地址:https://www.cnblogs.com/love-yh/p/9966307.html
Copyright © 2011-2022 走看看