экспорт из hive в sqlsrver с использованием sqoop

#sql-server #hadoop #mapreduce #sqoop #sqoop2

#sql-сервер #hadoop #mapreduce #sqoop #sqoop2

Вопрос:

я пытаюсь экспортировать данные из hive на сервер mssql, я знаю, что sqoop и sql server в порядке, поскольку я могу экспортировать другую таблицу без проблем.

Ошибка, которую я получаю:

14/06/19 14:48:37 ИНФОРМАЦИЯ mapreduce.Задание: Идентификатор задачи: attempt_1403175168750_0031_m_000003_0, Статус: СБОЙ Ошибка: java.io.IOException: не удается экспортировать данные, пожалуйста, проверьте журналы неудачных задач map в org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:112) в org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:39) в org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145) в org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64) в org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764) в org.apache.hadoop.mapred.MapTask.run(MapTask.java:340) в org.apache.hadoop.mapred.YarnChild$2.запустите (YarnChild.java:168) в java.security.AccessController.doPrivileged (собственный метод) в javax.security.auth.Subject.doAs(Subject.java:415) в org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548) в org.apache.hadoop.mapred.YarnChild.main(YarnChild.java: 163) Вызвано: java.lang.RuntimeException: не удается проанализировать входные данные: «Возможно, вы питаете тайные иллюзии о том, как вы хотите li… Больше для Virgo http://t .co/Jnt91NMNt5‘ в StageFlumeTweets.__loadFromFields(StageFlumeTweets.java:236) в StageFlumeTweets.parse(StageFlumeTweets.java:174) в org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:83) … еще 10 Вызвано: java.lang.NumberFormatException: для входной строки: «Возможно, вы питаете тайные иллюзии о том, как вы хотите использовать li… Больше для Virgo http://t.co/Jnt91NMNt5 » в java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) в java.lang.Long.parseLong(Long.java:441) в java.lang.Long.valueOf(Long.java:540) в StageFlumeTweets.__loadFromFields(StageFlumeTweets.java:228) … еще 12

Команда, которую я использую для экспорта данных:

экспорт sqoop —подробный —подключение «jdbc: sqlserver://xx;база данных = xx; имя пользователя = xx; пароль = xx» —экспорт-директория / user / hive / warehouse/xx/ twitter_bulk2/ —таблица StageFlumeTweets —поля ввода-завершаются ‘,’

Файл с данными — это просто tweetid и текст, подобный этому:

468751929271517185, RT @BestofScorpio: Женщина может хотеть тебя, но ты ей не нужен. 468751929565130752, мне нужно позаимствовать у кого-нибудь красную помаду для этого

Ответ №1:

Вы получаете NumberFormatException .

Это может быть проблемой переполнения (учитывая размер tweedid ). Объявлено ли соответствующее поле в Sql Server как bigint ?