Hbase安装与配置&hbase shell简单命令

一、前提条件

JDK1.7+
Hadoop 2.5.0+
Zookeeper 3.4.5+

二、安装HBase

(1)下载HBase安装包并解压
下载地址:http://www.apache.org/dyn/closer.cgi/hbase/

#上传
rz
#解压
tar -zxvf hbase-0.96.2-hadoop2-bin.tar.gz -C /export/servers/

进入该目录下的conf目录

cd hbase-0.96.2-hadoop2/
ls
cd conf/
ls

配置hbase-env.sh文件

vim hbase-env.sh
#在最后添加
export JAVA_HOME=/export/servers/jdk1.8.0_73
export HBASE_MANAGES_ZK=false

配置hbase-site.xml文件

<configuration>

<property>
    <name>hbase.zookeeper.quorum</name>
    <value>Master,Slave1,Slave2</value>
    <description>The directory shared by RegionServers.
    </description>
</property>

<property>
    <name>hbase.rootdir</name>
    <value>hdfs://Master:9000/hbase</value>
    <description>The directory shared by RegionServers.
    </description>
</property>

<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
    <description>The mode the cluster will be in. Possible values are
      false: standalone and pseudo-distributed setups with managed Zookeeper
      true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)
    </description>
</property>

<property>
        <name>hbase.master.info.port</name>
        <value>60010</value>
</property>
</configuration>

编辑regionservers文件

#添加
vi regionservers
Slave1
Slave2

分发到其他机器上

 scp -r hbase-0.96.2-hadoop2/ Slave1:/export/servers/
 scp -r hbase-0.96.2-hadoop2/ Slave2:/export/servers/

Master启动hbase
启动hbase之前先启动hadoop

cd hbase-0.96.2-hadoop2/
ls
cd bin
ls

启动

./start-hbase.sh 
./stop-hbase.sh
[root@Master hbase-0.96.2-hadoop2]# bin/start-hbase.sh
starting master, logging to /export/servers/hbase-0.96.2-hadoop2/bin/../logs/hbase-root-master-Master.out
localhost: starting regionserver, logging to /export/servers/hbase-0.96.2-hadoop2/bin/../logs/hbase-root-regionserver-Master.out
[root@Master hbase-0.96.2-hadoop2]# jps
3506 SecondaryNameNode
2739 QuorumPeerMain
3333 NameNode
5239 Jps
5000 HMaster
5115 HRegionServer
3662 ResourceManager

Master查看,可以看到HMaster
hbase启动成功

jps

在这里插入图片描述
Slave1,Slave2上可以看到HRegionServer

[root@Slave1 ~]# jps
3281 HRegionServer
3029 DataNode
3127 NodeManager
3337 Jps
1823 QuorumPeerMain
[root@Slave1 ~]# 
[root@Slave2 ~]# jps
1586 QuorumPeerMain
2866 DataNode
2963 NodeManager
3268 Jps
3116 HRegionServer
[root@Slave2 ~]# 

使用hbase shell进入hbase的命令行窗口

[root@Master hbase-0.96.2-hadoop2]# bin/hbase shell
2020-06-09 13:13:45,701 INFO  [main] Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.96.2-hadoop2, r1581096, Mon Mar 24 16:03:18 PDT 2014

hbase(main):001:0> 

Hbase shell的一些命令
在这里插入图片描述
创建表

>create 'users','user_id','address','info'
#表users,有三个列族user_id,address,info

列出全部表

hbase(main):012:0> list
TABLE                                                                                                         
users                                                                                                         
1 row(s) in 0.0600 seconds

=> ["users"]
hbase(main):013:0>

得到表的描述

describe 'users'

删除表

#创建表
>create 'users_tmp','user_id','address','info'
#删除表
>disable 'users_tmp'
>drop 'users_tmp'

添加记录

put 'users','xiaoming','info:age','24';
put 'users','xiaoming','info:birthday','1987-06-17';
put 'users','xiaoming','info:company','alibaba';
put 'users','xiaoming','address:contry','china';
put 'users','xiaoming','address:province','zhejiang';
put 'users','xiaoming','address:city','hangzhou';
put 'users','zhangyifei','info:birthday','1987-4-17';
put 'users','zhangyifei','info:favorite','movie';
put 'users','zhangyifei','info:company','alibaba';
put 'users','zhangyifei','address:contry','china';
put 'users','zhangyifei','address:province','guangdong';
put 'users','zhangyifei','address:city','jieyang';
put 'users','zhangyifei','address:town','xianqiao'

获取一条记录

#取得一个id的所有数据
>get 'users','xiaoming'

#获取一个id,一个列族的所有数据
>get 'users','xiaoming','info'

#获取一个id,一个列族中一个列的
所有数据
get 'users','xiaoming','info:age'

更新记录

>put 'users','xiaoming','info:age' ,'29'
>get 'users','xiaoming','info:age'
>put 'users','xiaoming','info:age' ,'30'
>get 'users','xiaoming','info:age'

获取单元格数据的版本数据

>get 'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>1}
>get 'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>2}
>get 'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>3}

获取单元格数据的某个版本数据

〉get 'users','xiaoming',{COLUMN=>'info:age',TIMESTAMP=>1364874937056}

全表扫描

>scan 'users'
hbase(main):003:0> scan 'users'
ROW                          COLUMN+CELL                                                                      
 xiaoming                    column=address:contry, timestamp=1591693491250, value=china                      
 xiaoming                    column=address:province, timestamp=1591693491296, value=zhejiang                 
 xiaoming                    column=info:age, timestamp=1591694827624, value=29                               
 xiaoming                    column=info:birthday, timestamp=1591693490676, value=1987-06-17                  
 xiaoming                    column=info:company, timestamp=1591693490875, value=alibaba                      
1 row(s) in 0.1080 seconds

hbase(main):004:0> 

删除xiaoming值的’info:age’字段

>delete 'users','xiaoming','info:age'
>get 'users','xiaoming'

删除整行

>deleteall 'users','xiaoming'

统计表的行数

>count 'users'

清空表

>truncate 'users'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值