HBase总结(二十)HBase经常使用shell命令具体说明
- 进入hbase shell console
$HBASE_HOME/bin/hbase shell
假设有kerberos认证,须要事先使用对应的keytab进行一下认证(使用kinit命令),认证成功之后再使用hbase shell进入能够使用whoami命令可查看当前用户hbase(main)>
whoami - 表的管理
1)查看有哪些表hbase(main)>
list2)创建表
#
语法:create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}#
比如:创建表t1,有两个family name:f1。f2,且版本号数均为2hbase(main)>
create't1',{NAME
=>'f1',
VERSIONS => 2},{NAME =>'f2',
VERSIONS => 2}3)删除表
分两步:首先disable。然后drop
比如:删除表t1hbase(main)>
disable't1'hbase(main)>
drop't1'4)查看表的结构
#
语法:describe <table>#
比如:查看表t1的结构hbase(main)>
describe't1'5)改动表结构
改动表结构必须先disable#
语法:alter 't1', {NAME => 'f1'}, {NAME => 'f2', METHOD => 'delete'}#
比如:改动表test1的cf的TTL为180天hbase(main)>
disable'test1'hbase(main)>
alter'test1',{NAME=>'body',TTL=>'15552000'},{NAME=>'meta',
TTL=>'15552000'}hbase(main)>
enable'test1' - 权限管理
1)分配权限#
语法 : grant <user> <permissions> <table> <column family> <column qualifier> 參数后面用逗号分隔#
权限用五个字母表示: "RWXCA".#
READ('R'), WRITE('W'), EXEC('X'), CREATE('C'), ADMIN('A')#
比如,给用户‘test'分配对表t1有读写的权限,hbase(main)>
grant'test','RW','t1'2)查看权限
#
语法:user_permission <table>#
比如,查看表t1的权限列表hbase(main)>
user_permission't1'3)收回权限
#
与分配权限类似。语法:revoke <user> <table> <column family> <column qualifier>#
比如。收回test用户在表t1上的权限hbase(main)>
revoke'test','t1' - 表数据的增删改查
1)加入数据#
语法:put <table>,<rowkey>,<family:column>,<value>,<timestamp>#
比如:给表t1的加入一行记录:rowkey是rowkey001,family name:f1,column name:col1。value:value01,timestamp:系统默认hbase(main)>
put't1','rowkey001','f1:col1','value01'使用方法比較单一。2)查询数据
a)查询某行记录#
语法:get <table>,<rowkey>,[<family:column>,....]#
比如:查询表t1,rowkey001中的f1下的col1的值hbase(main)>
get't1','rowkey001',
'f1:col1'#
或者:hbase(main)>
get't1','rowkey001',
{COLUMN=>'f1:col1'}#
查询表t1。rowke002中的f1下的全部列值hbase(main)>
get't1','rowkey001'b)扫描表
#
语法:scan <table>, {COLUMNS => [ <family:column>,.... ], LIMIT => num}#
另外,还能够加入STARTROW、TIMERANGE和FITLER等高级功能#
比如:扫描表t1的前5条数据hbase(main)>
scan't1',{LIMIT=>5}c)查询表中的数据行数
#
语法:count <table>, {INTERVAL => intervalNum, CACHE => cacheNum}#
INTERVAL设置多少行显示一次及相应的rowkey,默认1000;CACHE每次去取的缓存区大小,默认是10。调整该參数可提高查询速度#
比如,查询表t1中的行数。每100条显示一次。缓存区为500hbase(main)>
count't1',
{INTERVAL => 100, CACHE => 500}3)删除数据
a )删除行中的某个列值#
语法:delete <table>, <rowkey>, <family:column> , <timestamp>,必须指定列名#
比如:删除表t1。rowkey001中的f1:col1的数据hbase(main)>
delete't1','rowkey001','f1:col1'注:将删除改行f1:col1列全部版本号的数据
b )删除行#
语法:deleteall <table>, <rowkey>, <family:column> , <timestamp>,能够不指定列名,删除整行数据#
比如:删除表t1,rowk001的数据hbase(main)>
deleteall't1','rowkey001'c)删除表中的全部数据
#
语法: truncate <table>#
其详细过程是:disable table -> drop table -> create table#
比如:删除表t1的全部数据hbase(main)>
truncate't1' - Region管理
1)移动region#
语法:move 'encodeRegionName', 'ServerName'#
encodeRegionName指的regioName后面的编码,ServerName指的是master-status的Region Servers列表#
演示样例hbase(main)>move
'4343995a58be8e5bbc739af1e91cd72d',
'db-41.xxx.xxx.org,60020,1390274516739'2)开启/关闭region
#
语法:balance_switch true|falsehbase(main)>
balance_switch3)手动split
#
语法:split 'regionName', 'splitKey'4)手动触发major compaction
#语法:#Compact
all regions in a table:#hbase>
major_compact 't1'#Compact
an entire region:#hbase>
major_compact 'r1'#Compact
a single column family within a region:#hbase>
major_compact 'r1', 'c1'#Compact
a single column family within a table:#hbase>
major_compact 't1', 'c1' - 配置管理及节点重新启动
1)改动hdfs配置
hdfs配置位置:/etc/hadoop/conf#
同步hdfs配置cat/home/hadoop/slaves|xargs-i
-tscp/etc/hadoop/conf/hdfs-site.xml
hadoop@{}:/etc/hadoop/conf/hdfs-site.xml#关闭:cat/home/hadoop/slaves|xargs-i
-tsshhadoop@{}
"sudo
/home/hadoop/cdh4/hadoop-2.0.0-cdh4.2.1/sbin/hadoop-daemon.sh --config /etc/hadoop/conf stop datanode"#启动:cat/home/hadoop/slaves|xargs-i
-tsshhadoop@{}
"sudo
/home/hadoop/cdh4/hadoop-2.0.0-cdh4.2.1/sbin/hadoop-daemon.sh --config /etc/hadoop/conf start datanode"2)改动hbase配置
hbase配置位置:#
同步hbase配置cat/home/hadoop/hbase/conf/regionservers|xargs-i
-tscp/home/hadoop/hbase/conf/hbase-site.xml
hadoop@{}:/home/hadoop/hbase/conf/hbase-site.xml#
graceful重新启动cd~/hbasebin/graceful_stop.sh
--restart --reload --debug inspurXXX.xxx.xxx.org
HBase总结(二十)HBase经常使用shell命令具体说明的更多相关文章
- Hbase(二)hbase建表
一.建表高级属性 下面几个 shell 命令在 hbase 操作中可以起到很到的作用,且主要体现在建表的过程中,看 下面几个 create 属性 1.bloomfilter 布隆过滤器 默认是 NON ...
- HBase之二:Hbase优化
1. 预先分区 默认情况下,在创建 HBase 表的时候会自动创建一个 Region 分区,当导入数据的时候,所有的 HBase 客户端都向这一个 Region 写数据,直到这个 Region ...
- Android源码分析(十六)----adb shell 命令进行OTA升级
一: 进入shell命令界面 adb shell 二:创建目录/cache/recovery mkdir /cache/recovery 如果系统中已有此目录,则会提示已存在. 三: 修改文件夹权限 ...
- 【HBase】二、HBase实现原理及系统架构
整个Hadoop生态中大量使用了master-slave的主从式架构,如同HDFS中的namenode和datanode,MapReduce中的JobTracker和TaskTracker,YAR ...
- Linux系列教程(二十)——Linux的shell概述以及如何执行脚本
从这篇博客开始,我们将进入Linux的shell脚本的学习,这对于Linux学习爱好者而言是特别重要的一节,也是特别有意思的一节,shell 脚本就像我们知道的Java,php类似的编程语言一样,通过 ...
- 二十四种设计模式:命令模式(Command Pattern)
命令模式(Command Pattern) 介绍将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可取消的操作. 示例有一个Message实体类,某个 ...
- 二十四、MySQL ALTER命令
MySQL ALTER命令 当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令. 开始本章教程前让我们先创建一张表,表名为:testalter_tbl. root@ho ...
- linux系列(二十四):du命令
1.命令格式 du [选项][文件] 2.命令功能 显示每个文件和目录的磁盘使用空间. 3.命令参数 -a或-all 显示目录中个别文件的大小. -b或-bytes 显示目录或文件大小时,以byte为 ...
- 二十九、Helm常用命令
# 创建一个chart范例 helm create HELM-NAME # 检查chart语法 helm lint ./HELM-NAME # 使用默认chart部署到k8s helm install ...
- linux 8 -- 管道组合Shell命令进行系统管理
二十. 通过管道组合Shell命令获取系统运行数据: 1. 输出当前系统中占用内存最多的5条命令: #1) 通过ps命令列出当前主机正在运行的所有进程. #2) 按照第五个字段基于数 ...
随机推荐
- docker 学习手冊-中文版下载
这个PDF算是学习docker的一个小总结,全部文章摘自我在csdn的博客专栏: http://blog.csdn.net/column/details/docker.html 第一章到第八章摘自do ...
- JavaScript实现获取table中某一列的值
JavaScript实现获取table中某一列的值 1.实现源代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ ...
- NHibernate -- HQL
使用NHibernate中的HQL来查询数据. 代码: /// <summary> /// 查找事件 /// </summary> private void btn_Selec ...
- Spring注入静态变量(转)
今天碰到一个问题,我的一个工具类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此就写出了这样的代码: Class Util{ private static XXX xxx; xxx = ...
- 使用tmux [FreeBSDChina Wiki]
使用tmux [FreeBSDChina Wiki] 使用tmux tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权.使用它最直观的好处就是,通过一个 ...
- Androidclient与服务端(jsp)之间json的传输与解析【附效果图附源代码】
近期有个项目须要用到json的传输,之前不是太了解,在网上找了些相关资料,写了一个小小的demo,能够实现基本功能:androidclient发送json到服务端,服务端使用jsp接收,解析后以jso ...
- 用内存流 文件流 资源生成客户端(Delphi开源)
正文:很多木马生成器就是用的内存流和文件流生成客户端的,废话不多说了,代码如下: unit Main; interface usesWindows, Messages, SysUtils, Varia ...
- Spring MVC 中采用注解方式 Action中跳转到另一个Action的写法
Spring MVC 中采用注解方式 Action中跳转到另一个Action的写法 在Action中方法的返回值都是字符串行,一般情况是返回某个JSP,如: return "xx" ...
- Spring MVC 多选框 绑定 Entity 中的 list 属性
问题描述: 有两个类:Record.java 和 User.java,Record中有个attenders属性,是List<User>类型. 我想绑定Record中的attenders.网 ...
- WAMPServer 集成环境
1.下载和安装 1.1下载 下载地址:http://www.wampserver.com/en/.由于官方地址是国外的网站可能下载会有些慢,也可以去第三方网站下载 1.2安装 安装文件如下图: 双击安 ...