实验4·使用HBase Shell完成《王者荣耀》玩家信息管理
1 实验目的
- 回顾HBase的基础理论知识;
- 熟悉HBase的基础操作;
- 熟悉HBase Shell中常用的DDL(Data DeFinition Language)和DML(Data Manipulation Language)命令。
2 实验平台
操作系统:Linux
Hadoop版本:2.7.1或以上版本
JDK版本:1.6或以上版本
Java IDE:Eclipse
HBase版本:HBase1.1.5
3 实验内容和要求
一、Hbase的基础操作回顾:
(1)单机模式运行Hbase;
(2)伪分布模式运行Hbase;
二、使用HBase Shell完成《王者荣耀》(或者任何你喜欢的游戏)玩家信息管理
(3)启动Hbase,进入到Hbase的shell界面,并在shell界面查看Hbase已经有了哪些表;
- 启动Hbase之前先启动Hadoop
- 再启动Hbase进入到shell界面,查看已有的表
(4)在Hbase中新创建一张表, 以你喜欢的游戏命名;注意请精心设计你所创建的表,比如:
(6)表的详细信息中,各列族的具体信息如下:
选择不少于3个条目进行解释,如;
列族描述中的各条目 | 功能描述 |
---|---|
NAME | 列族名 |
BLOOMFILTER | 按照行提高随机读的性能 |
VERSIONS | 指此单元格内的数据可以保留最近的版本数 |
BLOCKCACHE | 读取数据时是否进行缓存 |
(7)修改表的某个列族的某个具体信息:可用alter命令修改表的列族信息,即为表增加列族,或者修改列族(当该列族已经存在时),语法为;
alter '表名',{NAME=>'列族名',参数名=>'参数值'}
改动完成之后,查看改动是否成功
(8)尝试用同样的alter命令为此表增加一个新的列族;
(9)将创建的表删除:要在Hbase中删除一个表,首先需要禁用它。因此,尝试禁用你所创建的表,以及禁用之后如何又重新启用它,并且每一步都需要验证操作是否成功(即禁用之后,验证是否禁用成功,等等),然后将此表删除,并查看是否删除成功:
由于’GloryofKing’已经被我删除,无法验证是否禁用成功。只好用剩下的‘teacher’表来验证
三、熟悉Hbase的DML操作,DML主要是针对表中数据本身的操作
(10)重新创建刚才的《王者荣耀》玩家信息表(或者你所创建的随便其他的什么表);
(11)用 put 命令往表中添加数据,语法为:
put 'table' , 'rowkey".'family:column', 'value',timestamp'
下图为部分截图:
个人信息
资产信息
战绩信息
常用英雄
重要要求:
请自行设计自由发挥,列族数不得少于4个!每个列族中的列不得少于4个,特殊情况(如个人信息只有账户和昵称)除外,数据条目,即行键不得少于5条。
(12)数据添加完成之后,使用scan 命令验证其是否添加成功
(13)Hbase表中的数据全部添加完成之后,来对其中的数据做查询操作,首先,用scan命令查询某一个列族的数据,语法为:
scan 'table,{COLUMNS => 'family'}
如要查询personallnfo个人信息:
(14)查看指定的某个列族的某个列,语法为::
scan 'table',{COLUMNS =>['family:column']}
如要查询personallnfo下的userID:
(15)scan命令查找的目标是全表的某个列族或者某个列,而另外的一个查找命令 get ,则是查找的某行的某个列族或者列,因此,其多了一个行键参数,语法为:
1.get 'table ,'row-key'
2.get 'table' , 'row-key',{COLUMN=>'family:column'}
- 使用get命令,查询表中任意一个列族的全部信息;
- 使用get命令,查询表中任意一个列族的任意一列的信息;
- 使用get命令,指定表中的多个列族,进行查询;
- 使用get命令,不指定表中的列族,对某一行键的全部信息进行查询;
(16)使用 delete 命令,删除Hbase中的某一个单元,语法为:
删除完成之后,使用get命令查看验证是否成功;
(17)使用 deleteall 命令,删除Hbase中的某一行键的所有数据,
删除完成之后,同样使用get命令查看是否成功;
(18)使用 truncate 命令,清空Hbase中的某一个表的所有数据,
清空完成之后,查看是否成功
清空完成之后,查看是否成功
(19)将空表删除,自此实验4全部完成
HBASE样表:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。