假设我在Accumulo中有这样的表:
a cf1:cq1 [ ] 1
b cf1:cq1 [ ] 3
c cf1:cq1 [ ] 2
如果我在此表上应用SummingCombiner并插入一行“a cf1 cq1 2
”,那么我会得到结果:
a cf1:cq1 [ ] 3
b cf1:cq1 [ ] 3
c cf1:cq1 [ ] 2
我想知道的是,是否有一个迭代器可以帮助我在列限定符等特定字段上执行聚合。
简而言之,我可以执行“Sum of the values of those rows where column qualifier is cq1
”之类的查询。
如果没有针对此类查询的现成迭代器,我该如何为它创建自定义迭代器?
答案 0 :(得分:1)
我认为我们在Accumulo中没有任何东西可以直接提供您所要求的内容,但https://github.com/joshelser/accumulo-column-summing非常相似,可以作为一个很好的起点。
您也可以尝试使用ColumnSliceFilter,它会将结果限制为您想要的列限定符,并轻松编写SummingIterator(或者只是将它们与客户端相加)。