2013-06-05 4 views
0

Я не могу использовать 2 ОДС вместеPig UDF проблема загрузки

REGISTER 'pig.jar'; 
REGISTER 'piggybankjar'; 
DEFINE UnixToISO org.apache.pig.piggybank.evaluation.datetime.convert.UnixToISO(); 
DEFINE ToDate org.apache.pig.builtin.ToDate(); 

Это ошибка, что я получаю: Не удалось вывести функцию согласования для org.apache.pig.piggybank.evaluation .datetime.convert.UnixToISO как несколько или ни один из них не подходит. Пожалуйста, используйте явное приведение.

Когда я не регистрирую pig.jar, эта ошибка уходит, но тогда он не может загрузить ToDate UDF?

Я пропустил что-то основное здесь? Любая помощь приветствуется. Спасибо

+0

Не уверен, что это опечатка или нет, но вы ставите 'piggybankjar' вместо' piggybank.jar', можете ли вы подтвердить, что это просто опечатка? –

+0

Вам нужно зарегистрировать pig.jar - неужели это встроено? –

+0

@CharlesMenguy Это просто опечатка, когда я разместил вопрос .... не присутствовал в подлинном скрипте свиньи – rahul

ответ

1

Я столкнулся с подобной ошибкой при работе с Pig.Till now, во всех случаях, с которыми я столкнулся, это сообщение об ошибке вводит в заблуждение. У меня была такая же ошибка для встроенной функции SUM. После тщательного анализа я понял, что передал неправильный ввод функции SUM, и проблема была в GROUPing. Поэтому я бы посоветовал снова проверить ваш свиной скрипт; скорее всего, есть что-то еще неправильное, скорее всего, какое-то неправильное отношение подается по потоку.

Смежные вопросы