Есть ли в Pig способ доставки архивного файла способом, подобным hadoop -archives? - PullRequest
0 голосов
/ 15 марта 2012

При запуске задания java mapreduce через hadoop вы можете указать опцию -archives, чтобы выбрать архивные файлы, которые должны быть загружены вместе с заданием и которые автоматически разархивируются, чтобы код мог получить доступ к этим файлам.

Есть ли что-нибудь подобное в Свинье? Я пишу UDF, который использует библиотеку (что у меня нет доступа к ее исходному коду). Эта библиотека требует путь к каталогу, из которого она загружает некоторые файлы внутри.

Как я могу отправить такой каталог со свиньей?

Ответы [ 2 ]

1 голос
/ 16 марта 2012

Ответ на этот вопрос прост и уже упоминался в https://stackoverflow.com/a/4966099

Правильный способ сделать это -

  1. Поместите файл, который вы хотите быть доступным локально для каждой работы в dfs
  2. Запустите pig, сообщая ему, что он должен использовать этот файл из dfs следующим образом

    pig ... -Dmapred.cache.archives = hdfs: // хост: порт / путь / GeoIP.dat.zip # GeoIP.dat -Dmapred.create.symlink = yes ...

0 голосов
/ 16 марта 2012

Взгляните на корабль .

...