如何与猪生成组合

How to generate combination with pig

我有一张这样的地图

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

我用pig找他们可以一起玩哪些游戏

例如,蒂姆和维奥拉可以一起打羽毛球 Tim、Viola、David 不能一起玩

我还要找什么组合能玩出N种以上的球类游戏

我该怎么做?

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

目前,您有:

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

现在,假设您将地图游戏扁平化并拥有一个两列数据集:

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

你在第二栏分组,马上就有可以一起玩的人了。

也可以使用DataFu Bag的join BagLeftOuterJoin。但是,以您的示例为例,这可能不值得。