Pig Query - дает противоречивые результаты в AWS EMR - PullRequest
0 голосов
/ 21 октября 2018

Я новичок в PIG.Я написал один запрос, который не работает, как ожидалось.Я пытаюсь обработать предоставленный мне набор данных Google Ngrams.

  1. Я загружаю данные размером 1 ГБ

    bigrams = LOAD '$(INPUT)' AS (bigram:chararray, year:int, occurrences:int, books:int);
    
  2. Затем выбираюподмножество, которое ограничено 2000 записями

    limbigrams = LIMIT bigrams 2000;
    
  3. Затем просмотрите дамп ограниченных данных (вставка примера выборки)

    (GB product,2006,1,1)
    (GB product,2007,5,5)
    (GB wall_NOUN,2007,27,7)
    (GB wall_NOUN,2008,35,6)
    (GB2 ,_.,1906,1,1)
    (GB2 ,_.,1938,1,1)
    
  4. Теперь я делаю группу по лимбиграммам

    D = GROUP limbigrams BY bigram;
    
  5. Когда я вижу дамп данных DI, вижу совершенно другой набор данных (пример)

    (GLABRIO . , 1977,3,3), (GLABRIO . , 1992,3,3), (GLABRIO . , 1997,1,1),(GLABRIO . , 2000, 6,6), (GLABRIO . , 2001,9,1), (GLABRIO . , 2002, 24, 3), (GLABRIO . , 2003,3,1)}) (СТЕКЛЯННЫЕ ФИЛЬМЫ, {(GLASS FILMS, 1978,1,1), (СТЕКЛЯННЫЕ ФИЛЬМЫ, 1976,2,1), (GLASS FILMS,1970,3,3), (GLASS FILMS, 1966, 7,1), (GLASS FILMS, 1962,1,1), (GLASS FILMS, 1958,1,1), (GLASS FILMS, 1955,1,1), (СТЕКЛЯННЫЕ ПЛЕНКИ, 1899,2,2), (СТЕКЛЯННЫЕ ПЛЕНКИ, 1986,6,3), (СТЕКЛЯННЫЕ ПЛЕНКИ, 1984,1,1), (СТЕКЛЯННЫЕ ПЛЕНКИ, 1980,7,3)})

Теперь я не присоединяю весь выход, потому что между обоими выходами нет ни одной строки перекрытия (т.е. до группировки и после группировки).Следовательно, действительно не имеет значения видеть выходные файлы.

Почему это происходит?

1 Ответ

0 голосов
/ 22 октября 2018

Свалки точные.Оператор GROUP BY в Pig создает одну запись для каждой группы и помещает каждую запись, принадлежащую этой группе, в пакет.Вы действительно можете увидеть это в последней записи вашего второго дампа.Пластинка обозначает группу GLASS FILMS и имеет сумку с записями, в которых биграмма называется GLASS FILMS.Подробнее об операторе GROUP BY можно прочитать здесь: https://www.tutorialspoint.com/apache_pig/apache_pig_group_operator.htm

...