标签:final nfa div com map href qname clear process
hbase本身提供了 聚合方法可以服务端聚合操作
hbase中的CoprocessorProtocol机制.
CoprocessorProtocol的原理比较简单,近似于一个mapreduce框架。由client将scan分解为面向多个region的请求,并行发送请求到多个region,然后client做一个reduce的操作,得到最后的结果。
先看一个例子,使用hbase的AggregationClient可以做到简单的面向单个column的统计。
看下hbase的源码。AggregateImplementation
这里由于
所以,hbase自带的Aggregate函数,只能面向单列进行统计。
当我们想对多列进行Aggregate,并同时进行countRow时,有以下选择。
1 scan出所有的row,程序自己进行Aggregate和count。
2 使用AggregationClient,调用多次,得到所有的结果。由于多次调用,有一致性问题。
3 自己扩展CoprocessorProtocol。
这个是github的hbase集成插件
这个功能集成到simplehbase里面了。
https://github.com/zhang-xzhi/simplehbase
标签:final nfa div com map href qname clear process
原文地址:http://www.cnblogs.com/yaohaitao/p/6789113.html