Hbase Shell

一、启动运行HBase

首先登陆SSH,由于之前在Hadoop的安装和使用 中已经设置了无密码登录,因此这里不需要密码。然后,切换至/usr/local/hadoop,启动Hadoop,让HDFS进入运行状态,从而可以为HBase存储数据,具体命令如下:

复制代码
$ ssh localhost
$ cd /usr/local/hadoop
$ ./sbin/start-dfs.sh

输入命令jps ,如果能够看到NameNode、DataNode和SecondaryNameNode这三个进程,则表示已经成功启动Hadoop。

然后,启动HBase,命令如下:

复制代码
$ cd /usr/local/hbase
$ bin/start-hbase.sh

输入命令jps,如果出现以下进程,则说明HBase启动成功:

复制代码
Jps
HMaster
HQuorumPeer
NameNode
HRegionServer
SecondaryNameNode
DataNode

现在就可以进入HBase Shell模式,命令如下:

复制代码
$ bin/hbase shell  #进入HBase shell命令行模式

进入HBase shell命令行模式以后,用户可以通过输入shell命令操作HBase数据库。

二、停止运行HBase

最后,可以使用如下命令停止HBase运行:

复制代码
$ bin/stop-hbase.sh

如果在操作HBase的过程中发生错误,可以查看{HBASE_HOME}目录(即/usr/local/hbase)下的logs子目录中的日志文件,来寻找可能的错误原因。

关闭HBase以后,如果不再使用Hadoop,就可以运行如下命令关闭Hadoop:

复制代码
$ cd /usr/local/hadoop
$ ./sbin/stop-dfs.sh

最后需要注意的是,启动关闭Hadoop和HBase的顺序一定是:启动Hadoop--->启动HBase--->关闭HBase--->关闭Hadoop。

三、作业练习

1.创建《王者荣耀》游戏玩家信息表gamer,包含列族personalInfo(个人信息)、recordInfo(战绩信息)、assetsInfo(资产信息)。
复制代码
create 'gamer', 'personalInfo','recordInfo','assetsInfo'
2.查看表的详细信息
复制代码
describe 'gamer'
3.修改gamer表中recordInfo列族的TTL信息设置为180天。
复制代码
alter 'gamer',{NAME => 'recordInfo', TTL => 15552000}
4.向gamer表添加数据

|---------|--------------|--------|------------|------------|
| | personalInfo || recordInfo | assetsInfo |
| | nickname | gameID | ranking | integral |
| row-001 | QGhappy.Snow | 000000 | One | 10000 |
| row-002 | XQMaster | 111111 | Two | 20000 |

复制代码
put 'gamer','row-001','personalInfo:nickname', 'QGhappy.Snow'
put 'gamer','row-001','personalInfo:gameID', '000000'
put 'gamer','row-001','recordInfo:ranking', 'One'
put 'gamer','row-001','assetsInfo:integral', '10000'
put 'gamer','row-002','personalInfo:nickname', 'XQMaster'
put 'gamer','row-002','personalInfo:gameID', '111111'
put 'gamer','row-002','recordInfo:ranking', 'Two'
put 'gamer','row-002','assetsInfo:integral', '20000'
5.查询gamer表中所有数据
复制代码
scan 'gamer'
6.查找gamer表中行键为row-001的所有单元
复制代码
get 'gamer','row-001'
7.查找gamer表中行键为row-001,列键为personalInfo:nickname的单元
复制代码
get 'gamer','row-001','personalInfo:nickname'
8.查找gamer表中行键为row-001,列族为personalInfo的单元
复制代码
get 'gamer','row-001','personalInfo'
9.删除gamer表中行键为row-001,列键为personalInfo:nickname的单元数据
复制代码
delete 'gamer','row-001','personalInfo:nickname'
10.删除gamer表中行键为row-001的一行数据
复制代码
deleteall 'gamer','row-001'
11.删除gamer表中所有数据。
复制代码
truncate 'gamer'
12.删除gamer表
复制代码
disable 'gamer'
drop 'gamer'
相关推荐
跨境卫士苏苏11 分钟前
亚马逊卖家接口新增欧盟清关商品标识要求跨境技术团队如何适配
大数据·新媒体运营·市场营销·跨境电商·跨境·营销策略
roman_日积跬步-终至千里38 分钟前
数仓方法论(四):跨过程整合——用一致性维度连接不同业务事实
大数据
roman_日积跬步-终至千里2 小时前
数仓方法论(一):需求分析——把经营诉求转化为可验证的数据需求
大数据·数据挖掘·需求分析
智恒百亿3 小时前
一台 5090 八卡服务器怎么分给一个团队用?多模型多任务的显存分配实战
java·大数据·人工智能
yyk333243 小时前
大数据工具介绍
大数据
超级新零售3 小时前
服装订货会数字化:商品版本、订单状态与后续配发数据如何衔接?
大数据·小程序·企业微信
滼3 小时前
AI 数据安全面试应答框架:从大框架到小点
大数据·人工智能·安全·面试·安全架构
第九序言T4 小时前
Python 数据处理进阶(二十一)相关性与分组对比:数据里藏着什么关系
大数据·人工智能·python·数据分析·pandas
roman_日积跬步-终至千里4 小时前
数仓方法论(五):历史与增量——让变化进入数仓而不丢失解释
大数据
freejackman4 小时前
【架构篇】双遍历 + 多栈协同:手撸 SQL 血缘引擎的架构思考
java·大数据·数据库·hive·sql·架构·spark