2010-01-24 8 views
0

У меня есть скрипт свиньи, который активирует другую программу python. Я был в состоянии сделать это в своей собственной среде hadoop, но я всегда терпим неудачу, когда запускаю свой сценарий на карте Amazon, уменьшая WS.Ключевое слово STREAM в скрипте свиньи, которое работает в Amazon Mapreduce

Журнал говорят:

org.apache.pig.backend.executionengine.ExecException: ОШИБКА 2090: Получено Ошибка при обработке уменьшить план: '' не удалось со статусом выхода: 127 в org.apache.pig .backend.hadoop.executionengine.mapReduceLayer.PigMapReduce $ Reduce.runPipeline (PigMapReduce.java:347) at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapReduce $ Reduce.processOnePackageOutput (PigMapReduce.java:288) at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapReduce $ Reduce.reduce (PigMapReduce.java:260) at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapReduce $ Reduce.reduce (PigMapRed uce.java:142) at org.apache.hadoop.mapred.ReduceTask.run (ReduceTask.java:321) at org.apache.hadoop.mapred.TaskTracker $ Child.main (TaskTracker.java:2216)

Любая идея?

ответ

0

Проблема решена! Все, что мне нужно, это использовать параметр кеша ('s3: //') при определении команды потоковой передачи

+0

Не могли бы вы продемонстрировать свою рабочую реализацию? Я нахожусь в одной лодке - я могу запустить UDF python для запуска в локальном режиме, но он не работает, когда я развертываю его в своем кластере. –

0

Вы уверены, что сценарий отправлен на задание Elastic MapReduce?

+0

№ Как я могу проверить его? – sagie

+0

Не уверен, но вы можете попробовать указать путь к скрипту как полный URL-адрес, включая s3: // и все такое, как если бы вы с JAR. См. Http://docs.amazonwebservices.com/ElasticMapReduce/latest/DeveloperGuide/index.html?introduction.html#UsingJarsWithPig – Theo