hbase怎么查看表里的数据 统计表行数的3种方式总结

hbase怎么查看表里的数据 统计表行数的3种方式总结(1)

来源:https://blog.csdn.net/chaolovejia/article/details/46328983

有些时候需要我们去统计某一个Hbase表的行数,由于hbase本身不支持SQL语言,只能通过其他方式实现。可以通过一下几种方式实现hbase表的行数统计工作:

1.count命令

最直接的方式是在hbase shell中执行count的命令可以统计行数。

hbase> count ‘t1′ hbase> count ‘t1′, INTERVAL => 100000 hbase> count ‘t1′, CACHE => 1000 hbase> count ‘t1′, INTERVAL => 10, CACHE => 1000

其中,INTERVAL为统计的行数间隔,默认为1000,CACHE为统计的数据缓存。这种方式效率很低,如果表行数很大的话不建议采用这种方式。

2. 调用Mapreduce

$HBASE_HOME/bin/hbase org.apache.hadoop.hbase.mapreduce.RowCounter ‘tablename’

这种方式效率比上一种要搞很多,调用的hbase jar中自带的统计行数的类。

3.hive over hbase

如果已经见了hive和hbase的关联表的话,可以直接在hive中执行sql语句统计hbase表的行数。

hive over hbase 表的建表语句为:

/*创建hive与hbase的关联表*/

CREATE TABLE hive_hbase_1(key INT,value STRING) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping"=":key,cf:val") TBLPROPERTIES("hbase.table.name"="t_hive","hbase.table.default.storage.type"="binary");

/*hive关联已经存在的hbase*/

CREATE EXTERNAL TABLE hive_hbase_1(key INT,value STRING) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping"=":key,cf:val") TBLPROPERTIES("hbase.table.name"="t_hive","hbase.table.default.storage.type"="binary");

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页