Apache PIG: как проверить, действительно ли я параллельно обрабатываю файлы? - PullRequest
0 голосов
/ 14 февраля 2020

Я играю с Apache Свинья. Я хочу проверить / проверить / убедиться, что я действительно читаю, а затем параллельно обрабатываю входные файлы в Apache Pig.

Проблема: у меня более 100 ТБ данных в тысячах файлов. Каждый файл имеет несколько ГБ. Мне действительно нужен способ их параллельной обработки.

Вот мой скрипт, который пытается прочитать пять таких файлов:

DEFINE UniTable         cass.UniTable(); 

tmp1 = LOAD 'id1/id2' using UniTable();
tmp2 = LOAD 'id3/id4' using UniTable();
tmp3 = LOAD 'id5/id6' using UniTable();
tmp4 = LOAD 'id7/id8' using UniTable();
tmp5 = LOAD 'id9/id10' using UniTable();

bb1 = FILTER tmp1 BY (ik1i == 14 AND ik2i == 14);
bb2 = FILTER tmp2 BY (ik1i == 14 AND ik2i == 14);
bb3 = FILTER tmp3 BY (ik1i == 14 AND ik2i == 14);
bb4 = FILTER tmp4 BY (ik1i == 14 AND ik2i == 14);
bb5 = FILTER tmp5 BY (ik1i == 14 AND ik2i == 14);
bbu = UNION bb1, bb2, bb3, bb4, bb5;
bb = GROUP bbu ALL;
bbcount = FOREACH bb  GENERATE COUNT(bbu.ik1i);
DUMP bbcount;

UniTable - это мой LoadFun c, который просто читает «мои данные» в Pig (требуется несколько входных аргументов, не важно).

Я добавил сообщения LOG в свой класс UniTable и вижу в LOGS, что каждый файл обрабатывается последовательно: он открывается, затем закрыто, затем открывается и закрывается следующий и т. д. c. et c.

У меня работает кластер oop -2.7.6. Я запускаю эту Apache Свинью в режиме (-x mapreduce).

Что я делаю не так?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...