集群HBase-shell命令及表操作详细步骤(附图)
1:Hbase 集群配置信息及启动命令
其中,集群主节点的主机名为:hd09-01,两台从节点主机名分别为:hd09-02,hd09-03。
-
启动Hbase的工作:
-
hbase是基于hadoop的,所以hbase服务器必须启动hadoop集群:start-dfs.sh
-
再接着启动yarn集群:start-yarn.sh
-
在三台机器上分别启动Zookeeper集群:输入zkServer.sh start
-
然后在主节点机器上的hbase目录下输入:bin/hbase-daemon.sh start master
-
最后在两台从节点目录下分别输入:bin/hbase-daemon.sh start regionserver
-
在主节点上查看进程:
HMaster表示该台机器作为Hbase集群的主节点。
在从节点上查看进程:
HRegionServer表示该台机器作为Hbase集群的从节点。
启动终端:bin/hbase shell
启动web端:
输入:192.168.152.128:16010
其中,192.168.152.128是主节点hd09-01的ip地址,16010是Hbase的端口。
以上结果均能显示,表示环境及启动命令正常。
2:Hbase-shell基础命令
1:查看服务器状态 :status 'hd09-01’
上述结果显示:1个主节点,2个从节点,与环境配置信息相符。
2:查看当前有哪些表 :list
3:Hbase-表操作
- 创建表:**create ‘表名’,‘列族’ **
- 查看表:scan '表名’
3.向表中插:put ‘表名’,‘rowkey’,‘列族:列名’,‘值’
其中:
rowkey:行键:唯一 不重复
timestamp:时间戳
cell:单元格 数据存放位置
column familly:列族,列族下包含多个列
column:列
4.覆盖数据 :在hbase中没有修改,但是可以覆盖只要保持rowkey,列族,列相同即可进行覆盖操作
5.继续添加一行rowkey为102的数据,然后筛选rowkey只为101的数据
扫描 :can ‘user’,{STARTROW =>‘101’,STOPROW => ‘101’}
6.查看表结构 :describe ‘表名’
7.变更表信息 :alter ‘表名’,{NAME => ‘info’,VERSIONS => ‘3’}
8.删除数据:根据rowkey删除,deleteall ‘表名’,‘rowkey’
如果想删除rowkey为101的所有数据:deleteall ‘表名’,‘rowkey’
如果根据具体的列删除:delete ‘表名’,‘rowkey’,‘列族:列’
9:清空表:truncate ‘表名’
10:删除表:删除表
第一步:设置不可用状态:disable ‘表名’
第二步:删除该表:drop ‘表名’
11:统计表中数据行数 :count ‘表名’
在此,由于刚刚把user表已经删除,重新创建一个emp表:
create ‘emp’,‘info1’,‘info2’----- 此时,有两个列族,相同的rowkey:1001
在不同的列族中,插入两条数据:
12:查看指定rowkey值 :get ‘表名’,‘rowkey’
可以看到,count实际上统计的是rowkey的值
13:查看具体列值 :get ‘表名’,‘rowkey’,‘列族:列’
14:查看具体列值 :get ‘表名’,‘rowkey’,'列族:列 ’