Hbase Shell

一、启动运行HBase

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

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

输入命令jps ,如果能够看到NameNodeDataNodeSecondaryNameNode这三个进程,则表示已经成功启动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'
相关推荐
火龙谷27 分钟前
【hadoop】HBase shell 操作
大数据·hadoop·hbase
随缘而动,随遇而安30 分钟前
第五十二篇 浅谈ETL系统设计
大数据·数据仓库·数据分析·数据库开发·数据库架构
猫头虎1 小时前
浅谈国产数据库多租户方案:提升云计算与SaaS的资源管理效率
大数据·数据库·数据仓库·sql·云计算·时序数据库·kingbasees
杨超越luckly1 小时前
HTML应用指南:利用GET请求获取微博签到位置信息
大数据·信息可视化·数据分析·html·html5
早睡3352 小时前
Spark-Streaming核心编程
大数据·分布式·spark
anqi272 小时前
Spark和Hadoop之间的对比和联系
大数据·开发语言·hadoop·spark
大刘讲IT9 小时前
数据治理体系的“三驾马车”:质量、安全与价值挖掘
大数据·运维·经验分享·学习·安全·制造·零售
悻运10 小时前
Spark论述及其作用
大数据·分布式·spark
szxinmai主板定制专家10 小时前
国产RK3568+FPGA以 ‌“实时控制+高精度采集+灵活扩展”‌ 为核心的解决方案
大数据·运维·网络·人工智能·fpga开发·机器人