在Pig Latin中将元组字段的所有字段进行比较

时间:2014-05-02 01:42:57

标签: apache-pig

我需要做什么: 比较我在一个字段(来自数据库)中获得的所有值,并检查它们是否都是相等的.i.e。

A = 
(John,18,4.0F)
(Mary,19,3.8F)
(Bill,20,3.9F)
(Joe,18,3.8F)

如果它们都相等,则返回值' true&#39 ;;别的价值'假' 。理想情况下,我需要在字段级别使用DISTINCT函数。

这里第2列(引用为$ 1会产生真值,因为有2' 18'值)。

我在考虑对包本身进行交叉连接,以便能够比较这些值,例如:

 (John, 18, 4.0F, Mary, 19 , ..)
 (Mary, 19, 3.8F, Bill, 20, .. )

...

然后能够将第2列和第5列(我的1美元和4美元)放在一起,这变得微不足道。

但表现会受到影响。 (并且不确定是否有效)。 还有其他想法吗?

干杯, 马特

1 个答案:

答案 0 :(得分:0)

您可以编写Pig UDf并传递要在UDF中排序的所有值,然后仅比较相邻的值。如果你能更清楚地解释你的用例,那将会有所帮助。