java StormHBase Trident同时查询多个列
我正在构建一个查询HBasState的三叉戟拓扑。我正在使用组织。阿帕奇。暴风雨hbase包
我的理解(如果我错了,请纠正我)是HBaseQuery读取给定行键的所有列值(或projectionCriteria中指定的列值),并使用字段(“columnName”、“columnValue”)单独输出每一列
例如,如果我有一个宠物表,rowKey是宠物名,一列是“type”,一列是“age”,stateQuery将接收带有值(“Fido”)的输入元组,并将输出两个独立的元组,其中:
值(“Fido”、“类型”、“狗”)
价值(“Fido”,“年龄”,11)
一些问题:
有没有办法在一个查询中从多个列中获取值?也就是说,我可以获得带有字段(“Name”、“column1Value”、“column2Value”)的单个输出吗
如果有一种方法可以将多个列中的值放入一个元组,那么如果它们属于不同的类型(例如,一个是字符串,一个是整数),是否仍然可以这样做
最终,我的目标是能够获取带有字段(“名称”)的输入元组,并获取带有字段(“名称”、“类型”、“年龄”)的单个输出元组,例如值(“Fido”、“Dog”,11)和值(“Kibbles先生”、“Cat”,4)。如果不可能使用上述方法,如何实现
谢谢你的帮助
# 1 楼答案
我自己解决了这个问题,在这里为子孙后代发帖:
我之所以遇到困难,是因为我在WordCountValueMapper的基础上进行构建,而实际上并不了解它是如何被使用的。对结果课进行更深入的挖掘会有所帮助
以下是我现在如何实施它:
在WordCountValueMapper中,它们遍历结果中的每个单元格,这相当于遍历每个列。取而代之的是,我取下整个单元格数组,然后取出值。没什么聪明的,我只是以前不懂