我有一些分组数据:
glu: (
group:tuple(foo:bytearray, bar:chararray),
bam: bag {
:tuple(foo:bytearray, bar:chararray, pom:Long)
}
)
我想做的是做一个嵌套的交叉积来得到所有的pom对,还有一个过滤器来减少到只有第一个pom小于第二个pom的对。结果是这样的:
glu: (
group:tuple(foo:bytearray, bar:chararray),
bam: bag {
:tuple(foo:bytearray, bar:chararray, pom1:Long, pom2:Long)
}
)
比如:
glupairs = FOREACH glu {
pairs = CROSS bam, bam;
filtered = FILTER pairs BY (bam1 != bam2) AND (bam1 < bam2);
GENERATE group, filtered;
};
当然,这是行不通的。有办法吗?我能把一个关系的叉积取出来吗?以后如何选择字段(进行筛选)?
提前谢谢。
1条答案
按热度按时间mctunoxg1#
我是这样想的: