2015-07-17 2 views
0

Привет, я попытался выполнить операцию поиска по моим данным с помощью Apache pig. Мой код похож на нижеИспользование поиска свиней на нескольких столбцах

data = load 'sample.txt' using PigStorage(',') as (id:chararray, fname:chararray, lname:chararray); 
C = filter data by fname matches '.*Ma.*'; 
D = foreach C generate construction; 
dump D; 

Здесь я могу найти данные как для fname, так и для lname. Но я хочу выполнить поиск по обоим столбцам.

Я пробовал как ниже 1) применил фильтр к данным, добавив условие поиска на fname.

2) применяется фильтр на данных, добавляя условие поиска на LName

3) Союз как результат поиска;

Это правильный путь или любые другие полезные предложения.

+0

Использование ИЛИ условие FILTER должно помочь. Сообщите нам, если нет. –

ответ

1

Используйте OR и выполнять поиск в одном ФИЛЬТР

C = filter data by fname matches '.*Ma.*' OR lname matches '.*Ma.*';