【头歌】HBase综合测试

第一关:HBase-shell命令

任务描述

使用 HBase shell 命令创建表: exam_tb1 ,向表中添加数据,表的数据与结构如下:
在这里插入图片描述

相关知识

编程要求
根据右侧窗口命令行内的提示,在 Begin - End 区域内进行命令行语句补充。

测试说明
本关需要你在命令行中启动 hbase ,并使用 hbase shell 操作命令行,操作完之后点击测评即可,平台会使用脚本通过表名获取你创建的表,并输出其中数据。

预期输出:

row-1
    class_info:class_id 201801
    class_info:class_name software
    user_info:age 32
    user_info:name jack
row-2
    class_info:class_id 201802
    class_info:class_name hardware
    user_info:age 28
    user_info:name rose

开始你的任务吧,祝你成功!

代码如下:

在命令行依次输入以下命令:

start-hbase.sh

hbase shell

create 'exam_tb1',  {
   NAME=>'user_info'},{
   NAME=>'class_info'}

put 'exam_tb1','row-1','user_info:name','jack'
put 'exam_tb1','row-1','user_info:age','32'
put 'exam_tb1','row-1','class_info:class_name','software'
put 'exam_tb1','row-1','class_info:class_id','201801'

put 'exam_tb1','row-2','user_info:name','rose'
put 'exam_tb1','row-2','user_info:age','28'
put 'exam_tb1','row-2','class_info:class_name','hardware'
put 'exam_tb1','row-2','class_info:class_id','201802'


第2关:HBase Java API

任务描述
本关任务:在右侧编写代码,禁用表 step2_tb0 ,删除表 step2_tb1 ,创建表 emp_tb1emp_tb1 表结构与数据如下图:

在这里插入图片描述

相关知识

编程要求
请仔细阅读右侧代码,根据方法内的提示,在 Begin - End 区域内进行代码补充。

测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

预期输出:

表step2_tb0已禁用
step2_tb1已删除
201101
    dept_info:dept_id 2001
    dept_info:dept_name finance
    dept_info:gender man
    emp_info:emp_id 1
    emp_info:emp_name lucy
201102
    dept_info:dept_id 2003
    dept_info:dept_name techenology
    dept_info:gender woman
    emp_info:emp_id 2
    emp_info:emp_name alpha
201103
    dept_info:dept_id 3002
    dept_info:dept_name logistics
    dept_info:gender man
    emp_info:emp_id 3
    emp_info:emp_name linus

开始你的任务吧,祝你成功!

代码如下:

package step2;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.apache.hadoop.conf.*;
import org.apache.hadoop.hbase.*;
import org.apache.hadoop.hbase.client.*;
import org.apache.hadoop.hbase.io.compress.Compression;
import org.apache.hadoop.hbase.util.*;

public class Task {
   

	public void operatorTables()throws Exception{
   
	/********* Begin *********/
	Configuration conf = HBaseConfiguration.create(); //使用create()静态方法就可以得到Configuration对象
	Connection conn = ConnectionFactory.createConnection(conf); //config为前文的配置对象
	Admin admin = conn.getAdmin(); //使用连接对象获取Admin对象
	TableName tableName = TableName.valueOf("emp_tb1");//定义表名
	HTableDescriptor htd = new HTableDescriptor(tableName);//定义表对象
	HColumnDescriptor hcd1 = new HColumnDescriptor("emp_info");//定义列族对象
    HColumnDescriptor hcd2 = new 
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卷心菜yst

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值