千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 千锋大数据培训分享-Hbase shell的基本操作完整流程

千锋大数据培训分享-Hbase shell的基本操作完整流程

来源:千锋教育
发布人:千锋大数据
时间: 2018-09-10 17:20:00 1536571200

  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:查询当前服务器状态

千锋北京校区分享-Hbase shell的基本操作完整流程335

  Version:查看当前版本

千锋北京校区分享-Hbase shell的基本操作完整流程354

  Whoami:查询当前hbase用户

千锋北京校区分享-Hbase shell的基本操作完整流程377

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

  2. DDL

  Create:创建一个表

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

  create ‘qianfeng',‘cf'

千锋北京校区分享-Hbase shell的基本操作完整流程510

  list:列出HBase的所有表

千锋北京校区分享-Hbase shell的基本操作完整流程531

  disable:禁用一张表

  ##禁用表‘qianfeng’

  disable ‘qianfeng’

  is_disabled:表是否被禁用

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

  is_disabled ‘qianfeng’

千锋北京校区分享-Hbase shell的基本操作完整流程657

  enable: 启用一张表

  ##启用表‘qianfeng’

  enable ‘qianfeng’

  is_enabled:表是否被启用

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

  is_enabled ‘qianfeng’

千锋北京校区分享-Hbase shell的基本操作完整流程780

  describe:查看表的描述

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

  describe ‘qianfeng’

千锋北京校区分享-Hbase shell的基本操作完整流程845

  alter:修改表的结构

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

  alter ‘qianfeng’,‘cf1’

千锋北京校区分享-Hbase shell的基本操作完整流程915

  exists:验证表是否存在

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

  exists ‘qianfeng’

千锋北京校区分享-Hbase shell的基本操作完整流程976

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

  ##删除表‘qianfeng’

  disable ‘qianfeng’

  drop ‘qianfeng’

千锋北京校区分享-Hbase shell的基本操作完整流程1059

  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’

千锋北京校区分享-Hbase shell的基本操作完整流程1545

  drop_namespace:删除命名空间

  ##删除命名空间‘qf’

  drop_namespace ‘qf’

  list_namespace:查看所有命名空间

千锋北京校区分享-Hbase shell的基本操作完整流程1634

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

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

  list_namespace_tables‘ns1’

千锋北京校区分享-Hbase shell的基本操作完整流程1722

  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’

千锋北京校区分享-Hbase shell的基本操作完整流程1970

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

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

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

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

  get ‘qianfeng:test’,‘r1’

千锋北京校区分享-Hbase shell的基本操作完整流程2129

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

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

千锋北京校区分享-Hbase shell的基本操作完整流程2212

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

  ##清空表‘qianfeng:test’

  truncate ‘qianfeng:test’

千锋北京校区分享-Hbase shell的基本操作完整流程2298

  查看‘qianfeng’下所有的表

千锋北京校区分享-Hbase shell的基本操作完整流程2320

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

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT