zoukankan      html  css  js  c++  java
  • Hadoop上配置Hbase数据库

    已有环境:

    1. Ubuntu:14.04.2

    2.jdk: 1.8.0_45

    3.hadoop:2.6.0

    4.hBase:1.0.0

    详细过程:

    1.下载最新的Hbase,这里我下载的是hbase-1.0.0版本,然后打开终端,输入: tar zxvf hbase-1.0.0.tar.gz解压,然后将hbase放到合适的路径下(可以是用户目录,也可以是根目录,不太清楚是否必须要与hadoop放在用一个根目录下,本人是放在同一个目录下的)

    2.修改2个配置文件(这里是伪分布式,单机版不再叙述)

    • hbase-env.sh(在hbase的安装目录下的conf文件夹中)
    export JAVA_HOME=/usr/lib/jvm/java
    export HBASE_MANAGES_ZK=true
    //打开注释,并配置java环境
    • hbase-site.xml
    //加入如下配置信息:
       <property>
            <name>hbase.rootdir</name>
            <value>hdfs://localhost:8020/hbase</value>//这里的路径必须与hadoop的core-site.xml中的fs.default.name一致,还有一个需要注意的地方是端口号8020,默认是9000。我的设置9000时没能成功启动hbase,当换成8020时,成功启动
        </property>
    
        <property>
            <name>hbase.cluster.distributed</name>
            <value>true</value>
        </property>
    
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    
        <property>
            <name>hbase.zookeeper.property.dataDir</name>
            <value>/home/server1/Documents/zookeeper</value>//设置让hbase存储zookeeper文件的地方
        </property>

    3.启动hadoop.

    4.启动hbase。进入bin,输入命令:./start-hbase.sh

    13808 Jps
    12880 HQuorumPeer
    13044 HRegionServer
    12948 HMaster   //出现HMster说明配置成功 
    12105 SecondaryNameNode
    11913 DataNode
    11758 NameNode

    5.在终端输入 bin/hbase shell进入shell模式。

    6。在shell模式下进行建表等操作:

    create 'test','cf'   //建立一张名为‘test’,含有一个列族‘cf’的表
    describe 'test'   //列出表的详细信息
    put 'test','row1','cf:a','value1'   //在表中插入一行数据,
    //row1为唯一标识,cf中含一列名为a,它的值为value1

    7.关闭hbase和hadoop

    8.可能出现的问题及解决方案:

    • hbase无法启动的问题。
      • 导致hbase无法启动的原因有多种,由于本人太过幸运,种种问题均遇到过O(∩_∩)O~
      • 一,启动hbase后,没有HMaster。
      • 二,启动hbase后,HMaster闪退。
      • 三,建表时产生空指针错误。
      • 四,hbase无法启动。
    • 解决方案:
      • 搜索了网络上各种解决方案,大致有以下几种方法:
        • 修改hbase-site.xml,添加各种配置信息;
        • 修改etc/hosts,将Ubuntu对应的IP那一项删除;
        • 修改etc/profile,配置hbase的环境变量(类似JDK的配置);
        • 将hadoop里的core-site.xml和hadoop-core-xxx.jar copy到hbase中的相应目录中(由于我安装的是hadoop-2.6.0版本,搜索了半天都没有找到hadoop-core jar文件,然后Google之,说是2.x以上的版本都没有这些jar文件,非要使用的话只能从官网下载);
      • 自己的解决方案:
        • 真正的原因是hadoop,hbase与jdk版本不兼容,导致以上各种问题的出现,包括闪退,无法启动等等。最后一个解决方案正是为了解决不兼容的问题。由于我自己起初用的是hadoop-2.6.0,jdk是1.8.x,hbase是0.8.27。本质原因就是hbase版本太低,而jdk版本太高。最简单的方案是删除低版本的hbase,然后安装最新的高版本hbase,问题即可轻易解决。

          

                总结:版本不一致会导致兼容问题,需要配置各种信息,所以以后要先查看课本或者别人的博客是用的那个版本的文件,然后在安装,站在巨人的肩上,才能走得更远!!

          

  • 相关阅读:
    Python for Data Science
    Python for Data Science
    Python for Data Science
    团队项目选题报告(I know)
    结对第一次作业——原型设计
    团队展示(I know)
    软件工程实践第二次作业——个人项目实战(数独)
    软件工程实践第一次作业--准备篇
    Java微笔记(9)
    Java微笔记(8)
  • 原文地址:https://www.cnblogs.com/little-YTMM/p/4445727.html
Copyright © 2011-2022 走看看