热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Hbaseshell练习题

第一大题:namespace的shell操作1、创建一个命名空间myns,同时设置属性author为自己,time为2020-05-11create

第一大题:namespace的shell操作

1、创建一个命名空间myns,同时设置属性author为自己,time为2020-05-11

create_namespace 'myns', {'author' => 'michael', 'time' => '2020-05-11'}

2、为myns添加一个属性company为huawei

alter_namespace 'myns', {METHOD => 'set', 'company' => 'huawei'}

3、列出所有的命名空间

list_namespace

4、列出hbase命令空间下的所有的表

list_namespace_tables 'hbase'

5、查看myns命名空间的属性信息

describe_namespace 'myns'

6、能直接删除hbase命令空间吗?为什么?

不能,因为hbase里有两张表,而删除时,只能删除没有表的命名空间

第二大题:table的ddl操作(shell练习)

1、写一个建表语句,表名student, 列族base_info的版本数为3个, 列族score的版本数为5个,列族address版本数为5个同时存活时间为7天

create 'myns:student', {NAME => 'base_info', VERSIONS => 3}, {NAME => 'score', VERSIONS => 5}, {NAME => 'address', VERSIONS => 5, TTL => 604800}

2、查看student表的列族的信息

describe 'myns:student'

3、修改base_info列族的BLOOMFILTER属性为rowcol,存活时间为7天

alter 'myns:student', {NAME => 'base_info', BLOOMFILTER => 'rowcol', TTL => 604800}

4、list和list_namespace_tables的区别

list是列出所有的表,除了两张系统表
list_namespace_tables是列出指定命名空间里的表

5、为表student追加两个列族 f1,f2

alter 'myns:student', 'f1', 'f2'

6、删除列族f1和f2

alter 'myns:student',{NAME=>'f1',METHOD=>'delete'},{NAME=>'f2',METHOD=>'delete'}
或者一个一个删除
alter 'myns:student','delete'=>'f1'
alter 'myns:student','delete'=>'f2'

7、怎么删除hbase中的一张表

先disable禁用表,再drop删除

第三大题:table的crud操作(shell练习)

1、将一下数据添加到student表(请放到相应的列族中)

sid name age gender math chinese math provinces city street
201901010001 zhaoyun 23 m 90 89 100 hlj harbin pudonglu
201901010002 zhangfei 24 f 80 78 90 hebei shijiazhuang tianyulu
201901010003 guanyu jilin

put 'myns:student','201901010001','base_info:name','zhaoyun'
put 'myns:student','201901010001','base_info:age',23
put 'myns:student','201901010001','base_info:gender','m'
put 'myns:student','201901010001','score:math',90
put 'myns:student','201901010001','score:chinese',89
put 'myns:student','201901010001','score:english',100
put 'myns:student','201901010001','address:provinces','hlj'
put 'myns:student','201901010001','address:city','habin'
put 'myns:student','201901010001','address:street','pudonglu'put 'myns:student','201901010002','base_info:name','zhangfei'
put 'myns:student','201901010002','base_info:age',24
put 'myns:student','201901010002','base_info:gender','f'
put 'myns:student','201901010002','score:math',80
put 'myns:student','201901010002','score:chinese',78
put 'myns:student','201901010002','score:english',90
put 'myns:student','201901010002','address:provinces','hebei'
put 'myns:student','201901010002','address:city','shijiazhuang'
put 'myns:student','201901010002','address:street','tianyulu'put 'myns:student','201901010003','base_info:name','guanyu'
put 'myns:student','201901010003','address:provinces','jilin'

2、查询表中的所有数据

scan 'myns:student'

3、查询每个人的姓名和所有成绩

scan 'myns:student', {COLUMNS => ['base_info:name', 'score']}

4、查询201901010002的的地址信息

get 'myns:student', '201901010002', 'address'

5、修改201901010002的name为zhangfei1,再次修改name为zhangfei2

put 'myns:student', '201901010002', 'base_info:name', 'zhangfei1'
put 'myns:student', '201901010002', 'base_info:name', 'zhangfei2'

6、查询201901010002的name的历史版本

get 'myns:student', '201901010002', {COLUMN => 'base_info:name', VERSIONS => 3}

7、删除201901010002的name的最旧的两个版本

delete 'myns:student', '201901010002', 'base_info:name', 1598404629426删除倒数第二个旧的

8、删除第三行记录

deleteall 'myns:student', '201901010003'

9、如何删除一张表中的所有记录

truncate 表名

第四大题:API的练习

1. 创建命名空间ns1,要求添加属性author,company,comment. 属性值自定义
2. 输出命名空间ns1的属性信息
3. 在命名空间ns1下创建表emp表,提供以下列族f1: 布隆过滤器row 版本2个 存活时间7天f2: 布隆过滤器rowcol 版本5个 存活时间2天f3: 属性值都是默认的。
4. 将emp表中的14行记录,插入5行记录即可。(思考,谁应该作为rowkey)
5. 查询一个员工的所有单元格

推荐阅读
author-avatar
忠讧_136
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有