ОШИБКА 1066: невозможно открыть итератор для псевдонима — PIG SCRIPT

Я сталкиваюсь с этой проблемой уже давно. Я пытался решить это, но не смог. Мне нужен совет экспертов, чтобы решить эту проблему.

Я пытаюсь загрузить образец json-файла твитов.

sample.json;-

{"filter_level":"low","retweeted":false,"in_reply_to_screen_name":"FilmFan","truncated":false,"lang":"en","in_reply_to_status_id_str":null,"id":689085590822891521,"in_reply_to_user_id_str":"6048122","timestamp_ms":"1453125782100","in_reply_to_status_id":null,"created_at":"Mon Jan 18 14:03:02 +0000 2016","favorite_count":0,"place":null,"coordinates":null,"text":"@filmfan hey its time for you guys follow @acadgild To #AchieveMore and participate in contest Win Rs.500 worth vouchers","contributors":null,"geo":null,"entities":{"symbols":[],"urls":[],"hashtags":[{"text":"AchieveMore","indices":[56,68]}],"user_mentions":[{"id":6048122,"name":"Tanya","indices":[0,8],"screen_name":"FilmFan","id_str":"6048122"},{"id":2649945906,"name":"ACADGILD","indices":[42,51],"screen_name":"acadgild","id_str":"2649945906"}]},"is_quote_status":false,"source":"<a href=\"https://about.twitter.com/products/tweetdeck\" rel=\"nofollow\">TweetDeck<\/a>","favorited":false,"in_reply_to_user_id":6048122,"retweet_count":0,"id_str":"689085590822891521","user":{"location":"India ","default_profile":false,"profile_background_tile":false,"statuses_count":86548,"lang":"en","profile_link_color":"94D487","profile_banner_url":"https://pbs.twimg.com/profile_banners/197865769/1436198000","id":197865769,"following":null,"protected":false,"favourites_count":1002,"profile_text_color":"000000","verified":false,"description":"Proud Indian, Digital Marketing Consultant,Traveler, Foodie, Adventurer, Data Architect, Movie Lover, Namo Fan","contributors_enabled":false,"profile_sidebar_border_color":"000000","name":"Bahubali","profile_background_color":"000000","created_at":"Sat Oct 02 17:41:02 +0000 2010","default_profile_image":false,"followers_count":4467,"profile_image_url_https":"https://pbs.twimg.com/profile_images/664486535040000000/GOjDUiuK_normal.jpg","geo_enabled":true,"profile_background_image_url":"http://abs.twimg.com/images/themes/theme1/bg.png","profile_background_image_url_https":"https://abs.twimg.com/images/themes/theme1/bg.png","follow_request_sent":null,"url":null,"utc_offset":19800,"time_zone":"Chennai","notifications":null,"profile_use_background_image":false,"friends_count":810,"profile_sidebar_fill_color":"000000","screen_name":"Ashok_Uppuluri","id_str":"197865769","profile_image_url":"http://pbs.twimg.com/profile_images/664486535040000000/GOjDUiuK_normal.jpg","listed_count":50,"is_translator":false}}

Я попытался загрузить этот json-файл с помощью ELEPHANT BIRD.

сценарий:-

REGISTER json-simple-1.1.1.jar 
REGISTER elephant-bird-2.2.3.jar 
REGISTER guava-11.0.2.jar 
REGISTER avro-1.7.7.jar
REGISTER piggybank-0.12.0.jar


twitter = LOAD 'sample.json' USING com.twitter.elephantbird.pig.load.JsonLoader();

B = foreach twitter generate (chararray)$0#'created_at' as created_at,(chararray)$0#'id' as id,(chararray)$0#'id_str' as id_str,(chararray)$0#'text' as text,(chararray)$0#'source' as source,com.twitter.elephantbird.pig.piggybank.JsonStringToMap($0#'entities') as entities,(boolean)$0#'favorited' as favorited;

describe B;

ВЫВОД:-

B: {created_at: chararray,id: chararray,id_str: chararray,text: chararray,source: chararray,entitis: map[chararray],favorited: boolean}

Но когда я попытался DUMP B, произошла следующая ошибка

ОШИБКА org.apache.pig.tools.grunt.Grunt — ОШИБКА 1066: невозможно открыть итератор для псевдонима B

Я предоставляю полные журналы здесь.

И, пожалуйста, дайте разъяснение о том, как использовать файлы jar,

И какие версии использовать. Я так запутался, какую версию использовать.

Кто-то говорит использовать Elephant Bird, а кто-то говорит использовать AVRO. Но у меня с обоими не работают.

Пожалуйста помоги.

Мохан.В

Я получил это самостоятельно. Это проблема версий jar. сценарий:-


person Bunny    schedule 11.09.2016    source источник


Ответы (1)


И это работало нормально.

REGISTER elephant-bird-core-4.1.jar 
REGISTER elephant-bird-pig-4.1.jar 
REGISTER elephant-bird-hadoop-compat-4.1.jar

2016-09-11 14:07:57,184 [основная] ИНФОРМАЦИЯ org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MultiQueryOptimizer — размер плана MR до оптимизации: 1 2016-09-11 14:07:57,184 [основная] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MultiQueryOptimizer — размер плана MR после оптимизации: 1 2016-09-11 14:07:57,194 [main] INFO org.apache.hadoop.metrics.jvm.JvmMetrics — Не удается инициализировать метрики JVM с помощью processName=JobTracker, sessionId= — уже инициализировано 11 сентября 2016 г. 14:07:57,194 [main] INFO org.apache.pig.tools.pigstats.mapreduce.MRScriptState — в задание добавлены настройки скрипта Pig 2016-09-11 14:07:57,194 [основная] ИНФОРМАЦИЯ org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler — mapred.job.reduce.markreset.buffer.percent не установлен, установлен по умолчанию 0.3 2016 -09-11 14:07:57,199 [main] ИНФОРМАЦИЯ org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler — Настройка задания с одним хранилищем 11 сентября 2016 г. 14:07:57,199 [ main] INFO org.apache.pig.data.SchemaTupleFrontend — ключ [pig.schematuple] имеет значение false, код не будет генерироваться. 2016-09-11 14:07:57,199 [основная] ИНФОРМАЦИЯ org.apache.pig.data.SchemaTupleFrontend — запуск процесса перемещения сгенерированного кода в распределенный кэш 2016-09-11 14:07:57,199 [основная] ИНФОРМАЦИЯ org.apache .pig.data.SchemaTupleFrontend — распределенный кэш не поддерживается или не требуется в локальном режиме. Ключ установки [pig.schematuple.local.dir] с временным каталогом кода: /tmp/1473583077199-0 11.09.2016 14:07:57,206 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer. MapReduceLauncher — 1 задание по уменьшению карты ожидает отправки. 2016-09-11 14:07:57,207 [JobControl] INFO org.apache.hadoop.metrics.jvm.JvmMetrics — невозможно инициализировать метрики JVM с помощью processName=JobTracker, sessionId= — уже инициализировано 2016-09-11 14:07:57,208 [JobControl] ПРЕДУПРЕЖДЕНИЕ org.apache.hadoop.mapreduce.JobResourceUploader — Не задан JAR-файл задания. Пользовательские классы могут быть не найдены. См. Job или Job#setJar(String). 2016-09-11 14:07:57,211 [JobControl] INFO org.apache.hadoop.mapreduce.lib.input.FileInputFormat — Всего входных путей для обработки: 1 2016-09-11 14:07:57,211 [JobControl] INFO org .apache.pig.backend.hadoop.executionengine.util.MapRedUtil — Всего входных путей (в совокупности) для обработки: 1 2016-09-11 14:07:57,212 [JobControl] INFO org.apache.hadoop.mapreduce.JobSubmitter — число кол-во расщеплений: 1 2016-09-11 14:07:57,216 [JobControl] INFO org.apache.hadoop.mapreduce. JobSubmitter — Отправка токенов для задания: job_local360376249_0009 2016-09-11 14:07:57,267 [JobControl] INFO org.apache.hadoop.mapreduce.Job — URL-адрес для отслеживания задания: http://localhost:8080/ 2016-09-11 14:07:57,267 [Thread-214] INFO org.apache.hadoop.mapred.LocalJobRunner — OutputCommitter установлен в config null 11 сентября 2016 г., 14:07:57,270 [Thread-214] INFO org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter — версия алгоритма Committer вывода файлов — 1 11 сентября 2016 г., 14:07:57,270 [ Thread-214] INFO org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter — FileOutputCommitter пропустить очистку _temporary папок в выходном каталоге: false, игнорировать ошибки очистки: false 2016-09-11 14:07:57,270 [Thread-214] INFO org.apache.hadoop.mapred.LocalJobRunner — OutputCommitter is org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigOutputCommitter 2016-09-11 14:07:57,271 [Thread-214] INFO org.apache.hadoop. м apred.LocalJobRunner — Ожидание задач карты 2016-09-11 14:07:57,272 [LocalJobRunner Map Task Executor #0] INFO org.apache.hadoop.mapred.LocalJobRunner — Запуск задачи: try_local360376249_0009_m_000000_0 2016-09-07: 14 57,277 [LocalJobRunner Map Task Executor #0] INFO org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter — версия алгоритма фиксации файла вывода 1 2016-09-11 14:07:57,277 [LocalJobRunner Map Task Executor #0] INFO org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter — FileOutputCommitter пропустить очистку _temporary папок в выходном каталоге: false, игнорировать ошибки очистки: false 2016-09-11 14:07:57,277 [LocalJobRunner Map Task Executor #0] INFO org .apache.hadoop.mapred.Task — использование ResourceCalculatorProcessTree : [ ] 2016-09-11 14:07:57,278 [LocalJobRunner Map Task Executor #0] INFO org.apache.hadoop.mapred.MapTask — разделение обработки: Количество разделений: 1 Общая длина = 2416 Ввод split[0]: Длина = 2416 ClassName: org. Расположение apache.hadoop.mapreduce.lib.input.FileSplit: ----------------------- 2016-09-11 14:07:57,282 [LocalJobRunner Map Task Executor #0] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigRecordReader — Текущий обрабатываемый файл разделения: /root/PIG/PIG/sample.json:0+2416 2016-09-11 14:07: 57,282 [LocalJobRunner Map Task Executor #0] INFO org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter — версия алгоритма фиксации файла вывода 1 2016-09-11 14:07:57,282 [LocalJobRunner Map Task Executor #0] INFO org.apache.hadoop.mapreduce.lib.output. FileOutputCommitter — FileOutputCommitter пропустить _temporary папки очистки в выходном каталоге: false, игнорировать ошибки очистки: false .schematuple] не был установлен... не будет генерировать код. 2016-09-11 14:07:57,290 [LocalJobRunner Map Task Executor #0] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapOnly$Map — псевдонимы обрабатываются на каждом этапе задания (псевдоним [line, offset] ): M: twitter[20,10],B[21,4] C: R: 2016-09-11 14:07:57,291 [Thread-214] INFO org.apache.hadoop.mapred.LocalJobRunner — исполнитель задачи карты полный. 11 сентября 2016 г., 14:07:57,296 [Thread-214] ПРЕДУПРЕЖДЕНИЕ org.apache.hadoop.mapred.LocalJobRunner — job_local360376249_0009 java.lang.Exception: java.lang.IncompiledClassChangeError: Найден интерфейс org.apache.hadoop. mapreduce.Counter, но ожидался класс в org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:462) в org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner. java:522) Причина: java.lang.IncompatibleClassChangeError: Обнаружен интерфейс org.apache.hadoop.mapreduce.Counter, но ожидался класс в com.twitter.elephantbird.pig.util.PigCounterHelper.incrCounter(PigCounterHelper.java:55) на com.twitter.elephantbird.pig.load.LzoBaseLoadFunc.incrCounter(LzoBaseLoadFunc.java:70) на com.twitter.elephantbird.pig.load.JsonLoader.getNext(JsonLoader.java:130) на org.apache.pig.backend .hadoop.executionengine.mapReduceLayer.PigRecordReader.nextKeyValue(PigRecordReader.java:204) в org.apache.hadoop.mapred.MapTask$NewT rackingRecordReader.nextKeyValue(MapTask.java:556) в org.apache.hadoop.mapreduce.task.MapContextImpl.nextKeyValue(MapContextImpl.java:80) в org.apache.hadoop.mapreduce.lib.map.WrappedMapper$Context.nextKeyValue( WrappedMapper.java:91) в org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145) в org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787) в org.apache.hadoop .mapred.MapTask.run(MapTask.java:341) в org.apache.hadoop.mapred.LocalJobRunner$Job$MapTaskRunnable.run(LocalJobRunner.java:243) в java.util.concurrent.Executors$RunnableAdapter.call(Исполнители .java:511) в java.util.concurrent.FutureTask.run(FutureTask.java:266) в java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) в java.util.concurrent.ThreadPoolExecutor$Worker. run(ThreadPoolExecutor.java:617) на java.lang. Thread.run(Thread.java:745) 11.09.2016 14:07:57,467 [основная] ИНФОРМАЦИЯ org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher — HadoopJobId: job_local360376249_0009 11.09.2016 14: 07:57,467 [основная] ИНФОРМАЦИЯ org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher — обработка псевдонимов B,twitter 11.09.2016 14:07:57,467 [основная] ИНФОРМАЦИЯ org.apache.pig.backend. hadoop.executionengine.mapReduceLayer.MapReduceLauncher — подробные локации: M: twitter[20,10],B[21,4] C:R: 2016-09-11 14:07:57,468 [main] INFO org.apache.pig. backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher — завершено 0% 11 сентября 2016 г. 14:07:57,468 [main] ПРЕДУПРЕЖДЕНИЕ org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher — Ой! Какая-то работа не удалась! Укажите -stop_on_failure, если вы хотите, чтобы Pig немедленно останавливался при сбое. 2016-09-11 14:07:57,468 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher — задание не удалось! Остановить все зависимые задания ] INFO org.apache.hadoop.metrics.jvm.JvmMetrics — невозможно инициализировать метрики JVM с помощью processName=JobTracker, sessionId= — уже инициализировано 11 сентября 2016 г. 14:07:57,469 [main] INFO org.apache.hadoop.metrics. jvm.JvmMetrics — невозможно инициализировать метрики JVM с помощью processName = JobTracker, sessionId = — уже инициализировано 11 сентября 2016 г. 14:07:57,469 [основная] ОШИБКА (с) не удалось! 2016-09-11 14:07:57,470 [основная] ИНФОРМАЦИЯ org.apache.pig.tools.pigstats.mapreduce.SimplePigStats — Статистика сценария: HadoopVersionPigVersionUserIdStartedAtFinishedAtFeatures 2.7.1.2.3.4.7-40.15.0.2.3.4.7-4root2016- 09-11 14:07:572016-09-11 14:07:57НЕИЗВЕСТНО Ошибка! Неудачные задания: JobIdAliasFeatureMessageOutputs job_local360376249_0009B, twitterMAP_ONLYMessage: Ошибка задания! s): Не удалось получить результат в файле:/tmp/temp252944192/tmp-470484503. Счетчики: Всего записано записей: 0 Всего записано байтов: 0 Счетчик разлива диспетчера расширяемой памяти: 0 Всего пакетов, упреждающе удаленных: 0 Всего записей, упреждающих сбросов: 0 Работа DAG: job_local360376249_0009

person Bunny    schedule 12.09.2016