HBase的命令行工具,最简单的接口,适合HBase管理使用,可以使用shell命令来查询HBase中数据的详细情况。安装完HBase之后,启动hadoop集群(利用hdfs存储),启动zookeeper,使用start-hbase.sh命令开启hbase服务,最后在shell中执行hbase shell就可以进入命令行界面。

  habse shell的help对语法的介绍很全,hbase shell的操作分为10类,本文只介绍前4类常用的,分别是:gerneral,ddl,namespace,dml。

  1. Gerneral

  status:查询当前服务器状态

  Version:查看当前版本

  Whoami:查询当前hbase用户

  Table_help:表的引用,通过获取一张表的引用来对这张表进行添加删除数据等等操作,现在不推荐使用。

  2. DDL

  Create:创建一个表

  ###创建一个表名为qianfeng,cf为列族

  create ‘qianfeng',‘cf'

  list:列出HBase的所有表

  disable:禁用一张表

  ##禁用表‘qianfeng’

  disable ‘qianfeng’

  is_disabled:表是否被禁用

  ##验证表‘qianfeng’是否被禁用

  is_disabled ‘qianfeng’

  enable: 启用一张表

  ##启用表‘qianfeng’

  enable ‘qianfeng’

  is_enabled:表是否被启用

  ##验证表‘qianfeng’是否被启用

  is_enabled ‘qianfeng’

  describe:查看表的描述

  ##查看‘qianfeng’表的描述信息

  describe ‘qianfeng’

  alter:修改表的结构

  ##给表‘qianfeng’加入一个列族‘cf1’

  alter ‘qianfeng’,‘cf1’

  exists:验证表是否存在

  ##验证表‘qianfeng’是否存在

  exists ‘qianfeng’

  drop:删除表,表需先禁用,然后才能删除

  ##删除表‘qianfeng’

  disable ‘qianfeng’

  drop ‘qianfeng’

  disable_all:禁用多个表

  drop_all:删除多个表,表需先禁用,然后才能删除

  3. Namespace

  create_namespace:创建命名空间,相当于关系型数据库里创建一个数据库

  ##创建一个命名空间名为‘qf’,并添加属性

  create_namespace ‘qf’, {‘PROPERTY_NAME'=>‘PROPERTY_VALUE'}

  alter_namespace:修改,添加,删除命名空间的属性

  ##设置命名空间qf的属性

  alter_namespace ‘qf', {METHOD => ‘set', ‘PROPERTY_NAME' => ‘PROPERTY_VALUE'}

  ##删除命名空间qf的属性

  alter_namespace ‘qf', {METHOD => ‘unset', NAME=>‘PROPERTY_NAME'}

  describe_namespace:获取命名空间的描述

  ##获取命名空间‘qf’的描述信息

  describe_namespace ‘qf’

  drop_namespace:删除命名空间

  ##删除命名空间‘qf’

  drop_namespace ‘qf’

  list_namespace:查看所有命名空间

  list_namespace_tables:查看命名空间下的所有表

  ##查看命名空间‘ns1’下的所有表

  list_namespace_tables‘ns1’

  4. DML

  先在命名空间‘qianfeng’(如果没有这个命名空间要先创建此命名空间)下创建一张表test,列族为‘cf’作为测试用

  create ‘qianfeng:test’,‘cf’

  put:添加cell(数据)

  # #向命名空间qianfeng下表test的rowkey为r1的列族下添加数据

  put ‘qianfeng:test',‘r1',‘cf:uname',‘zhangsan'

  scan:扫描全表

  scan ‘qianfeng:test’

  get:得到某一列或cell的数据。

  ##向命名空间qianfeng下表test的rowkey为r1的列族下添加数据

  put ‘qianfeng:test',‘r1',‘cf:age',‘23'

  ##获取列族cf下rowkey为r1的所有数据

  get ‘qianfeng:test’,‘r1’

  ##获取列族cf下rowkey为r1,列名为uname的数据(获取一个cell)

  get ‘qianfeng:test',‘r1',‘cf:uname'

  truncate:清空表,不用disable (只是清空数据)

  ##清空表‘qianfeng:test’

  truncate ‘qianfeng:test’

  查看‘qianfeng’下所有的表

  以上为hbase shell脚本的基础操作,都应该熟练掌握。在掌握hbase shell脚本的基础上学习hbase 的java api,会显得事半功倍。

大数据学习路线分享-Hbase shell的基本操作完整流程的更多相关文章

  1. 大数据学习系列之—HBASE

    hadoop生态系统 zookeeper负责协调 hbase必须依赖zookeeper flume 日志工具 sqoop 负责 hdfs dbms 数据转换 数据到关系型数据库转换 大数据学习群119 ...

  2. 大数据学习路线,来qun里分享干货,

    一.Linux lucene: 全文检索引擎的架构 solr: 基于lucene的全文搜索服务器,实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面. 推荐一个大数据学习群 ...

  3. 大数据学习路线:Zookeeper集群管理与选举

    大数据技术的学习,逐渐成为很多程序员的必修课,因为趋势也是因为自己的职业生涯.在各个技术社区分享交流成为很多人学习的方式,今天很荣幸给我们分享一些大数据基础知识,大家可以一起学习! 1.集群机器监控 ...

  4. 大数据学习系列之三 ----- HBase Java Api 图文详解

    版权声明: 作者:虚无境 博客园出处:http://www.cnblogs.com/xuwujing CSDN出处:http://blog.csdn.net/qazwsxpcm 个人博客出处:http ...

  5. 大数据学习路线copy自淘宝

    一.hadoop视频学习(入门到精通) 二.数据挖掘(入门到精通) 三.Hadoop学习路线 1.开发前期准备 首先,如果你没有Java和Linux基础,建议你先简单学一下这两门课程,此宝贝里面都为你 ...

  6. 大数据学习路线之linux系统基础搭建

    学习大数据是必须掌握一定Linux知识的,工欲善其事,必先利其器.在学习之前,首先需要搭建Linux系统,本节将讲解VMware Workstation的安装和CentOS 7系统的安装. 1.2.1 ...

  7. 大数据学习路线:Hadoop集群同步技术分享

    今天给大家带来的技术分享是——Hadoop集群同步. 一.同步方式 选择一个机器,作为时间服务器(这里选择hadoop01),所有的机器与这台集群时间进行定时的同步,比如,每隔十分钟,同步一次时间. ...

  8. 大数据学习(1)-shell脚本注意事项

    1.变量=值 (例如STR=abc)  不用加引号,但此时空格不再是空格字符,特殊字符可用于转义 2.等号两侧不能有空格 3.变量名称一般习惯为大写 4.双引号和单引号有区别,双引号仅将空格脱意,单引 ...

  9. 大数据学习系列之九---- Hive整合Spark和HBase以及相关测试

    前言 在之前的大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 中介绍了集群的环境搭建,但是在使用hive进行数据查询的时候会非常的慢,因为h ...

随机推荐

  1. 可快速生成增删curd改查功能的插件

    仿造Django中的admin自己实现增删改查.模糊搜索.批量操作.条件筛选.popup功能的插件 1.创建组件 首先创建一个app,这里取名为stark,在settings.py中将其进行注册 IN ...

  2. Python3学习之路~5.6 shutil & zipfile & tarfile模块

    高级的 文件.文件夹.压缩包 处理模块 shutil.copyfileobj(fsrc, fdst[, length])#将文件内容拷贝到另一个文件中,可以部分内容 shutil.copyfile(s ...

  3. oracle常用分析函数 over(partition by xxx order by xxx)

    --over order by 连续累加的意思,把by后面相同的字段,一个组组累加起来SELECT id_,name_,proc_def_id_, count(*) over(order by nam ...

  4. Java中的boxing和unboxing(转)

    测试代码: System.out.println(0L == 0);//true System.out.println(((Long)0L).equals(0));//false Integer i1 ...

  5. 桌面图标未读消息(小米,sony,三星手机)

    新消息来了,在桌面的Laucher图标上显示新消息数 /** * 应用桌面图标未读消息显示工具类 * 只支持 小米,三星和索尼 */ public class BadgeUtil { final st ...

  6. Py-numpy的随机函数【转载】

    转自:https://blog.csdn.net/u012149181/article/details/78913167 1. numpy.random.rand() numpy.random.ran ...

  7. MySQL数据类型--与MySQL零距离接触2-14MySQL默认约束

    创建一个数据表,多加一个字段sex性别,1男,2女,3保密.默认的是3,也就是保密. 但是查看表的时候,会将默认值3赋予这个字段.

  8. GoWeb-Gin 文件上载

    前些日子,我们Node.JS了一把. 如今,我们还是回到我们伟大的GO来吧 今天,带领大家继续Golang的啦,而且是个上传文件的例子 先给大家看结果 1. 如果是windows端,你需要安装post ...

  9. memory consistency

    目前的计算机系统中,都是shared memory结构,提供统一的控制接口给软件, shared memory结构中,为了memory correctness,可以将问题分为:memory consi ...

  10. uvm设计分析——factory

    uvm的factory机制,通过实例一个static类型default factory,并且通过宏将所有例化extend出来的object,component register到该factory的内部 ...