Hadoop 微调功能导致CDH3上的输出出现问题

Hadoop 微调功能导致CDH3上的输出出现问题,hadoop,apache-pig,Hadoop,Apache Pig,以下代码导致CDH3群集中出现问题: -- Case 1 A = FILTER XYZ BY (TRIM(var1) != 'U') AND (TRIM(var2) == 'N') AND (var3) == 'Y'); 如果我正在执行以下代码,则会得到不同的结果(请注意,我已删除下面代码中的TRIM): 如果我正在执行以下代码,得到与案例2相同的结果(请注意,我首先从NOT操作符中删除了TRIM): 如果我在三个不同的过滤器中按顺序执行所有条件(带TRIM或不带TRIM),得到与情况2和情况

以下代码导致CDH3群集中出现问题:

-- Case 1
A = FILTER XYZ BY (TRIM(var1) != 'U') AND (TRIM(var2) == 'N') AND (var3) == 'Y');
如果我正在执行以下代码,则会得到不同的结果(请注意,我已删除下面代码中的
TRIM
):

如果我正在执行以下代码,得到与案例2相同的结果(请注意,我首先从
NOT
操作符中删除了
TRIM
):

如果我在三个不同的过滤器中按顺序执行所有条件(带
TRIM
或不带
TRIM
),得到与
情况2
情况3
相同的结果:

-- Case 4
A = FILTER XYZ BY (TRIM(var1) != 'U');
B = FILTER A BY (TRIM(var2) == 'N');
C = FILTER B BY (TRIM(var3) == 'Y');
STORE C;

-- Case 5
A = FILTER XYZ BY var1 != 'U';
B = FILTER A BY var2 == 'N';
C = FILTER B BY var3 == 'Y';
STORE C;
使用
TRIM
NOT
运算符以及运行
PIG 0.8的CDH3上的逻辑运算符时,是否有人遇到问题

我在CDH4中得到了相同的结果,无论我运行默认的
pig0.11

(var3)='Y')
打字错误吗?它不应该是
(var3=='Y')
-- Case 3
A = FILTER XYZ BY (var1 != 'U' AND (TRIM(var2) == 'N') AND (TRIM(var3) == 'Y');
-- Case 4
A = FILTER XYZ BY (TRIM(var1) != 'U');
B = FILTER A BY (TRIM(var2) == 'N');
C = FILTER B BY (TRIM(var3) == 'Y');
STORE C;

-- Case 5
A = FILTER XYZ BY var1 != 'U';
B = FILTER A BY var2 == 'N';
C = FILTER B BY var3 == 'Y';
STORE C;