所以我的级联中有一个巨大的管道,如下所示:
K1 - {V1, V2, V3}
K2 - {V4, V5, V6}
无论如何使用Every管道聚合它们,使得输出看起来沿着这些线:
OutputPipe = new Every(OutputPipe, Fields.ALL, SomeBuffer());
谢谢!
编辑:
到目前为止我的代码:
我正在调用Every Pipe
@Override
public void operate( FlowProcess flowProcess, BufferCall bufferCall )
{
TupleEntry group = bufferCall.getGroup();
// get all the current argument values for this grouping
Iterator<TupleEntry> arguments = bufferCall.getArgumentsIterator();
// create a Tuple to hold our result values
String result = "";
String key = "";
if (arguments.hasNext()) {
TupleEntry argument = arguments.next();
key = argument.getString("key") + "\t";
}
while (arguments.hasNext()) {
TupleEntry argument = arguments.next();
result += argument.getString("value") + "\t";
}
bufferCall.getOutputCollector().add(new Tuple(key, result));
}
我正在覆盖缓冲区中的操作方法:
articles_photos
我得到的输出有点奇怪。我一直在阅读文件中得到奇怪的结果,所以我猜我的逻辑在每一个管道都是错的。