实验四:HBASE shell 操作

前置条件:创建一个学生表,信息为组员的信息

下载HBASE

https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/2.5.5/hbase-2.5.5-bin.tar.gz

解压到/local下

改个名为hbase

添加访问目录的权限

配置环境变量

查看版本,报错

解决一个问题

HBASE配置(伪分布式)

export JAVA_HOME=/usr/lib/jvm/default-java

export HBASE_CLASSPATH=/usr/local/hadoop/conf

export HBASE_MANAGE_ZK=true

配置hbase-site.xml​​​​​​

可以直接把这段替换原来的代码,注意注释上面有一个多的<configuration>要删掉

<configuration>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.tmp.dir</name>
    <value>./tmp</value>
  </property>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://localhost:9000/hbase</value>
  </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>
</configuration>

启动hadoop、hbase,并查看进程

启动shell并创建一个学生表

查看一手

接着插入数据并查看

继续插入剩下的数据

接着创建一个课程表

这里我们在info这个列族第一行中插入课程名为JAVA,学分为3

接着再随便编两条

最后创建一个选课表(ps:Hbaseshell总是莫名奇妙卡住,重新开一个终端就好)

 评分点一(C): 
(1)依据上述数据,设计一张 HBase 表(需包含上述三张关系表的信息,结构不限),并完成插入数据。

就是刚才创建的三张表,不过插入数据的话可能会现场提问,多实操。

评分点二(A/B):五选二 


(2)列出 HBase 所有的表的相关信息,例如表名;

list


(3)输出指定的表的所有记录数据;

scan


(4)向已经创建好的表添加列族或列;

创建一个测试表

添加列族 alter

可以看到刚才添加的新列族

现在新列族是一个列,往new liezu里添加信息,它就变成列族了


(5)向已经创建好的表删除指定的列族或列;(先做好备份)

先插入一条数据

delete 删除new lie


(6)清空指定的表的所有记录数据;(先做好备份)

这里先禁用表test,然后使用命令 truncate 清空表,重新启用test,然后查看表

评分点四:随机提问 
个人回答(正确回答+2 分,回答错误-1 分),范围包括但不限于以下内容:
(7)统计表的行数

count


(8)查询指定行键范围数据

scan 例如我查询 SC表中1、2行的数据,条件是左闭右开的


(9)删除表(先做好备份)

drop 先禁用后删除表


(10)比较时间戳

这个真的能在HBASEshell里实现吗?我翻了一遍命令,没有找到,应该是在api里实现。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值