HBase操作命令总结
1,如何运行HBase
1,如何查找hbase的安装目录
whereis用来查找程序的安装目录、帮助文档等等,如下:
whereis hbase
结果如下,目录下一级包含bin的就是hbase的安装目录。
[hadoop@cdh002 bin]$ whereis hbase
hbase: /usr/bin/hbase /etc/hbase /usr/lib/hbase
2,如何运行hbase命令
首先切换到hbase的安装目录
cd /usr/lib/hbase/bin/
执行hbase shell
hbase shell
3 如何查找当前用户
使用whoami命令可查看当前用户
hbase(main):001:0> whoami
hadoop (auth:SIMPLE)
groups: hadoop
4 HBase如何删除字符
需要同时按住Ctrl + Backspace 才能删除之前输入的字符。
2,如何操作HBase表结构
1,查看有哪些表
list
2,如何创建HBase表
创建HBase表不需要指定列,只需要指定列簇就行了
语法:create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}
比如创建一个表,保存用户的个人信息infos和工作经历jobs
(1)
hbase(main):007:0> create "user",{ NAME => "infos",VERSIONS => 1},{NAME => "jobs"}
0 row(s) in 4.6440 seconds
=> Hbase::Table - user
注意:NAME要大写,否则报错提示未定义的本地变量
NameError: undefined local variable or method `name' for #<Object:0x79972a95>
(2)简单的写法:表名,列簇
create "user","infos","jobs"
3,如何查看HBase的表结构
desc "user" 或者 describe "user"
hbase(main):008:0> describe "user"
Table user is ENABLED
user
COLUMN FAMILIES DESCRIPTION
{NAME => 'infos', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0'
, VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_C
ELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}
{NAME => 'jobs', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0',
VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CE
LLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}
2 row(s) in 0.0400 seconds
表结构信息显示有两个列簇
4,如何修改HBase的表结构
(1)首先要禁用表
disable "user"
(2)
删除字段指定METHOD => "delete"
因为有3台机器,因此更新了3台机器 Updating all regions with the new schema
hbase(main):002:0> alter "user",{NAME => "infos"},{NAME => "jobs",METHOD => "delete"},{NAME => "educations"}
Updating all regions with the new schema...
1/1 regions updated.
Done.
Updating all regions with the new schema...
1/1 regions updated.
Done.
Updating all regions with the new schema...
1/1 regions updated.
Done.
0 row(s) in 8.0190 seconds
(3)然后启用表
enable 'user'
5,如何删除HBase表
要先禁用表
hbase(main):004:0> disable "user"
0 row(s) in 0.0410 seconds
再drop表
hbase(main):005:0> drop "user"
0 row(s) in 1.3550 seconds
3,如何操作HBase表数据
1,hbase如何插入数据
语法:put <table>,<rowkey>,<family:column>,<value>
put 表名,列簇:列,值
hbase(main):020:0> put "user","rowno001","infos:name","zhangsan"
0 row(s) in 0.1400 seconds
hbase(main):021:0> put "user","rowno001","infos:age","18"
0 row(s) in 0.0100 seconds
注意:
(1)一次只能插入一列的值;同一行的多列,要分开列插入
2,查询记录
(1)查看所有记录
scan "user"
数据量很大时,千万不要用这个命令
(2) 查找前2条数据
hbase(main):028:0> scan "user",{LIMIT => 2}
ROW COLUMN+CELL
rowno001 column=infos:age, timestamp=1528170157838, value=18
rowno001 column=infos:name, timestamp=1528170127697, value=zhangsan
rowno002 column=infos:age, timestamp=1528170336721, value=19
(3)查找某范围内的记录
hbase(main):032:0> scan "user",{ STARTROW => "rowno002", ENDROW => "rowno004"}
ROW COLUMN+CELL
rowno002 column=infos:age, timestamp=1528170336721, value=19
rowno003 column=infos:name, timestamp=1528171140729, value=xiaosan
注意:ENDROW是不包含的。
(4)查找某一行记录
hbase(main):034:0> get "user","rowno001"
COLUMN CELL
infos:age timestamp=1528170157838, value=18
infos:name timestamp=1528170127697, value=zhangsan
2 row(s) in 0.0250 seconds
可以指定列名
hbase(main):035:0> get "user","rowno001","infos:name"
COLUMN CELL
infos:name timestamp=1528170127697, value=zhangsan
3,统计记录
(1)统计总共多少行
hbase(main):033:0> count "user"
3 row(s) in 0.0290 seconds
=> 3
4,修改一条数据
和添加数据的命令是一致的,修改一下值就行,会直接覆盖
put "user","rowno003","infos:name","san"
5,删除数据
删除某一列:
delete "user","rowno003","infos:name"
删除某一行:
注意删除某一行,用的是deleteall
deleteall "user","rowno002"
HBase操作命令总结的更多相关文章
- HBase框架基础(一)
* HBase框架基础(一) 官方网址:http://hbase.apache.org/ * HBase是什么妖怪? 要解释HBase,我们就先说一说经常接触到的RDBMS,即关系型数据库: ** m ...
- HBase常用操作命令
HBase常用操作命令 1.进入HBase脚本客户端 #hbase shell #进入HBase脚本客户端 > whoami #查看当前登录用户 > status ...
- HBase shell 操作命令记录
创建表:create 'tablename','column cluseter:column1,column2...columnn','column cluster:column1,column2.. ...
- HBase Shell 常用命令及例子
下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', '列名称1','列名称2','列名称N ...
- Hbase Shell常用命令
hbase shell常用的操作命令有create,describe,disable,drop,list,scan,put,get,delete,deleteall,count,status等,通过h ...
- 【转】HBase 超详细介绍
---恢复内容开始--- http://blog.csdn.net/frankiewang008/article/details/41965543 1-HBase的安装 HBase是什么? HBase ...
- (转)Hbase shell 常用命令(1)
Hbase shell 常用命令(1) link:http://blog.csdn.net/scutshuxue/article/details/6988348 下面我们看看HBase Shell的一 ...
- hbase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
- HBase(八): 表结构设计优化
在 HBase(六): HBase体系结构剖析(上) 介绍过,Hbase创建表时,只需指定表名和至少一个列族,基于HBase表结构的设计优化主要是基于列族级别的属性配置,如下图: 目录: BLOOMF ...
随机推荐
- win10连接无线网,开启移动热点,手机连接它手机一直显示获取ip地址中。
*必须要有无线网卡才能设置WIFI首先打开电脑,选中“计算机”或者“我的电脑”,右击进入“管理”选项“.打开“计算机管理”窗口之后,在左栏菜单选项中找到“服务和应用程序”下的“服务”选项,如图点击进入 ...
- MEF 基础简介 三
MEF导出类的方法和属性 首先来说导出属性,因为这个比较简单,和导出类差不多,先来看看代码,主要看我加注释的地方,MusicBook.cs中的代码如下: using System; using Sys ...
- PHP中的Define和Const区别
我们经常把不经常变的值定义成常量,常量一般用全部大写来表示,前面不加美元符号,那么define和const有什么区别呢? 常量是一个简单的标识符.在脚本执行期间该值不能改变(除了所谓的魔术常量,他们其 ...
- Apollo配置中心源码分析
Apollo配置中心源码分析 1. apollo的核心代码分享 SpringApplication启动的关键步骤 在SpringApplication中,会加载所有实现了Init方法的类 protec ...
- 安装PackageControl
安装PackageControl 1,到PackageControl官网,查找到相应sublime text的版本安装信息, sublime text 3: import urllib.request ...
- Laravel5中通过SimpleQrCode扩展包生成二维码实例
Simple Qrcode是基于强大的Bacon/BaconQrCode库开发的针对Laravel框架的封装版本,用于在Laravel中为生成二维码提供接口. 安装SimpleQrCode扩展包 在项 ...
- Spring boot入门(一):快速搭建Spring boot项目
(一)Spring boot介绍 本部分摘自:https://www.zhihu.com/question/64671972/answer/223383505 Spring Boot是由Pivotal ...
- SAP MM MI01事务代码里的批次确定
SAP MM MI01事务代码里的批次确定 1 – 批次管理启用之后果 一个物料如果启用了批次管理,那么库存管理以及盘点等诸多事务里都需要在批次的层次上进行. 货物移动的时候,需要在界面上指定相关货物 ...
- 诗人般的机器学习,ML工作原理大揭秘
诗人般的机器学习,ML工作原理大揭秘 https://mp.weixin.qq.com/s/7N96aPAM_M6t0rV0yMLKbg 选自arXiv 作者:Cassie Kozyrkov 机器之心 ...
- Python装饰器、内置函数之金兰契友
装饰器:装饰器的实质就是一个闭包,而闭包又是嵌套函数的一种.所以也可以理解装饰器是一种特殊的函数.因为程序一般都遵守开放封闭原则,软件在设计初期不可能把所有情况都想到,所以一般软件都支持功能上的扩展, ...