• 大数据学习路线分享-Hbase shell的基本操作完整流程


    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,会显得事半功倍。

  • 相关阅读:
    2.NET Core设定数据库种子
    1.ASP.NET Core 中向 Razor Pages 应用添加模型
    获取文件夹目录下的文件信息
    dataGridView读写文本
    C# winform 启动外部程序
    netcore访问本地磁盘
    c#利用定时器自动备份数据库(mysql)
    c#mysql数据库备份还原
    Linux之旅(二)
    Linux之旅
  • 原文地址:https://www.cnblogs.com/coffees/p/9967744.html
Copyright © 2020-2023  润新知