统计HBase表行数的四种方式

有时候我们需要统计HBase表的行数,一般要么是写MR程序,要么是写SQL。以下就是可用的几种方式:

  • COUNT

HBase Shell自带的统计函数命令
hbase> count 't1'
hbase> count 't1',INTERVAL => 100000
hbase> count 't1', CACHE => 1000
hbase> count 't1', INTERVAL => 10, CACHE => 1000

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

  • 调用MR

hbase org.apache.hadoop.hbase.mapreduce.RowCounter 'tablename'

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

  • Hive ON HBase

创建HiveHBase的关联表,将HBase当作Hive的外部表。

  • HBase已有表与Phoenix做映射
    只需在phoenix中添加同名表即可映射到hbase的同名表
    create table "demo"(
    "ROW" varchar primary key,
    "info"."name" varchar,
    "info"."address" varchar
    );
    然后再:
    select count(*) from "demo";
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容