代码改变世界

熟悉常用的HBase操作,编写MapReduce作业

2018-05-08 15:42  Molemole  阅读(187)  评论(0编辑  收藏  举报

1. 以下关系型数据库中的表和数据,要求将其转换为适合于HBase存储的表并插入数据:

学生表(Student)(不包括最后一列)

学号(S_No)

姓名(S_Name)

性别(S_Sex)

年龄(S_Age)

课程(course)

2015001

Wangwu

male

23

 

2015003

Mary

female

22

 

2015003

Lisi

male

24

数学(Math)85

  

1
2
3
4
5
6
7
8
9
10
11
12
13
create 'Student'' S_No  ','S_Name', ’S_Sex’,'S_Age'
put 'Student','1','S_No','2015001'
put 'Student','1','S_Name','Wangwu'
put 'Student','1','S_Sex','male'
put 'Student','1','S_Age','23'
put 'Student','2','S_No','2015003'
put 'Student','2','S_Name','Mary'
put 'Student','2','S_Sex','female'
put 'Student','2','S_Age','22'
put 'Student','3','S_No','2015003'
put 'Student','3','S_Name','Lisi'
put 'Student','3','S_Sex','male'
put 'Student','3','S_Age','24'

  

2. 用Hadoop提供的HBase Shell命令完成相同任务:

  • 列出HBase所有的表的相关信息;list
  • 在终端打印出学生表的所有记录数据;
  • 向学生表添加课程列族;
  • 向课程列族添加数学列并登记成绩为85;
  • 删除课程列;
  • 统计表的行数;count 's1'
  • 清空指定的表的所有记录数据;truncate 's1'
1
2
3
4
5
6
scan 'Student'
alter 'Student','NAME'=>'course'
put 'Student','3','course:Math','85'
dorp 'Student','course'
count 's1'
truncate 's1'