首页 > 系统相关 >大数据学习之Hbase shell的基本操作

大数据学习之Hbase shell的基本操作

时间:2023-04-03 10:03:20浏览次数:34  
标签:shell ## namespace qianfeng 命名 qf test 基本操作 Hbase

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

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

1. Gerneral

status:查询当前服务器状态。

Version:查看当前版本

大数据学习之Hbase shell的基本操作 _命名空间

Whoami:查询当前hbase用户

大数据学习之Hbase shell的基本操作 _shell脚本_02

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

2. DDL

Create:创建一个表

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

create 'qianfeng','cf'

大数据学习之Hbase shell的基本操作 _命名空间_03

list:列出HBase的所有表

大数据学习之Hbase shell的基本操作 _shell脚本_04

· disable:禁用一张表

· ##禁用表‘qianfeng’

· disable ‘qianfeng’

· is_disabled:表是否被禁用

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

· is_disabled ‘qianfeng’

大数据学习之Hbase shell的基本操作 _命名空间_05

· enable: 启用一张表

· ##启用表‘qianfeng’

· enable ‘qianfeng’

· is_enabled:表是否被启用

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

· is_enabled ‘qianfeng’

大数据学习之Hbase shell的基本操作 _命名空间_06

· describe:查看表的描述

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

· describe ‘qianfeng’

大数据学习之Hbase shell的基本操作 _命名空间_07

· alter:修改表的结构

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

· alter ‘qianfeng’,’cf1’

大数据学习之Hbase shell的基本操作 _shell脚本_08

· exists:验证表是否存在

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

· exists ‘qianfeng’

大数据学习之Hbase shell的基本操作 _shell脚本_09

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

· ##删除表‘qianfeng’

· disable ‘qianfeng’

· drop ‘qianfeng’

大数据学习之Hbase shell的基本操作 _命名空间_10

· 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的基本操作 _数据_11

drop_namespace:删除命名空间

##删除命名空间‘qf’

drop_namespace ‘qf’

list_namespace:查看所有命名空间

大数据学习之Hbase shell的基本操作 _shell脚本_12

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

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

list_namespace_tables ‘ns1’

大数据学习之Hbase shell的基本操作 _shell脚本_13

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的基本操作 _数据_14

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

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

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

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

get ‘qianfeng:test’,’r1’

大数据学习之Hbase shell的基本操作 _shell脚本_15

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

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

大数据学习之Hbase shell的基本操作 _shell脚本_16

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

##清空表‘qianfeng:test’

truncate ‘qianfeng:test’

查看‘qianfeng’下所有的表

大数据学习之Hbase shell的基本操作 _命名空间_17

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

标签:shell,##,namespace,qianfeng,命名,qf,test,基本操作,Hbase
From: https://blog.51cto.com/u_15739596/6165561

相关文章

  • Shell 输入/输出重定向
    Shell输入/输出重定向大多数UNIX系统命令从你的终端接受输入并将所产生的输出发送回到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端。重定向命令列表如下:命令......
  • Shell 文件包含
    Shell文件包含和其他语言一样,Shell也可以包含外部脚本。这样可以很方便的封装一些公用的代码作为一个独立的文件。这就是可以解决怎么引入公共函数了注意source未必有效,因为有些OS默认的是sh而非bashShell文件包含的语法格式如下:.filename#注意点号(.)和文件名中......
  • Shell 函数
    Shell函数各种语言都有函数或者别的称呼,说白了就是封装一个可重复使用的代码快,起一个名称带一些参数,给一个返回值。linuxshell可以用户定义函数,然后在shell脚本中可以随便调用。shell中函数的定义格式如下:[function]funname[()]{action;[returnint;]}......
  • Shell echo命令
    Shellecho命令Shell的echo指令用于字符串的输出。命令格式:shellstring的字面量有点特殊,核心注意单引号和双引号的区别echostring您可以使用echo实现更复杂的输出格式控制。1.显示普通字符串:echo"Itisatest"这里的双引号完全可以省略,以下命令与上面实例效果一......
  • Shell printf 命令
    Shellprintf命令printf命令模仿C程序库(library)里的printf()程序。printf由POSIX标准所定义,因此使用printf的脚本比使用echo移植性好。printf使用引用文本或空格分隔的参数,外面可以在printf中使用格式化字符串,还可以制定字符串的宽度、左右对齐方式等。默认......
  • Shell test 命令
    Shelltest命令Shell中的test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。有点像mybatis中的iftest数值测试参数说明-eq等于则为真-ne不等于则为真-gt大于则为真-ge大于等于则为真-lt小于则为真-le小于等于......
  • Shell 数组
    Shell数组数组中可以存放多个值。BashShell只支持一维数组(不支持多维数组),初始化时不需要定义数组大小。与大部分编程语言类似,数组元素的下标由0开始。Shell数组用括号来表示,元素用"空格"符号分割开,语法格式如下:array_name=(value1value2...valuen)实例root@jdit:......
  • Shell 基本运算符
    Shell基本运算符Shell和其他编程语言一样,支持多种运算符,包括:算数运算符关系运算符布尔运算符字符串运算符文件测试运算符原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如awk和expr,expr最常用。这就很神奇了,和其他语言不同基本的原算法都要给第三方......
  • Springboot 系列 (27) - Springboot+HBase 大数据存储(五)| HBase REST 服务
    REST(RepresentationalStateTransfer)即表述性状态传递,是RoyFielding博士2000年在他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。在三种主流的Web服务实现方案中,与复杂的SOAP和XML-RPC相......
  • CMD、Powershell、Bash
    总体来说,CMD、Powershell和Bash都是命令行工具,用于执行各种命令和脚本,但它们的功能和用法都有所不同,根据不同的需求选择不同的命令行工具。CMDCMD(CommandPrompt)是Windows操作系统中的命令行工具,提供了基本的命令行交互功能,如文件管理、进程管理、网络管理等。CMD是Windows系统......