《大数据技术基础》上机二

  1. 编程实现以下指定功能,并用Hadoop提供的HBase Shell命令完成相同任务:
(1)列出HBase所有的表的相关信息,例如表名;
hbase(main):001:0> list
(2)在终端打印出指定的表的所有记录数据;
scan 'test'
(3)向已经创建好的表添加和删除指定的列族或列;
put 'test','1','column1 data:*','test of c1'
(4)清空指定的表的所有记录数据;
truncate 'test'
(5)统计表的行数。
count 'test'
  1. 现有以下关系型数据库中的表和数据,要求将其转换为适合于HBase存储的表并插入数据:
学生表(Student)
学号(S_No) 姓名(S_Name) 性别(S_Sex) 年龄(S_Age)
2015001 Zhangsan male 23
2015003 Mary female 22
2015003 Lisi male 24
课程表(Course)
课程号(C_No) 课程名(C_Name) 学分(C_Credit)
123001 Math 2.0
123002 Computer Science 5.0
123003 English 3.0
选课表(SC)
学号(SC_Sno) 课程号(SC_Cno) 成绩(SC_Score)
2015001 123001 86
2015001 123003 69
2015002 123002 77
2015002 123003 99
2015003 123001 98
2015003 123002 95
创建表
create 'Student','S_No','S_Name','S_Sex','S_Age'
create 'Course','C_No','C_Name','C_Credit' 
create 'SC','SC_Sno','SC_Cno','SC_Score' 
添加数据 以Student表为例
put 'Student','s001','S_No','2015001' 
put 'Student','s001','S_Name','Zhangsan' 
put 'Student','s001','S_Sex','male' 
put 'Student','s001','S_Age','23' 
查看特定行的特定列
get 'Student','s001',{COLUMN=>'S_Sex'}
更改数据 直接put覆盖即可
put 'Student','s001',"S_Sex","male"
删特定行的数据
deleteall "Student","s002"
  1. 利用HBase和MapReduce完成如下任务: 假设HBase有2张表,表的逻辑视图及部分数据如下所示:
书名(bookName) 价格(price)
atabase System Concept 30$
Thinking in Java 60$
Data Mining 25$
要求:从HBase读出上述两张表的数据,对“price”的排序,并将结果存储到HBase中。
 create 'book','bookName' 
 put 'book','val_60$','bookName:','Thinking in Java' 
 put 'book','val_20$','bookName:','Database System Concept' 
 put 'book','val_30$','bookName:','Data Mining' 

发表评论

电子邮件地址不会被公开。 必填项已用*标注