如何与猪生成组合

时间:2015-07-03 09:06:44

标签: apache-pig

我有这样的地图

{Tim, [Badminton, Basketball]}
{Viola, [Badminton, Baseball]}
{David, [Basketball]}
....

我用猪来找到他们可以一起玩的游戏

例如,蒂姆和维奥拉可以一起打羽毛球 蒂姆,维奥拉,大卫不能一起玩

我还需要找到比N种类型的球类运动更多的组合。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

如果您改变呈现数据的方式,那就很简单了。

目前,你有:

{Tim, [Badminton, Basketball]}
{Viola, [Badminton, Baseball]}

现在,让我们考虑一下您的地图游戏,并拥有一个两列数据集:

{Tim, Badminton}
{Tim, Basketball}
{Viola, Badminton}
{Viola, Baseball}

您在第二列上分组,您将立即拥有可以一起玩的人。

还可以使用DataFu Bag的加入BagLeftOuterJoin。但是,根据您的示例,它可能不值得。