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常用操作命令的更多相关文章

  1. 【转载】Linux中常用操作命令

    说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...

  2. Git常用操作命令与图解

    Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...

  3. svn 常用操作命令

    svn 常用操作命令 检出 svn checkout http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 svn checkout svn://路径(目录或文件 ...

  4. MongoDB(1):常用操作命令大全

    MongoDB常用操作命令大全(转) http://www.jb51.net/article/48217.htm 成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操 ...

  5. hadoop常用操作命令

    #############centos6.8IP常用操作命令#######################DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED ...

  6. Hbase常用操作记录

    Hbase常用操作记录 Hbase 创建表 查看表结构 修改表结构 删除表 创建表 语法:create <table>, {NAME => <family>, VERSI ...

  7. 2018.4.23 git常用操作命令收集(转)

    Git常用操作命令收集: 1. 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v ...

  8. Hbase常用操作(增删改查)

    Hbase常用操作(增删改查) [日期:2014-01-03] 来源:Linux社区  作者:net19880504 [字体:大 中 小]     运行Eclipse,创建一个新的Java工程“HBa ...

  9. Storm常用操作命令及WordCount

    Storm常用操作命令 1.任务提交命令:storm jar [jar路径] [拓扑包名.拓扑类名] [拓扑名称] storm jar /export/servers/storm/examples/s ...

随机推荐

  1. Singer 学习十三 发现模式

    发现模式 发现模式提供了一种描述tap 支持数据流的方式,使用了json schema 做为描述数据的结构以及每个数据流的 类型,发现模式的实现依赖tap 的数据源,有些taps 将硬编码每个流的模式 ...

  2. 使用 Prometheus 监控minio 性能指标信息&&docker-compose 方式运行

    minio server 已经支持Prometheus 了,对于系统的运行参数我们可以方便.实时的查看 运行使用docker-compose docker-compose 文件 version: &q ...

  3. UML异步怎么表达

    直接看结果 第一虚框和第二虚框是异步的.m1 和m2 没有任何先后关系. 第一虚框和第二虚框是异步的,两者没有任何先后关系.m3和m4是有先后关系的.m3()比m4()先执行.同样m5()和m6().

  4. Unity Blog 学习

    The Profiler window https://unity3d.com/cn/learn/tutorials/temas/performance-optimization/profiler-w ...

  5. js 时间戳和日期互转

    // 获取当前时间戳(以s为单位) var timestamp = Date.parse(new Date()); timestamp = timestamp / 1000; //当前时间戳为:140 ...

  6. Hive DDL及DML操作

    一.修改表 增加/删除分区 语法结构 ALTER TABLE table_name ADD [IF NOT EXISTS] partition_spec [ LOCATION 'location1' ...

  7. Ambari对HDP的版本支持列表

    截至目前最新的Ambari版本为2.6: https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.6.3/bk_support-matrices/co ...

  8. Flume和Kafka整合安装

    版本号: RedHat6.5   JDK1.8    flume-1.6.0   kafka_2.11-0.8.2.1 1.flume安装 RedHat6.5安装单机flume1.6:http://b ...

  9. 阿里巴巴Java编码规范,来测测你能得多少分

    今年年初,<阿里巴巴Java开发手册>正式发布,阿里官方Java代码规范标准首次对外公开.手册发布之后在业界.学术界都获得了广泛的关注,仅微博浏览量就突破千万,下载访问量超过40万,多家媒 ...

  10. 分布式超级账本Hyperledger里zookeeper的作用

    Zookeeper是一种在分布式系统中被广泛用来作为:分布式状态管理.分布式协调管理.分布式配置管理.和分布式锁服务的集群.kafka增加和减少服务器都会在Zookeeper节点上触发相应的事件kaf ...