HBase常用操作命令
HBase常用操作命令
1.进入HBase脚本客户端
#hbase shell #进入HBase脚本客户端
> whoami #查看当前登录用户
> status #查看HBase节点信息
> version #查看HBase版本
2.查看HBase所有表
> list #查看HBase里面的所有表
> create_namespace 'ns' #创建namespace
> drop_namespace 'ns' #删除namespace
> describe_namespace 'ns' #查看namespace
> list_namespace #列出所有namespace
> create 'ns:tablename', 'cf' #在namespace下创建表
> list_namespace_tables 'ns' #查看namespace下的表
3.表操作
创建表语法 create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}
> create 'tablename','columnfamily' #创建HBase表名和列族
删除表 首先disable,然后drop
> disable 'tablename'
> drop 'tablename'
查看表的结构
--语法:describe <table>
> describe 'tablename'
修改表结构 首先disable,然后enable
--语法:alter 't1', {NAME => 'f1'}, {NAME => 'f2', METHOD => 'delete'}
> disable 'tablename' --修改表tablename的cf的TTL为180天
> alter 'tablename',{NAME=>'body',TTL=>'15552000'},{NAME=>'meta', TTL=>'15552000'}
> enable 'tablename'
HBase创建表设置块大小参数是1kb~16MB
> create 'tablename',{NAME => 'cf' ,BLOCKSIZE =>'16777216'}
4.增删改查
添加数据
-- 语法:put <table>,<rowkey>,<family:column>,<value>,<timestamp>
-- 例如:给表t1的添加一行记录:rowkey是rowkey1,family name:f1,column name:col1,value:value01,timestamp:系统默认
> put 't1','rowkey1','f1:col1','value01'
查询行记录
-- 语法:get <table>,<rowkey>,[<family:column>,....]
-- 例如:查询表t1,rowkey1中的f1下的col1的值
> get 't1','rowkey1', 'f1:col1'
扫描表
-- 语法:scan <table>, {COLUMNS => [ <family:column>,.... ], LIMIT => num}
-- 另外,还可以添加STARTROW、TIMERANGE和FITLER等高级功能
-- 例如:扫描表t1的前5条数据
> scan 't1',{LIMIT=>5}
查询表中的数据行数
-- 语法:count <table>, {INTERVAL => intervalNum, CACHE => cacheNum}
-- INTERVAL设置多少行显示一次及对应的rowkey,默认1000;CACHE每次去取的缓存区大小,默认是10,调整该参数可提高查询速度
-- 例如,查询表t1中的行数,每100条显示一次,缓存区为500
> count 't1', {INTERVAL => 100, CACHE => 500}
删除行中的某个列值
-- 语法:delete <table>, <rowkey>, <family:column> , <timestamp>,必须指定列名
-- 例如:删除表t1,rowkey1中的f1:col1的数据
> delete 't1','rowkey1','f1:col1'
删除行
-- 语法:deleteall <table>, <rowkey>, <family:column> , <timestamp>,可以不指定列名,删除整行数据
-- 例如:删除表t1,rowk001的数据
> deleteall 't1','rowkey1'
删除表中的所有数据
-- 语法: truncate <table>
-- 其具体过程是:disable table -> drop table -> create table
-- 例如:删除表t1的所有数据
> truncate 't1'
5.权限管理
分配权限
-- 语法 : grant <user> <permissions> <table> <column family> <column qualifier> 参数后面用逗号分隔
-- 权限用五个字母表示: "RWXCA".
-- READ('R'), WRITE('W'), EXEC('X'), CREATE('C'), ADMIN('A')
-- 例如,给用户‘test'分配对表t1有读写的权限,
> grant 'test','RW','t1'
查看权限
-- 语法:user_permission <table>
-- 例如,查看表t1的权限列表
> user_permission 't1'
收回权限
-- 与分配权限类似,语法:revoke <user> <table> <column family> <column qualifier>
-- 例如,收回test用户在表t1上的权限
> revoke 'test','t1'
>grant 'admin' 'RW' '@ns' #授权admin用户对 ns下的写权限
>revoke 'admin' '@ns' #回收admin用户对 ns的所有权限
6.Region管理
移动region
-- 语法:move 'encodeRegionName', 'ServerName'
-- encodeRegionName指的regioName后面的编码,ServerName指的是master-status的Region Servers列表
>move '4343995a58be8e5bbc739af1e91cd72d', 'db-41.xxx.xxx.org,60020,1390274516739'
开启/关闭region
-- 语法:balance_switch true|false
> balance_switch
手动split
-- 语法:split 'regionName', 'splitKey'
手动触发major compaction
#语法:
--Compact all regions in a table:
> major_compact 't1'
--Compact an entire region:
> major_compact 'r1'
--Compact a single column family within a region:
> major_compact 'r1', 'c1'
--Compact a single column family within a table:
> major_compact 't1', 'c1'
7.配置管理及节点重启
hdfs配置目录:/etc/hadoop/conf
# 同步hdfs配置
cat /home/hadoop/slaves|xargs -i -t scp /etc/hadoop/conf/hdfs-site.xml hadoop@{ip}:/etc/hadoop/conf/hdfs-site.xml
#关闭
cat /home/hadoop/slaves|xargs -i -t ssh hadoop@{ip} "sudo /data/opt/cloudera/parcels/CDH-5.9.1-1.cdh5.9.1.p0.4/lib/hadoop/sbin/hadoop-daemon.sh --config /etc/hadoop/conf stop datanode"
#启动
cat /home/hadoop/slaves|xargs -i -t ssh hadoop@{ip} "sudo /data/opt/cloudera/parcels/CDH-5.9.1-1.cdh5.9.1.p0.4/lib/hadoop/sbin/hadoop-daemon.sh --config /etc/hadoop/conf start datanode"
修改hbase配置: /etc/hbase/conf
# 同步hbase配置
cat /home/hadoop/hbase/conf/regionservers|xargs -i -t scp /home/hadoop/hbase/conf/hbase-site.xml hadoop@{ip}:/home/hadoop/hbase/conf/hbase-site.xml
#hadoop fs -du /hbase #所有regionserver中所有表大小
#hadoop fs -dus /hbase #当前regionserver中所有表大小
#count ‘tablename′, INTERVAL => 10, CACHE => 1000 #统计表行数
HBase常用操作命令的更多相关文章
- 【转载】Linux中常用操作命令
说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...
- Git常用操作命令与图解
Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...
- svn 常用操作命令
svn 常用操作命令 检出 svn checkout http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 svn checkout svn://路径(目录或文件 ...
- MongoDB(1):常用操作命令大全
MongoDB常用操作命令大全(转) http://www.jb51.net/article/48217.htm 成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操 ...
- hadoop常用操作命令
#############centos6.8IP常用操作命令#######################DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED ...
- Hbase常用操作记录
Hbase常用操作记录 Hbase 创建表 查看表结构 修改表结构 删除表 创建表 语法:create <table>, {NAME => <family>, VERSI ...
- 2018.4.23 git常用操作命令收集(转)
Git常用操作命令收集: 1. 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v ...
- Hbase常用操作(增删改查)
Hbase常用操作(增删改查) [日期:2014-01-03] 来源:Linux社区 作者:net19880504 [字体:大 中 小] 运行Eclipse,创建一个新的Java工程“HBa ...
- Storm常用操作命令及WordCount
Storm常用操作命令 1.任务提交命令:storm jar [jar路径] [拓扑包名.拓扑类名] [拓扑名称] storm jar /export/servers/storm/examples/s ...
随机推荐
- Sql server日期函数用法
SQL日期函数 SQL日期函数中的类型码可以为0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 ,20,21,22,23,24,25,100,101,102,103,104,105 ...
- Python列表生成器
本篇将介绍python生成器,更多内容请参考:python学习指南 前言 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不 ...
- [转]JDK动态代理
代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等.代理类与委托类之间 ...
- kafka 知识点
Replica如何分布 为了尽量做好负载均衡和容错能力,需要将同一个Partition的Replica尽量分散到不同的机器.如果所有的Replica都在同一个Broker上,那一旦该Broker宕机, ...
- python re正则模块
re 正则表达式操作 本模块提供了类似于Perl的正则表达式匹配操作.要匹配的模式和字符串可以是Unicode字符串以及8位字符串. 正则表达式使用反斜杠字符('\')来表示特殊的形式或者来允许使用 ...
- EXT4 超级块介绍(转)
https://blog.csdn.net/sunlei0625/article/details/79011946 The superblock records various information ...
- 运用MQTT-JMeter插件测试MQTT服务器性能
今天我们介绍XMeter团队带来的新版MQTT-JMeter插件,您可以更为方便地添加MQTT连接.发布.订阅取样器,构造组合的应用场景,例如背景连接.多发少收.少发多收,计算消息转发时延等.利用该插 ...
- CentOS7局域网下安装离线Ambari
1 Ambari介绍.安装与应用案例介绍 1.1 Ambari Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目 ...
- mybatis 使用oracle merge into 语句踩坑实录
由于需求涉及oracle的clob类型字段,在mybatis的mapper xml文件中编写merge into语句时总是失败. 附上错误代码 <insert id="mergeInt ...
- SDRAM初识
SDRAM初识 1. 2. 3. 4. SDRAM分为bank地址和行列地址,看bank地址的位宽就可以推断出bank的数量,行列地址信号是集成在了一个信号中,是并行的. 5. 6. SDRAM与主机 ...