交互式命令:
echo list | hbase shell
下面列出了几个常用的HBase Shell命令:
名称 |
命令表达式 |
创建表 |
create '表名称', '列名称1','列名称2','列名称N' |
添加记录 |
put '表名称', '行名称', '列名称:', '值' |
查看记录 |
get '表名称', '行名称' |
查看表中的记录总数 |
count '表名称' |
删除记录 |
delete '表名' ,'行名称' , '列名称' |
删除一张表 |
先要屏蔽该表,才能对该表进行删除,第一步 disable '表名称' 第二步 drop '表名称' |
查看所有记录 |
scan "表名称" |
查看某个表某个列中所有数据 |
scan "表名称" , ['列名称:'] |
更新记录 |
就是重写一遍进行覆盖 |
查看帮助: 'help "COMMAND"'
例如:
hbase(main):159:0> deleteall help
查询服务器状态
hbase(main):047:0> status
3 servers, 0 dead, 1.3333 average load
3 servers, 0 dead, 1.3333 average load
查询表是否存在
hbase(main):081:0> exists 'dd'
Table dd does not exist
0 row(s) in 0.0130 seconds
hbase(main):082:0> exists 'cstor:test01'
Table cstor:test01 does exist
0 row(s) in 0.0150 seconds
Table dd does not exist
0 row(s) in 0.0130 seconds
hbase(main):082:0> exists 'cstor:test01'
Table cstor:test01 does exist
0 row(s) in 0.0150 seconds
判断表是否enable
hbase(main):084:0> is_enabled 'cstor:test01'
true
true
判断表是否disabled
hbase(main):085:0> is_disabled 'cstor:test01'
false
false
表操作:
创建表空间
hbase(main):014:0> create_namespace 'cstor'
在表空间cstor下,创建一张表 ,列族为f
hbase(main):018:0> create 'cstor:test01', 'f'
建表预分区
create 'wf:region_test','f', {NUMREGIONS => 40, SPLITALGO => 'HexStringSplit'}关闭BloomFilter
create 'wf:bm_none_02',{NAME => 'f', BLOOMFILTER => 'NONE'},{NUMREGIONS => 20, SPLITALGO => 'HexStringSplit'}
查看HBase表描述
hbase(main):080:0* desc 'cstor:test01'
Table cstor:test01 is ENABLED
cstor:test01
COLUMN FAMILIES DESCRIPTION
{NAME => 'f', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE
=> 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
Table cstor:test01 is ENABLED
cstor:test01
COLUMN FAMILIES DESCRIPTION
{NAME => 'f', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE
=> 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
插入一条数据
hbase(main):027:0*> put 'cstor:test01','user','f:name','zhangsan'
hbase(main):032:0> put 'cstor:test01','user','f:age','20'
统计rowkey count:
count 'razor:arbitrary_dimensionality', {INTERVAL => 100, CACHE => 100}
HBase 过滤器操作:
查看过滤器:
show_filters
行过滤:
scan 'razor:arbitrary_dimensionality',{FILTER => "(RowFilter(=,'substring:cellid'))", CACHE => 100}
RowFilter filter = new RowFilter(CompareOp.EQUAL, new SubstringComparator("substring"));
列修饰符过滤:
scan 'razor:arbitrary_dimensionality', {COLUMNS => ['f:info']}
scan 'razor:arbitrary_dimensionality', {COLUMNS => ['f:info', 'f:data'], FILTER => "(QualifierFilter(=,'substring:a'))"}
列值过滤单列查询:
import org.apache.hadoop.hbase.filter.CompareFilter
import org.apache.hadoop.hbase.filter.SingleColumnValueFilter
import org.apache.hadoop.hbase.filter.SubstringComparator
import org.apache.hadoop.hbase.util.Bytes
scan 'razor:error',{COLUMNS => 'f:version', FILTER => SingleColumnValueFilter.new( Bytes.toBytes('f'), Bytes.toBytes('version'), CompareFilter::CompareOp.valueOf('EQUAL'), Bytes.toBytes('1.0'))}
列值过滤多列查询:
scan 'razor:error',{COLUMNS => ['f:version','f:productid'], FILTER => SingleColumnValueFilter.new(Bytes.toBytes('f'),Bytes.toBytes('version'),CompareFilter::CompareOp.valueOf('EQUAL'),Bytes.toBytes('1.0'))}
参考:
相关推荐
### HBase Shell 的基本用法详解 #### 一、简介 HBase 是一款分布式的、面向列的开源数据库,其灵感来源于Google的Bigtable论文。HBase 旨在为大规模数据提供实时读写访问的能力,并且能够高效地处理非常大的数据...
HBase shell是一个命令行工具,它允许用户以交互的方式运行HBase的命令,如建表、插入数据、数据查询等操作。 1. 进入HBase Shell 要进入HBase Shell,首先需要确认HBase服务已经启动。然后切换到HBase的安装目录,...
批量执行hbase shell 命令 #!/bin/bash source /etc/profile exec $HBASE_HOME/bin/hbase shell <<EOF truncate 'tracker_total_apk_fact_zyt' major_compact('t_abc') disable 't_abc' drop 't_abc' create...
### HBase Shell 常用命令详解 #### 一、HBase Shell 概述 HBase Shell 是一个基于命令行的工具,用于与HBase进行交互。它提供了一系列丰富的命令来执行基本的数据管理任务,例如创建表、插入数据、查询数据等。...
HBase Shell API 操作详解 HBase 是一个基于分布式文件系统的 NoSQL 数据库,提供了丰富的 API 来进行数据操作。在本实验中,我们将使用 HBase Shell API 来实现基本的数据操作,包括创建表、查看所有表、插入数据...
### HBase Shell 命令详解 #### 一、概述 HBase Shell 是一个命令行工具,用于与 HBase 数据库进行交互。它提供了一系列的命令来管理表、执行数据定义语言 (DDL) 和数据操纵语言 (DML) 操作等。通过 HBase Shell,...
HBase Shell命令大全_monday的博客-CSDN博客_hbase shell.html
这是本人使用hbase shell的部分经验总结,一般的shell使用全部包括了。 版本,压缩,region等需求,以及使用普通shell使用hbase shell
### HBase Shell 常用命令详解 #### 一、概述 HBase 是一个分布式的、面向列的开源数据库,其设计受到了 Google 的 Bigtable 的启发。它非常适合于非结构化数据存储,提供了高可靠性、高性能、面向列、可伸缩等特点...
根据提供的文件信息,本文将详细介绍HBase的Shell操作及其应用场景,包括如何创建表、插入数据、查询数据等关键操作。 ### HBase Shell简介 HBase Shell是HBase提供的一种交互式命令行工具,用于执行HBase操作。它...
在HBase这个分布式列式数据库中,Shell是一个用于与HBase交互的命令行工具,它提供了丰富的命令来执行各种操作。以下是对HBase Shell中一些常用命令的详细说明: 1. **创建表**: `create '表名称', '列族名称 1',...
HBase Shell 实验手册 HBase Shell 是 Hadoop 家族中的一员,它是一个基于 HBase 的 Shell 交互式命令行工具,提供了便捷的方式来管理和操作 HBase 数据库。本实验手册旨在指导用户掌握 HBase Shell 的使用,了解 ...
HDFS_HBaseShell的常用命令 HDFS(Hadoop Distributed File System)是一种分布式文件系统,主要用于存储和管理大规模数据。HBase 是一个基于HDFS的NoSQL数据库,用于存储和管理大规模结构化和半结构化数据。HBase ...
HBase Shell常用命令 HBase Shell是Hadoop技术中的一个重要组件,用于管理和操作HBase数据库。以下是HBase Shell的常用命令,分为一般操作、数据定义语言(DDL)操作和数据操作语言(DML)操作三大类。 一般操作 ...
HBase Shell是HBase提供的一个交互式命令行工具,用于管理和操作HBase数据库。在这里,我们将深入探讨HBase Shell的各种命令。 1. **创建表(create)**: 使用`create '表名', '列族'`命令来创建表,如`create '...
HBase shell及常用命令 HBase Shell是HBase数据库的命令行工具,用户可以使用HBase Shell与HBase进行交互。HBase Shell是一个封装了Java客户端API的JRuby应用软件,在HBase的HMaster主机上通过命令行输入hbase ...
在HBase中,HBase Shell是一个交互式的命令行工具,用于管理和操作HBase数据库。它提供了多种命令,帮助用户执行常见的数据库操作,如创建、读取、更新和删除数据。以下是一些重要的HBase Shell操作命令及其详细说明...
在HBase中,HBase Shell是用于管理与操作HBase数据库的一个交互式命令行工具。以下是一些HBase Shell的基本操作命令的详细说明: 1. **创建表** (`create`): 使用`create`命令创建一个新的HBase表。例如: ``` ...
HBase Shell是HBase提供的交互式命令行工具,用于操作HBase表。以下是一些常用的HBase Shell命令: 1. **create**:创建表,如`create 'testTable', 'cf'` 创建一个名为testTable的表,包含一个列族cf。 2. **put*...
下面是基于标题“Hbase的shell基本操作”和描述“hadoop集群环境下hbase的shell基本操作命令”,结合给定的部分内容,所生成的详细知识点: 1. 进入HBase命令行: 通过命令`hbase shell`可以进入HBase的命令行界面...