云计算与大数据实验:Hbase shell终端操作之数据操作一
【实验目的】
1)学会向表中添加记录
2)学会添加记录时动态添加列
3)学会查看一条记录
4)学会查看表中的记录总数
5)学会删除记录
【实验原理】
Hbase shell作为Hbase数据的客户端,可以连接hbase,通过命令行方式和hbase进行交互。
Hbase shell是一个封装了Java客户端API的JRuby应用软件。
在终端中执行hbase shell命令启动Shell,即可操作hbase。
Shell可以支持命令自动补全和命令文档内联访问。
【实验环境】
本次环境是:centos6.5+jdk1.7.0_79+hbase0.96+hbase shell
host01是计算机名称对应ip地址为 192.168.1.2,可以在/etc/hosts文件中查看映射关系
【实验步骤】
一 、项目准备阶段
1.1 通过命令start-all.sh启动hadoop,启动hbase。进入$HBASE/bin/目录,执行命令./start-hbase.sh。如图1所示

图1
1.2 启动shell模式。进入$HBASE/bin目录,执行./hbase shell命令。如图2所示
图2
1.3 创建测试表。在命令行中输入create 'people', {NAME =>'info', VERSIONS=>3}, {NAME=>'data', VERSIONS=>1}创建people表。如图3所示

图3
二、向表中添加记录
2.1 查看插入操作帮助。在命令行中执行help 'put',可以查看相关帮助文档。如图4所示

图4
2.2 向第一个列族的第一个列插入一条记录。
说明:
插入一行数据到列族info的列name中。在命令行中执行put 'people',
'rk0001', 'info:name', 'MaYun'。其中,rk0001为行健值,MaYun
为列族info中字段name的值。如图5所示

图5
2.3 向第一个列族的第二个列插入一条记录。
说明:
插入一行数据到列族info的列gender中。在命令行中执行put 'people'
,'rk0001', 'info:gender', 'male'。其中,rk0001为行健值,male为列
族info中字段gender的值。插入该记录之后,列族info下面将会含有两
个列name和gender。如图6所示

图6
2.4 向第二个列族的第一个列插入一条记录。
说明:
插入一行数据到列族data的列myurl中。在命令行中执行put 'people'
, 'rk0001', 'data:myurl', 'www.yun.alibaba.com/myURL'。其中,
rk0001为行健值,www.yun.alibaba.com/myURL为列族data中字
段myurl的值。如图7所示

图7
2.5 插入第二行数据。
说明:
Hbase中用rowkey来判断数据属于哪一行,上面数据的rowkey为
rk0001,下面将用rk0002做为rowkey来插入第二列数据。插入一
行数据到列族info的列name中。在命令行中执行put 'people' ,
'rk0002', 'info:name', 'LiuChangle'。其中,rk0002为行健值,
LiuChangle为列族info中字段name的值。如图8所示

图8
三、查看表中一条记录
3.1 已知rowkey值为rk0001,执行语句get ‘people’, ‘rk0001’,查询该rowkey对应的一条记录。如图9所示

图9
四、查看表中的记录总数
4.1 查询表people中的记录总数。执行语句count ‘people’返回记录数。如图10所示

图10
五、删除表中的记录
5.1 删除数据之前,首先插入测试数据。如图11所示
测试数据如下:
put 'people' , 'rk0003', 'info:name', 'MaYun2'
put 'people' , 'rk0003', 'info:gender', 'male'
put 'people' , 'rk0003', 'data:myurl', 'www.y
un.alibaba.com/myURL2'

图11
5.2 查询上面插入的数据。执行命令get 'people', 'rk0003'。如图12所示

图12
5.3 删除rowkey为rk0003的值的记录。执行命令deleteall 'people','rk0003'。如图13

图13
执行命令get 'people', 'rk0003'查看结果,发现记录数为0,说明删除成功。如图14

图14
云计算与大数据实验:Hbase shell终端操作之数据操作一的更多相关文章
- 【大数据】Hbase如何批量删除指定数据
一.起因: Hbase是一个列式存储,nosql类型的数据库,类似mongodb. 目前似乎没有提供批量删除的方法,只有一个单行删除的命令:deleteall 'tablename', rowkey ...
- Hbase Shell命令详解+API操作
HBase Shell 操作 3.1 基本操作1.进入 HBase 客户端命令行,在hbase-2.1.3目录下 bin/hbase shell 2.查看帮助命令 hbase(main):001:0& ...
- 云计算与大数据实验:Hbase shell基本命令操作
[实验目的] 1)了解hbase服务 2)学会启动和停止服务 3)学会进入hbase shell环境 [实验原理] HBase是一个分布式的.面向列的开源数据库,它利用Hadoop HDFS作为其文件 ...
- Hbase记录-Hbase shell使用命令
1.进入hbase shell 执行./bin/hbase shell 2.进入后,help 帮助信息,如可以使用help 'create' 3.创建表:create 'test','cf' 表 ...
- Hbase shell 输入无法使用退格键删除解决办法
今天在进入hbase shell终端进行数据查询和添加时,发现输入的命令无法撤回,现将解决办法写下: 1.使用Ctrl + Backspace或Shift + Backspace组合键删除 2.(Se ...
- 【hbase】——bulk load导入数据时value=\x00\x00\x00\x01问题解析
一.存入数据类型 Hbase里面,rowkey是按照字典序进行排序.存储的value值,当用filter进行数据筛选的时候,所用的比较算法也是字典序的. 1.当存储的value值是float类型的时候 ...
- flink-cdc同步mysql数据到hbase
本文首发于我的个人博客网站 等待下一个秋-Flink 什么是CDC? CDC是(Change Data Capture 变更数据获取)的简称.核心思想是,监测并捕获数据库的变动(包括数据 或 数据表的 ...
- HBase shell 中的十六进制数值表示
在使用Hbase shell 进行get 或scan操作时,时不时会看到一些数值被转成了16进制, 就像下面那样 value=W\x5C5\x80 那么这个值具体等于多少? 查阅资料后发现算法如下 W ...
- 云计算与大数据实验:Hbase shell操作用户表
[实验目的] 1)了解hbase服务 2)学会hbase shell命令操作用户表 [实验原理] HBase是一个分布式的.面向列的开源数据库,它利用Hadoop HDFS作为其文件存储系统,利用Ha ...
随机推荐
- 从支付宝SDK的支付流程理解什么是公钥和私钥,什么是加密和数字签名
------------------- 这是自己总结: 支付宝SDK支付用到的公钥与私钥整理如下: 1.商户应用公钥 2.商户应用私钥 3.支付宝公钥 4.支付宝私钥 商户应用的公钥与私钥生 ...
- 【MongoDB学习之六】MongoDB集群
环境 MongoDB 4.0 CentOS 6.5_x64 一.主从复制-Master-Slave这种模式已不再推荐使用了. 二.副本集-Replica Set(用的多)副本集其实一种互为主从的关系, ...
- javascript中var、let、const的区别
这几天修改别人的js,发现声明变量有的用var,有的用let,那它们有什么区别呢? javascript中声明变量的方式有:var.let.const 1.var (1)作用域: 整个函数范围内,或者 ...
- Spring Boot启动时出现WARN:No MyBatis mapper was found in
今天发现spring-boot继承mybatis启动时老是出现WARN: org.mybatis.spring.mapper.ClassPathMapperScanner - No MyBatis m ...
- jdk安装配置(不适合新人,个人随笔)
jdk下载:https://www.oracle.com/technetwork/java/javase/downloads/index.html 按个人喜好下载相应版本,一般比最新的低一个版本 下载 ...
- 十分钟读懂JavaScript原型和原型链
原型(prototype)这个词来自拉丁文的词proto,意谓“最初的”,意义是形式或模型.在JavaScript中,原型的探索也有很多有趣的地方,接下来跟随我的脚步去看看吧. 原型对象释义 每一个构 ...
- PowerDNS + PowerDNS-Admin
一.基础配置 1.1 环境说明 Centos 7.5.1804 PDNS MariaDB 1.2 关闭防火墙和 selinux setenforce sed -i 's/SELINUX=enforci ...
- 【手写代码】快速计算数字x有多少个二进制1
#include<bits/stdc++.h> #include<vector> using namespace std; int f1(int x) { ; ) { )==) ...
- Redis解决“重试次数”场景的实现思路
很多地方都要用到重试次数限制,不然就会被暴力破解.比如登录密码. 下面不是完整代码,只是伪代码,提供一个思路. 第一种(先声明,这样写有个bug) import java.text.MessageFo ...
- 通过excel表格分析学生成绩
题目要求: 分析文件’课程成绩.xlsx’,至少要完成内容:分析1)每年不同班级平均成绩情况.2)不同年份总体平均成绩情况.3)不同性别学生成绩情况,并分别用合适的图表展示出三个内容的分析结果. 废话 ...