轻松搞定HBase数据库:快速掌握查看技巧! (如何查看hbase数据库)

HBase是一种存储海量结构化数据的分布式数据库,在大数据领域广泛应用。然而,HBase的查询语言与传统关系型数据库不同,需要掌握不同的上手方法和技巧。本篇文章将介绍HBase的查看技巧,帮助读者轻松搞定HBase数据库。

一、基本介绍

HBase是一种基于列族的分布式数据库系统。它具备水平扩展性、快速读写能力和数据安全性等特点,广泛应用于互联网、金融、电商等行业。HBase的数据模型类似于关系型数据库的表格,但是更为灵活。HBase中的表格被划分为行和列族,行由行键标识,列族由列族名标识,列由列名和时间戳标识。一个表格可以包含多个列族,每个列族可以包含多个列。

二、HBase的Shell操作

HBase提供了与数据库进行交互的Shell界面。需要使用start-hbase.sh命令启动HBase。然后,在Terminal中输入hbase shell命令,即可进入HBase Shell界面。

1.列出所有的表格

在HBase Shell中,可以使用list命令列出所有的表格。例如,输入list,即可看到HBase中当前所有的表格。

2.创建表格

HBase中创建表格需要指定表格名称、列族和分区数。例如,输入create ‘mytable’, ‘mycf’,即可创建一个名为mytable的表格,包含一个名为mycf的列族。

3.插入数据

在HBase Shell中,可以使用put命令插入数据。例如,输入put ‘mytable’, ‘row1’, ‘mycf:col1’, ‘hello’,即可在mytable表格的之一行中插入一条数据,行键为row1,列族为mycf,列名为col1,值为hello。

4.查看数据

在HBase Shell中,可以使用get命令查看数据。例如,输入get ‘mytable’, ‘row1’,即可查看mytable表格中行键为row1的数据。

5.删除数据

在HBase Shell中,可以使用delete命令删除数据。例如,输入delete ‘mytable’, ‘row1’, ‘mycf:col1’,即可删除mytable表格中行键为row1、列族为mycf、列名为col1的数据。

三、HBase的Web UI操作

除了Shell界面,HBase还提供了Web界面进行操作。HBase的Web UI默认端口为16010。在浏览器中输入http://localhost:16010即可进入Web UI界面。

1.列出所有的表格

在HBase的Web UI中,可以看到所有的表格及其状态。例如,点击Tables选项卡,即可看到HBase中的所有表格及其详细信息。

2.创建表格

在HBase的Web UI中,可以使用New Table按钮创建新表格。在弹出的对话框中,需要指定表格的名称、列族、分区数等信息。

3.插入数据

在HBase的Web UI中,可以使用Insert Row按钮插入数据。在弹出的对话框中,需要指定表格名称、行键、列族、列名和值等信息。

4.查看数据

在HBase的Web UI中,可以使用Browse按钮查看数据。首先需要选择要浏览的表格,然后输入行键和列族,即可查看对应的数据。

5.删除数据

在HBase的Web UI中,可以使用Delete按钮删除数据。首先需要选择要删除的表格,然后选择要删除的行和列族,即可删除对应的数据。

四、HBase的Java API操作

除了Shell界面和Web界面,HBase还提供了Java API接口进行操作。主要分为HBase的数据访问层和客户端程序两部分。

1.HBase的数据访问层

HBase的数据访问层指的是与HBase进行数据交互的底层API接口。它主要包括连接HBase集群、创建表格、插入数据、查询数据和删除数据等操作。其中,HBase的数据访问层主要由HBaseAPI类和HTable类实现。

HBaseAPI类位于org.apache.hadoop.hbase.client包中。它代表了一个HBase连接客户端,负责与HBase进行交互。HBaseAPI类主要包括创建HBase连接、关闭HBase连接、创建HBase表格、获取HBase表格、插入数据、查询数据和删除数据等方法。

HTable类实现了对HBase表格的操作。它位于org.apache.hadoop.hbase.client包中。HTable类主要包括插入数据、获取数据、删除数据、扫描数据等方法。

2.客户端程序

客户端程序指的是使用HBase API进行开发的程序。它主要包括数据插入、查询和删除等操作。在Java中,使用HBase API进行数据操作需要遵循以下步骤:

1)创建HBase连接

2)获取HBase表格

3)进行数据操作

4)释放资源

五、

HBase是一种分布式数据库系统,具备水平扩展性、快速读写能力和数据安全性等特点。在HBase中,需要掌握不同的上手方法和技巧。本篇文章介绍了HBase的查看技巧,包括Shell操作、Web UI操作和Java API操作。通过学习本篇技巧,读者可以快速掌握HBase数据库的查看方法,提高数据操作效率,更好地应用HBase数据库。

相关问题拓展阅读:

如何使用Spark/Scala读取Hbase的数据

使用Spark/Scala读取Hbase的数据 必须使用高亮参数启动Spark-shell,否则当你遍历RDD时会出现如下的Exception java.io.NotSerializableException: org.apache.hadoop.hbase.io.ImmutableBytesWritable spark-shell–conf spark.serializer=org.apache.spark.serializer.KryoSerializer 以下代码,经过粗改MaprDB实测通过 import org.apache.spark._ import org.apache.spark.rdd.NewHadoopRDD import org.apache.hadoop.hbase.{HBaseConfiguration, HTableDescriptor} import org.apache.hadoop.hbase.client.HBaseAdmin import org.apache.hadoop.hbase.mapreduce.TableInputFormat import org.apache.hadoop.fs.Path; import org.apache.hadoop.hbase.HColumnDescriptor import org.apache.hadoop.hbase.util.Bytes import org如何使用Spark/Scala读取游凳稿Hbase的神孝数据

hbaseshelltext如何显示命令

hadoop

Hxbase shell 基本操作命令

温旧酒一壶~

转载

关注

2点赞·1726人阅读

版权声明:原文链接:

目录

一、 HBase Shell

二、general命名

1.显示集群状态status

2. 查询数据库版本version

3. 显示当前清逗族用户与组 whoami

 4. 查看操作表的命令table_help

5. 退出HBase Shell exit

三、ddl命令

1. 创建表create

2. 修改(添加、删除)表结构Schema alter

2.1 添加一个列族

 2.2 删除一个列族

 2.3 修改列族的属性可以修改列族的VERSIONS、IN_MEMORY

3. 异步修改Schema alter_async

4. 获取alter_async执行的状态 alter_status

5. 获取表的描述describe

 6. 列举所有表list

 7. 表是否存在exists

 8. 启用表enable和禁用表disable

 9. 禁用满足正则表达式的所有表disable_all

10. 启用满足正则表达式的所有表enable_all

11. 删除表drop

12. 删除满足正则表达式的所有表drop_all

13. 获取某个表赋值给一个变量 get_table

 14. 获取rowKey所在的区 locate_region

 15. 显示hbase所支持的所有过滤器show_filters

四、namespace命令

1. 列举命名空间 list_namespace

 2. 获取命名空间描述 describe_namespace

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

 4. 创建命名空间create_namespace

 5. 修改命名空间的属性

6. 删除命名空间drop_namespace

五:dml命令

1. 插入或者修改数据put

 2. 全表扫描scan

1、扫描整个列簇

 2、扫描整个列簇的某个列

 3. 获取数据get

4. 删除某个列族中的某个列delete

 5. 删除某行数据deleteall

 6. 清空整个表的数据truncate

 7. 查询表中有多少行count

 8. 自增incr

 9. 计数器get_counter

10. 修饰词

10.1 COLUMNS: 查询同一个列族的多个列

 10.2 TIMESTAMP 指定时间戳

10.3 TIMERANGE表示的是”>=开始时间 and status

hbase> status ‘simple’

hbase> status ‘summary’

hbase> status ‘detailed’

hbase> status ‘replication’

hbase> status ‘replication’, ‘source’

hbase> status ‘replication’, ‘sink’

登录后复制

2. 查询数据库版本version

3. 显示当前用户与组 whoami

 4. 查看操作表的命令table_help

5. 退出HBase Shell exit

exit

登录后复制

三、ddl命令

1. 创建表create

注意:创建表时只需要指定列族名称,不需要指定列名。

# 语法

create ‘表名’, {NAME => ‘列族名1’}, {NAME => ‘列族名2’}, {NAME => ‘列族名3’}

# 此种方式是上上面的简写方式,使用上面方式可以为列族指定更多的属性,如VERSIONS、TTL、BLOCKCACHE、CONFIGURATION等属性

create ‘表名’, ‘列族名1’, ‘列族名2’, ‘列族名3’

create ‘表名’, {NAME => ‘列族名1’, VERSIONS => 版本号, TTL => 过期时间, BLOCKCACHE => true}

# 示例

create ‘tbl_user’, ‘info’, ‘detail’

create ‘t1’, {NAME => ‘f1’, VERSIONS => 1, TTL =>, BLOCKCACHE => true}

登录后复制

2. 修改(添加、删除)表结构Schema alter

2.1 添加一个列族

# 语法

alter ‘表名’, ‘列族名’

# 示例

alter ‘tbl_user’, ‘address’

登录后复制

 2.2 删除一个列族

# 语法

alter ‘表名’, {NAME=> ‘列族名’, METHOD=> ‘delete’}

# 示例

alter ‘tbl_user’, {NAME=> ‘address’, METHOD=> ‘delete’}

登录后复制

 2.3 修改列族的属性

可以修改列族的VERSIONS、IN_MEMORY

# 修改f1列族的版本为5

alter ‘t1’, NAME => ‘f1’, VERSIONS => 5

# 修改多个列族,修改f2为内存,版本号为5

alter ‘t1’, ‘f1’, {NAME => ‘f2’, IN_MEMORY => true}, {NAME => ‘f3’, VERSIONS => 5}

# 也可以修改table-scope属性,例如MAX_FILESIZE, READON,MEMSTORE_FLUSHSIZE, DEFERRED_LOG_FLUSH等。

# 例如,修改region的更大大小为128MB:

alter ‘t1’, MAX_FILESIZE => ”

登录后复制

3. 异步修改Schema alter_async

# change or add the ‘f1’ column family in table ‘t1’ from defaults

to instead keep a maximum of 5 cell VERSIONS

alter_async ‘t1’, NAME => ‘f1’, VERSIONS => 5

# delete the ‘f1’ column family in table ‘ns1:t1’

alter_async ‘ns1:t1’, NAME => ‘f1’, METHOD => ‘delete’

alter_async ‘ns1:t1’, ‘delete’ => ‘f1’

# change the max size of a family to 128MB

alter ‘t1’, METHOD => ‘table_att’, MAX_FILESIZE => ”

alter ‘t1’, {NAME => ‘f1’}, {NAME => ‘f2’, METHOD => ‘delete’}

登录后复制

4. 获取alter_async执行的状态 alter_status

alter_status ‘表名’

登录后复制

5. 获取表的描述describe

# 语法

describe ‘表名’

# 示例

describe ‘tbl_user’

登录后复制

 6. 列举所有表list

 7. 表是否存在exists

# 语法

exists ‘表名’

# 示例

exists ‘tbl_user’

登录后复制

 8. 启用表enable和禁用表disable

通过enable和disable来启用/禁用这个表,相应的可以通过is_enabled和is_disabled来检查表是否被禁用。

# 语法

enable ‘表名’

is_enabled ‘表名’

disable ‘表名’

is_disabled ‘表名’

# 示例

disable ‘tbl_user’

is_disabled ‘tbl_user’

enable ‘tbl_user’

is_enabled ‘tbl_user’

登录后复制

 9. 禁用满足正则表达式的所有表disable_all

匹配除“\n”和”\r”之外的任何单个字符

*匹配前面的子表达式任意次

# 匹配以t开头的表名

disable_all ‘t.*’

# 匹配指定命名空间ns下的以t开头的所有表

disable_all ‘ns:t.*’

# 匹配ns命名空间下的所有表

disable_all ‘ns:.*’

登录后复制

10. 启用满足正则表达式的所有表enable_all

enable_all ‘t.*’

enable_all ‘ns:t.*’

enable_all ‘ns:.*’

登录后复制

11. 删除表drop

需要先禁用表,然后再删除表,启用的表是不允许删除的

# 语法

disable ‘表名’

drop ‘表名’

# 示例

disable ‘tbl_user’

drop ‘tbl_user’

登录后复制

12. 删除满足正则表达式的所有表drop_all

drop_all ‘t.*’

drop_all ‘ns:t.*’

drop_all ‘ns:.*’

登录后复制

13. 获取某个表赋值给一个变量 get_table

通过 var = get_table ‘表名’ 赋值给一个变量对象,然后对象.来调用,就像面向对象编程一样,通过对象.方法来调用,这种方式在操作某个表时就不必每次列举表名了。

 14. 获取rowKey所在的区 locate_region

locate_region ‘表名’, ‘行键’

登录后复制

 15. 显示hbase所支持的所有过滤器show_filters

过滤器用于get和scan命令中作为筛选数据的条件,类型关系型数据库中的where的作用

四、namespace命令

1. 列举命名空间 list_namespace

 2. 获取命名空间描述 describe_namespace

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

 4. 创建命名空间create_namespace

 5. 修改命名空间的属性

# add/modify a property

alter_namespace ‘ns1’, {METHOD => ‘set’, ‘PROPERTY_NAME’ => ‘PROPERTY_VALUE’}

# delete a property

alter_namespace ‘ns1’, {METHOD => ‘unset’, NAME=>’PROPERTY_NAME’}

登录后复制

6. 删除命名空间drop_namespace

drop_namespace ‘命名空间名称’

登录后复制

五:dml命令

1. 插入或者修改数据put

# 语法

# 当列族中只有一个列时’列族名:列名’使用’列族名’

put ‘表名’, ‘行键’, ‘列族名’, ‘列值’

put ‘表名’, ‘行键’, ‘列族名:列名’, ‘列值’

# 示例

# 创建表

create ‘tbl_user’, ‘info’, ‘detail’, ‘address’

# 之一行数据

put ‘tbl_user’, ‘mengday’, ‘info:id’, ‘1’

put ‘tbl_user’, ‘mengday’, ‘info:name’, ‘张三’

put ‘tbl_user’, ‘mengday’, ‘info:age’, ’28’

put ‘tbl_user’, ‘mengday’, ‘detail:birthday’, ”

put ‘tbl_user’, ‘mengday’, ‘detail:email’, ‘

put ‘tbl_user’, ‘mengday’, ‘detail:create_time’, ‘:26:10’

put ‘tbl_user’, ‘mengday’, ‘address’, ‘上海市’

# 第二行数据

put ‘tbl_user’, ‘vbirdbest’, ‘info:id’, ‘2’

put ‘tbl_user’, ‘vbirdbest’, ‘info:name’, ‘李四’

put ‘tbl_user’, ‘vbirdbest’, ‘info:age’, ’27’

put ‘tbl_user’, ‘vbirdbest’, ‘detail:birthday’, ”

put ‘tbl_user’, ‘vbirdbest’, ‘detail:email’, ‘

put ‘tbl_user’, ‘vbirdbest’, ‘detail:create_time’, ‘:26:10’

put ‘tbl_user’, ‘vbirdbest’, ‘address’, ‘北京市’

# 之一行数据

put ‘tbl_user’, ‘xiaoming’, ‘info:id’, ‘3’

put ‘tbl_user’, ‘xiaoming’, ‘info:name’, ‘王五’

put ‘tbl_user’, ‘xiaoming’, ‘info:age’, ’26’

put ‘tbl_user’, ‘xiaoming’, ‘detail:birthday’, ”

put ‘tbl_user’, ‘xiaoming’, ‘detail:email’, ‘

put ‘tbl_user’, ‘xiaoming’, ‘detail:create_time’, ‘:26:10’

put ‘tbl_user’, ‘xiaoming’, ‘address’, ‘杭州市’

登录后复制

 2. 全表扫描scan

获取表的所有数据

# 语法

scan ‘表名’

# 示例

scan ‘tbl_user’

登录后复制

注意:中文编码了

1、扫描整个列簇

# 语法

scan ‘表名’, {COLUMN=>’列族名’}

# 示例

scan ‘tbl_user’, {COLUMN=>’info’}

登录后复制

 2、扫描整个列簇的某个列

# 语法

scan ‘表名’, {COLUMN=>’列族名:列名’}

# 示例

scan ‘tbl_user’, {COLUMN=>’info:age’}

登录后复制

 3. 获取数据get

# 语法

get ‘表名’, ‘行键’

# 示例

get ‘tbl_user’, ‘mengday’

登录后复制

 根据某一行某列族的数据

# 语法

get ‘表名’, ‘行键’, ‘列族名’

# 示例

get ‘tbl_user’, ‘mengday’, ‘info’

登录后复制

# 创建表,c1版本为4, 元数据mykey=myvalue

hbase(main):009:0> create ‘t1’, {NAME => ‘c1’, VERSIONS => 4}, METADATA => { ‘mykey’ => ‘myvalue’ }

0 row(s) in 2.2810 seconds

=> Hbase::Table – t1

# 添加列族c2, c3

hbase(main):010:0> alter ‘t1’, ‘c2’, ‘c3’

Updating all regions with the new schema…

1/1 regions updated.

Done.

Updating all regions with the new schema…

1/1 regions updated.

Done.

0 row(s) in 3.8320 seconds

# 出入数据,c1 插入4个版本的值

hbase(main):011:0> put ‘t1’, ‘r1’, ‘c1’, ‘v1’

0 row(s) in 0.1000 seconds

hbase(main):012:0> put ‘t1’, ‘r1’, ‘c1’, ‘v11’

0 row(s) in 0.0180 seconds

hbase(main):013:0> put ‘t1’, ‘r1’, ‘c1’, ‘v111’

0 row(s) in 0.0140 seconds

hbase(main):014:0> put ‘t1’, ‘r1’, ‘c1’, ‘v1111’

0 row(s) in 0.0140 seconds

# 插入c2、c3的值

hbase(main):015:0> put ‘t1’, ‘r1’, ‘c2’, ‘v2’

0 row(s) in 0.0140 seconds

hbase(main):016:0> put ‘t1’, ‘r1’, ‘c3’, ‘v3’

0 row(s) in 0.0210 seconds

# 获取rowKey=r1的一行记录

hbase(main):017:0> get ‘t1’, ‘r1’

COLUMN CELL

c1: timestamp=, value=v1111

c2: timestamp=, value=v2

c3: timestamp=, value=v3

3 row(s) in 0.0550 seconds

# 获取rowKey=r1并且 get ‘t1’, ‘r1’, {TIMERANGE => }

COLUMN CELL

c2: timestamp=, value=v2

1 row(s) in 0.0090 seconds

# 获取指定列的值

hbase(main):019:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’}

COLUMN CELL

c1: timestamp=, value=v1111

1 row(s) in 0.0160 seconds

# 获取指定列的值,多个值使用数组表示

hbase(main):020:0> get ‘t1’, ‘r1’, {COLUMN => }

COLUMN CELL

c1: timestamp=, value=v1111

c2: timestamp=, value=v2

c3: timestamp=, value=v3

3 row(s) in 0.0170 seconds

# 获取c1的值,获取4个版本的值,默认是按照时间戳降续排序的

hbase(main):021:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, VERSIONS => 4}

COLUMN CELL

c1: timestamp=, value=v1111

c1: timestamp=, value=v111

c1: timestamp=, value=v11

c1: timestamp=, value=v1

4 row(s) in 0.0180 seconds

# 获取c1的3个版本值

hbase(main):027:0* get ‘t1’, ‘r1’, {COLUMN => ‘c1’, VERSIONS => 3}

COLUMN CELL

c1:timestamp=, value=v1111

c1:timestamp=, value=v111

c1:timestamp=, value=v11

3 row(s) in 0.0090 seconds

# 获取指定时间戳版本的列

hbase(main):022:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMESTAMP =>}

COLUMN CELL

c1: timestamp=, value=v111

1 row(s) in 0.0170 seconds

hbase(main):023:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMESTAMP =>, VERSIONS => 4}

COLUMN CELL

c1: timestamp=, value=v111

1 row(s) in 0.0130 seconds

# 获取rowKey=r1中的值等于v2的所有列

hbase(main):024:0> get ‘t1’, ‘r1’, {FILTER => “ValueFilter(=, ‘binary:v2’)”}

COLUMN CELL

c2: timestamp=, value=v2

1 row(s) in 0.0510 seconds

hbase(main):025:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, ATTRIBUTES => {‘mykey’=>’myvalue’}}

COLUMN CELL

c1: timestamp=, value=v1111

1 row(s) in 0.0100 seconds

登录后复制

4. 删除某个列族中的某个列delete

# 语法

delete ‘表名’, ‘行键’, ‘列族名:列名’

create ‘tbl_test’, ‘columnFamily1’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value1’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column2’, ‘value2’

delete ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’

登录后复制

 5. 删除某行数据deleteall

# 语法

deleteall ‘表名’, ‘行键’

# 示例

deleteall ‘tbl_test’, ‘rowKey1’

登录后复制

 6. 清空整个表的数据truncate

先disable表,然后再drop表,最后重新create表

truncate ‘表名’

登录后复制

 7. 查询表中有多少行count

# 语法

count ‘表名’

# 示例

count ‘tbl_user’

登录后复制

 8. 自增incr

# 语法

incr ‘表名’, ‘行键’, ‘列族:列名’, 步长值

# 示例

# 注意:incr 可以对不存的行键操作,如果行键已经存在会报错,如果使用put修改了incr的值再使用incr也会报错

# ERROR: org.apache.hadoop.hbase.DoNotRetryIOException: Field is not a long, it’s 2 bytes wide

incr ‘tbl_user’, ‘xiaohong’, ‘info:age’, 1

登录后复制

 9. 计数器get_counter

# 点击量:日、周、月

create ‘counters’, ‘daily’, ‘weekly’, ‘monthly’

incr ‘counters’, ”, ‘daily:hits’, 1

incr ‘counters’, ”, ‘daily:hits’, 1

get_counter ‘counters’, ”, ‘daily:hits’

登录后复制

10. 修饰词

10.1 COLUMNS: 查询同一个列族的多个列

# 语法

scan ‘表名’, {COLUMNS => }

# 示例

scan ‘tbl_user’, {COLUMNS => }

登录后复制

 10.2 TIMESTAMP 指定时间戳

scan ‘t1’, {COLUMNS => ‘c2’, TIMESTAMP=>}

登录后复制

10.3 TIMERANGE表示的是”>=开始时间 and }

# 示例

scan ‘tbl_user’,{TIMERANGE=>}

登录后复制

 10.4 VERSIONS

默认情况下一个列只能存储一个数据,后面如果修改数据就会将原来的覆盖掉,可以通过指定VERSIONS时HBase一列能存储多个值。

create ‘tbl_test’, ‘columnFamily1’

describe ‘tbl_test’

# 修改列族版本号

alter ‘tbl_test’, { NAME=>’columnFamily1′, VERSIONS=>3 }

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value1’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value2’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value3’

# 默认返回最新的一条数据

get ‘tbl_test’,’rowKey1′,’columnFamily1:column1′

# 返回3个

get ‘tbl_test’,’rowKey1′,{COLUMN=>’columnFamily1:column1′, VERSIONS=>3}

# 返回2个

get ‘tbl_test’,’rowKey1′,{COLUMN=>’columnFamily1:column1′, VERSIONS=>2}

登录后复制

 10.5 STARTROW

ROWKEY起始行。会先根据这个key定位到region,再向后扫描

# 语法

scan ‘表名’, { STARTROW => ‘行键名’}

# 示例

scan ‘tbl_user’, { STARTROW => ‘vbirdbest’}

登录后复制

 10.6 STOPROW :截止到STOPROW行,STOPROW行之前的数据,不包括STOPROW这行数据

# 语法

scan ‘表名’, { STOPROW => ‘行键名’}

# 示例

scan ‘tbl_user’, { STOPROW => ‘vbirdbest’}

登录后复制

10.7 LIMIT 返回的行数 

# 语法

scan ‘表名’, { LIMIT => 行数}

# 示例

scan ‘tbl_user’, { LIMIT => 2 }

登录后复制

 11. FILTER条件过滤器

过滤器之间可以使用AND、OR连接多个过滤器。

ValueFilter 值过滤器

# 语法:binary 等于某个值

scan ‘表名’, FILTER=>”ValueFilter(=,’binary:列值’)”

# 语法 substring:包含某个值

scan ‘表名’, FILTER=>”ValueFilter(=,’substring:列值’)”

# 示例

scan ‘tbl_user’, FILTER=>”ValueFilter(=, ‘binary:26’)”

scan ‘tbl_user’, FILTER=>”ValueFilter(=, ‘substring:6’)”

登录后复制

 ColumnPrefixFilter 列名前缀过滤器

# 语法 substring:包含某个值

scan ‘表名’, FILTER=>”ColumnPrefixFilter(‘列名前缀’)”

# 示例

scan ‘tbl_user’, FILTER=>”ColumnPrefixFilter(‘birth’)”

# 通过括号、AND和OR的条件组合多个过滤器

scan ‘tbl_user’, FILTER=>”ColumnPrefixFilter(‘birth’) AND ValueFilter(=,’substring:26′)”

登录后复制

rowKey字典排序

关于如何查看hbase数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 轻松搞定HBase数据库:快速掌握查看技巧! (如何查看hbase数据库)