исключение sqoop export java.lang.NumberFormatException

#mysql #hive #sqoop

#mysql #улей #sqoop

Вопрос:

Я создал таблицу с нижеприведенным форматом в улье

create table test(id int, name string, age int) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

id int
name string
age int

Я загрузил приведенные ниже данные из текстового файла в таблицу hive

1,abc,10
2,xyz,20
3,def,30

Я проверил таблицу, и данные загружены нормально. Теперь я создал таблицу в MySQL с приведенными ниже столбцами и попытался экспортировать sqoop из hive в MySQL, и это не удалось с java.lang.NumberFormatException: для входной строки. Можете ли вы, ребята, сообщить мне, в чем ошибка, которую я делаю?

create table test1(id int,age int);

Моя команда Sqoop

экспорт sqoop 
--подключение 
--имя пользователя 
--пароль 
--экспорт-расположение каталога 
--проверка таблицы 
--идентификатор столбцов, возраст 
--поля-завершаются-символом ","

Комментарии:

1. Порядок столбцов также очень важен при экспорте данных, предположим, если вы создали таблицу mysql с именами столбцов в качестве id, name, которые совпадают с таблицей hive, а затем попытаетесь экспортировать данные, которые она успешно экспортирует в таблицу mysql. Я не знаю, есть ли возможность экспортировать, даже если столбцы не в порядке, надеюсь, что кто-нибудь из сообщества ответит на этот вопрос наилучшим образом

2. чего вы хотите достичь? хотите экспортировать данные из hdfs или экспортировать из hive таблицы, оба имеют небольшое различие.

3. @Gaurang У меня есть таблица в hive с 3 столбцами, и я хочу, чтобы эта таблица была экспортирована в базу данных MySQL, но мне нужны только последние два столбца таблицы hive, могу ли я этого добиться?

4. @Johny_Bravo Вы решили эту проблему? Я тоже обнаружил эту ошибку с меньшим количеством столбцов в Hive, чем в Oracle, пусть говорит, что в HIve у меня есть c, d, e, а в Oracle у меня есть a, b, c, d, e, и я хочу экспортировать с помощью обновления только e с c, d в качестве ключей обновления.