zoukankan      html  css  js  c++  java
  • hbase本地模式-安装及基本测试

    解压缩hbase二进制安装文件到/opt目录下:
    #tar -zxvf hbase-0.98.6-cdh5.3.6.tar.gz -C /opt/cdh-5.3.6/

    编辑配置文件,这里仅配置数据目录,如果不指定数据目录,默认hbase数据存储在/tmp目录下:
    #vim conf/hbase-site.xml

        <property>
             <name>hbase.rootdir</name>
             <value>file:///opt/hbase0986</value>
         </property>
        
    创建hbase数据目录:
    #mkdir -p /opt/hbase0986
    #chown -R hadoop:hadoop /opt/hbase0986

    启动hbase服务并且检查hbase运行状态:
    #cd /opt/cdh-5.3.6/hbase-0.98.6/
    #bin/start-hbase.sh
    #bin/hbase shell
    hbase(main):001:0> status
    1 servers, 0 dead, 2.0000 average load

    以上信息表明hbase已经启动并且正在运行。至此,hbase本地模式安装完成。

    下面进行一些基本测试:

    创建一张测试表并且新增几条数据:
    hbase(main):002:0> create 'testtable','colfaml'
    0 row(s) in 0.2570 seconds

    => Hbase::Table - testtable
    hbase(main):003:0> list 'testtable'
    TABLE                                                                                                                                                                                                    
    testtable                                                                                                                                                                                                
    1 row(s) in 0.0160 seconds

    => ["testtable"]
    hbase(main):004:0> put 'testtable','myrow-1','colfaml:q1','value-1'
    0 row(s) in 0.0930 seconds

    hbase(main):005:0> put 'testtable','myrow-2','colfaml:q2','value-2'
    0 row(s) in 0.0050 seconds

    hbase(main):006:0> put 'testtable','myrow-3','colfaml:q3','value-3'
    0 row(s) in 0.0060 seconds

    hbase(main):007:0> put 'testtable','myrow-2','colfaml:q3','value-3'
    0 row(s) in 0.0040 seconds

    通过scan检索数据:

    hbase(main):012:0> scan 'testtable'
    ROW                                                 COLUMN+CELL                                                                                                                                          
      myrow-1                                            column=colfaml:q1, timestamp=1495836746559, value=value-1                                                                                            
      myrow-2                                            column=colfaml:q2, timestamp=1495836769808, value=value-2                                                                                            
      myrow-2                                            column=colfaml:q3, timestamp=1495836883408, value=value-3                                                                                            
      myrow-3                                            column=colfaml:q3, timestamp=1495836780730, value=value-3                                                                                            
    3 row(s) in 0.0310 seconds

    通过get命令可以获得单个文件的值:

    hbase(main):022:0> get 'testtable','myrow-1'
    COLUMN                                              CELL                                                                                                                                                 
      colfaml:q1                                         timestamp=1495836746559, value=value-1                                                                                                               
    1 row(s) in 0.0060 seconds

    hbase(main):023:0> get 'testtable','myrow-2'
    COLUMN                                              CELL                                                                                                                                                 
      colfaml:q2                                         timestamp=1495836769808, value=value-2                                                                                                               
      colfaml:q3                                         timestamp=1495836883408, value=value-3                                                                                                               
    2 row(s) in 0.0100 seconds

    通过delete命令可以删除数据:

    hbase(main):027:0> delete 'testtable','myrow-2','colfaml:q3'
    0 row(s) in 0.0070 seconds

    hbase(main):028:0> scan 'testtable'
    ROW                                                 COLUMN+CELL                                                                                                                                          
      myrow-1                                            column=colfaml:q1, timestamp=1495836746559, value=value-1                                                                                            
      myrow-2                                            column=colfaml:q2, timestamp=1495836769808, value=value-2                                                                                            
      myrow-3                                            column=colfaml:q3, timestamp=1495836780730, value=value-3                                                                                            
    3 row(s) in 0.0260 seconds

    删除表也很简单,不过hbase在删除表之前要先禁用表:

    hbase(main):029:0> disable 'testtable'
    0 row(s) in 1.2320 seconds

    hbase(main):030:0> drop 'testtable'
    0 row(s) in 0.1620 seconds

    通过exit命令退出hbase shell:

    hbase(main):031:0> exit

    停止hbase守护进程:

    $ bin/stop-hbase.sh
    stopping hbase...............

    至此,我们完成了一个从安装hbase到对表的创建,增删改查相关的操作,最终删除表,并且停止hbase服务的完整流程。

  • 相关阅读:
    Android杂谈错误整理(持续更新)
    javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/el/ELResolver错误解决办法
    收藏微软面试智力题 (附答案)
    gridview等控件换行实现办法
    [原创]DataView特殊字条串替换(过滤)
    [转]ASP.Net4.0中新增23项功能
    从LOGO看百度与谷歌
    [转]Winxp下kernel32.dll内部的函数集合和地址值
    [转]ASP.NET Web Forms 4.0 简介
    asp.net类似于QQ表情弹出框功能的实现方法
  • 原文地址:https://www.cnblogs.com/wcwen1990/p/7205449.html
Copyright © 2011-2022 走看看