Профилирование производительности в скриптах Pig

#apache-pig

#apache-pig

Вопрос:

Выполнение некоторых из моих скриптов pig занимает много времени, поскольку данные, на которых они выполняют задания map reduce, огромны. Итак, я просто думал о способах ускорения скрипта. Может кто-нибудь предложить какие-либо идеи и высказать свои мысли. Задействовано много групповых полей, в то время как я группирую данные на основе комбинации двух или трех полей.

Одна идея, о которой я могу думать, — это наличие одного дополнительного поля при выполнении GROUP BY

 Data = GROUP BY (int) (RANDOM()*100) as reducers, field1, field2 etc
  

Поможет ли это, поскольку это потребует большего количества редукторов за счет введения одного дополнительного поля в GROUP BY. Я знаю, что размеры файлов выходной части станут меньше, но в целом это ускорит время выполнения скриптов pig.

Комментарии:

1. И если это ускорит весь процесс, каким должно быть количество редукторов, которые я должен в идеале установить, или настройка требует экспериментов.

2. Это не прямое решение вашей проблемы, но вы можете использовать оператор explain , чтобы увидеть, как ваш скрипт pig будет переведен в план выполнения.