Hbase 统计表行数的3种方式总结
2016-10-15 22:18
141 查看
有些时候需要我们去统计某一个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
count一般会比较耗时,使用mapreduce进行统计。
语法:count<table>, {INTERVAL => intervalNum, CACHE => cacheNum}
INTERVAL设置多少行显示一次及对应的rowkey,默认1000;
CACHE每次去取的缓存区大小,默认是10,调整该参数可提高查询速度
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");
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
count一般会比较耗时,使用mapreduce进行统计。
语法:count<table>, {INTERVAL => intervalNum, CACHE => cacheNum}
INTERVAL设置多少行显示一次及对应的rowkey,默认1000;
CACHE每次去取的缓存区大小,默认是10,调整该参数可提高查询速度
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");
相关文章推荐
- Hbase 统计表行数的3种方式总结
- Hbase 统计表行数的3种方式总结
- Hbase 统计表行数的3种方式总结
- Hbase 统计表行数的3种方式总结
- HBase总结(十九)数据导入方式
- org.apache.hadoop.hbase.coprocessor.AggregateImplementation 来统计表的行数
- 配置mac启动项的3种方式总结
- (总结2)WinForm中3种方式文件上传服务器:WebClient
- Android WebView和Native交互的3种方式总结
- HBase总结(十九)数据导入方式
- HBase java 统计表行数
- Android中对xml文件解析的3种方式总结
- HBase学习笔记-统计表行数
- HBASE自带小工具,统计表的行数
- HBase写入的各种方式总结汇总(代码)
- Hbase统计表总行数的三种方式
- Android View移动的3种方式总结
- org.apache.hadoop.hbase.coprocessor.AggregateImplementation 来统计表的行数
- 【java基础总结系列】:java 多线程3种实现方式
- HBase学习笔记-统计表行数