Hbase笔记3 shell命令

1.HBase的shell就和我们用Mysql的终端是一个意思,比如我们安装好Mysql,配置好了环境变量,命令行中输入mysql -uroot -p密码 就能直接进入mysql
的终端,在这里HBase也是一个意思。

如何进入HBase的终端呢,使用命令 hbase shell 进入命令行模式。在这里,我们能对HBase的操作是很有限的,在PPT19中,基本就包含了他百分之八九十的操作。
没有复杂的查询,因为复杂的查询不是HBase的强项,它能够进行海量数据的简单查询。

PPT19也有展示
创建表 create ‘表名称‘, ‘列族名称1‘,‘列族名称2‘,‘列族名称N‘
添加记录 put ‘表名称‘, ‘行名称‘, ‘列名称:‘, ‘值‘(如果不写时间戳,默认当前时间)
查看记录 get ‘表名称‘, ‘行键名称‘
查看表中的记录总数 count ‘表名称‘
删除记录 delete ‘表名‘ ,‘行键名称‘ , ‘列名称‘(删除指定行健所对应的那一整列)
删除一张表 先要屏蔽该表,才能对该表进行删除,第一步 disable ‘表名称‘ 第二步 drop ‘表名称‘
查看所有记录 scan "表名称" (全表扫描,类似SELECT * FROM 表名)
查看某个表某个列中所有数据 scan "表名称" , {COLUMNS=>‘列族名称:列名称‘}
更新记录 就是重写一遍进行覆盖,还是使用PUT操作

下面举例:
创建表: create ‘user‘,‘user_id‘,‘adress‘,‘info‘
创建表的时候,表名称和列族名称,都需要带引号,表与列族之间、列族与列族之间用逗号隔开,末尾不用分号结尾
查看表: list
list命令: 查看都有什么表,该命令列出了表的名称,没有具体的内容。
查看表具体信息:describe ‘user‘
describe 表名 查看某一个表的具体信息,表名需要用引号括起来。
该命令会显示很多的东西,虽然我们创建表的时候很简单,但是它有很多的默认值,在这里用这条命令,都会给你显示出来。
显示的内容分为左右两部分,左边的标题为DESCRIPTION,这是表的详细信息,右边是ENABLE,显示表是否启用。在左边的
详细信息部分中,最开始是表名称,然后会有很多的大括号,每个大括号中,都是列簇的信息,我们在创建表的时候只指定了列簇的名称,
其他的都没指定,但是他们都是有默认值的,在这里也都显示出来了。如果我们学的深入了,其实在创建表的时候,可以不像上面那么简单,
可以对这些参数进行设置的。
删除表: disabled ‘user‘
drop ‘user‘
插入记录: put ‘user‘,‘zhangyifei‘,‘address:city‘,‘beijing‘
put ‘user‘,‘zhangyifei‘,‘info:age‘,‘22‘
获取记录: get ‘user‘,‘zhangyifei‘
get ‘user‘,‘zhangyifei‘,‘adress‘
更新记录: put ‘user‘,‘zhangyifei‘,‘info:age‘,‘24‘
put ‘user‘,‘zhangyifei‘,‘info:age‘,‘25‘
put ‘user‘,‘zhangyifei‘,‘info:age‘,‘26‘
put ‘user‘,‘zhangyifei‘,‘info:age‘,‘27‘
get ‘user‘,‘zhangyifei‘,‘info:age‘ 验证数据更新成功没有(默认显示最新的值)
获取版本信息 get ‘user‘,‘zhangyifei‘,‘{COLUMN=>‘info:age‘,VERSIONS} 显示的是最新的版本
get ‘user‘,‘zhangyifei‘,‘{COLUMN=>‘info:age‘,VERSIONS=>2} 显示的是最新2个的版本
get ‘user‘,‘zhangyifei‘,‘{COLUMN=>‘info:age‘,VERSIONS=>3} 显示的是最新的3个版本
get ‘user‘,‘zhangyifei‘,‘{COLUMN=>‘info:age‘,VERSIONS=>4} 显示的是最新的4个版本,却没有显示4个版本,只显示了3个,我们之前
确实插入了4次啊(24、25、26、27),原因是:我们用describe命令
查看表的详细信息的时候,在那个大括号中,是对列簇信息的描述,
其中有一项,就是版本数(VERSIONS=>‘3‘),我们在创建表的时候没有指定,它默认
是3.可以改成4,但是是在创建表的时候该。具体该怎么写呢,其实就是把
description下面的东西复制,然后前面加个create就行。
create ‘user‘,{NAME=>‘info‘,VERSIONS=>‘5‘},{NAME=>,VERSION=>},{}...

获取单元格数据的某个版本数据
get ‘users‘,‘xiaoming‘,{COLUMN=>‘info:age‘,TIMESTAMP=>1364874937056}
这里需要用知道具体的时间戳,时间戳如果不指定,就是当时的时间,但是我们以后很难知道当时时间是什么,
所以我们可以指定时间戳到底是什么。
全表扫描: scan ‘user‘

get ‘users‘,‘xiaoming‘,{COLUMN=>‘info:age‘,VERSION=>4}
get ‘users‘,‘xiaoming‘,{COLUMN=>‘info:age‘,VERSION=>1384092294281} 取某一条具体的值,也就是说,表名+列族:列名+时间戳 确定某一个具体的值
时间戳如果在插入的时候不指定,他是按当前时间来算的,那么再以后的查找的时候,我们不知道当时插入时候的当前时间,该怎么办。时间戳其实是可以在插入数据的时候自己指定的。
版本数在创建表的时候,需要指定。
scan 表 扫描整张表

get 命令是对某一行进行查找,查找时需要制定表名和行健
scan命令是对表进行全表扫描,查找时指定表名即可

删除某一列 delete ‘users‘,‘xiaoming‘,‘info:age‘ 我们在删除列的时候会不会影响其他的记录,肯定不会,因为我们这个命令里面指明了行健xiaoming
删除某一条记录(行) deleteall ‘user‘,‘xiaoming‘ (deteleall 表名,行健)
查看表的记录(行)数 count ‘user‘
清空表数据: truncate ‘user‘ //实际上是执行3步操作,disabled、drop、create ,此时表示存在的,但是里面没数据

同一个表中的,两条记录,他们的列族是一样的,但是列族中的列可能是不一样的。所以可以这样说,列属于列族,同样也属于记录,即使我们有两行记录,都在
同一个列族下有一个同名的列,我觉得他们也没有什么关系,我们delete某一条记录的列,另一条记录是不受影响的。

时间: 2024-10-27 12:48:13

Hbase笔记3 shell命令的相关文章

Linux学习笔记(三)-Shell命令机制

切换命令行:ctrl+alt+f1-f6 切换到图形界面:ctrl+alt+f7 ls-list(win下的dir) 白色:普通文件 蓝色:目录文件 绿色:可执行文件 执行步骤: 输入ls 在相关目录下去找命令程序(path,环境变量:/etc/environment),whereis+命令:查找该命令的可执行文件的位置 基于shell的基本类库Bash 底层的交互 GNU,FSF,Bash,Coreutils 来自为知笔记(Wiz)

hbase常用的shell命令例子

1.hbase shell    进入hbase [[email protected] ~]$ hbase shell HBase Shell; enter 'help<RETURN>' for list of supported commands. Type "exit<RETURN>" to leave the HBase Shell Version 0.94.16, r1557241, Fri Jan 10 20:10:24 UTC 2014 2.whoa

Linux Shell 学习笔记 二 Shell 命令行 pwd cd

今天开始Linx shell的第一篇 今天介绍 pwd和cd的使用方法. pwd的意思是“print working Directory”,显示用当前所在位置. pwd还有其他可用的参数 -L(大写),-P(大写) -L是显示当前用户的位置 和pwd相同 -P 显示用户当前物理位置 和pwd相同 其实直接用pwd就可以 cd 可以简单的认为目录切换 比如目前在/root/桌面,直接可以切换到/root/桌面/tools目录夹位置 和windows 下的cd命令类似 cd还有其他不同的用法 cd 

Linux Shell 学习笔记 二 Shell 命令行 cat

cat 命令用于文本文件输入输出和显示 cat -E  在每一行最后输出带$符号 cat -n 输出的内容显示行号

Linux Shell 学习笔记 二 Shell 命令行 ls

ls 是查看目录及目录里的文件的命令 接下来我们看这个命令的用法 ls ls 的语法主要有 ls     查看目录内容 ls -l 查看文件夹详细信息 ls -a 查看隐藏文件 ls -A 查看隐藏文件,但不显示"."和".."目录信息 ls -d 将目录象文件相同显现,而不是显现其下的文件 ls -h 显示文件大小单位(通常和其他参数一起用) ls -R 递归显示目录和子目录的内容 ls -S 文件从大到小排列 也可以和其他参数一起使用 ls -t 文件按创建时间

Hbase学习笔记之一 | Hbase Shell命令篇

最近在XX项目的测试过程中,接触到一些HBase的东西,希望能站在测试的角度,把过程记录下来,期望对快速了解它有点帮助.作为一个初次接触它的人来说,需要迫切掌握其中基本的概念,这里就不赘述了. HBase Shell是HBase提供的便捷的访问方式,首先你需要搭建HBase的环境,可以参考 http://hbase.apache.org/book/quickstart.html 和http://hbase.apache.org/book/notsoquick.html. 1.进入Hbase Sh

HBase shell 命令。

HBase shell 命令. 进入hbase shell console$HBASE_HOME/bin/hbase shell如果有kerberos认证,需要事先使用相应的keytab进行一下认证(使用kinit命令),认证成功之后再使用hbase shell进入可以使用whoami命令可查看当前用户 hbase(main)> whoami 表的管理1)查看有哪些表 hbase(main)> list 2)创建表 # 语法:create <table>, {NAME =>

HBase的Shell命令

1.HBase提供了一个shell的终端给用户交互 2.HBase Shell的DDL操作 (1)先进入HBase的 Shell命令行,即HBASE_HOME/bin/hbase shell …… >quit 创建表: >create 'users','user_id','address','info' //表users,有三个列族user_id,address,info 列出全部表: >list 得到表的描述: >describe 'users' 创建表: >create

bb_black_学习笔记&mdash;&mdash;(4)闪烁LED之shell命令

上一篇笔记在终端输入shell命令实现了LED灯的点亮与熄灭,作为初学者,已经兴奋了一阵,因为终于有了零的突破.手动点亮LED总会比较麻烦,还是得通过程序让它自己去点亮与熄灭,这样才更好玩.这篇笔记里,笔者通过学习shell脚本,实现LED的闪烁,这样才好玩.本篇笔记还是先从现象看起,然后在分析其实现原理. 第一步:实现LED灯闪烁 1.先来个简单的shell脚本,了解一下shell脚本的使用流程.下图为创建一个名为hello_sh的shell脚本编辑执行的过程. 几点说明: (1)shell脚