Utilização em cláusula com filtro de suínos

O apoio dos suínos na cláusula?

filtered = FILTER bba BY reason not in ('a','b','c','d');
Ou devo dividi-lo em vários bo?

Obrigado!

Author: Alex Raj Kaliamoorthy, 2011-08-24

6 answers

 2
Author: Icarus, 2011-08-24 16:58:42

Em vez disso, pode usar o udf a partir do Apache DataFu. Isto irá ajudá-lo a evitar escrever muito de OR.

Https://github.com/linkedin/datafu/blob/master/src/java/datafu/pig/util/InUDF.java

 6
Author: kris, 2014-03-21 18:20:33

Porco 0, 12 adicionado ao Operador http://www.edureka.co/blog/operators-in-apache-pig-diagnostic-operators / ver o fim da página..Nota. Não o localizei em documentos oficiais (além da simples menção nas notas de lançamento)

 3
Author: seanv507, 2014-09-09 07:00:09
Não, o porco não suporta a cláusula. Tive uma situação semelhante. Embora você pode usar e operador e filtrar palavra-chave como um trabalho ao redor. tipo

A = LOAD 'source.txt ' AS (utilizador: chararray, idade: chararray);

B= Filtro A por ($1 corresponde a 'tapan') e ($1 corresponde a 'super-homem');

No entanto, se o número de filtragem necessário for enorme. Então, provavelmente, você pode apenas criar uma relação que contém todas essas palavras-chave e fazer uma junção para filtrar onde a ocorrência corresponde. Esperar ajuda.

 1
Author: Tapan Avasthi, 2012-05-15 08:43:24

Podemos utilizar a seguinte cláusula:

A = FILTER alias_name BY col_name IN (val1, val2,...,valn);

DUMP A;
 1
Author: Prashant_M, 2017-02-12 10:15:51

Você pode fazer isso gosta:

X = FILTER bba BY NOT reason IN ('a','b','c','d');

Mais informações

 1
Author: Tarivs, 2017-12-07 08:52:51