Я пытаюсь понять, как sqoop экспорт works.I имеет место таблицы в MySQL, которая содержит два столбца идентификатор и URL и содержит два рядаSqoop экспорт вставив дубликаты записи
1,www.yahoo.com
2,www.gmail.com
Таблицы не имеет первичный ключ
Когда я экспортировать записи из HDFS в таблицу MySQL сайта, выполнив следующую команду его входа дублированные записи
у меня ниже записей в HDFS
1,www.one.com
2,www.2.com
3,www.3.com
4,www.4.com
sqoop export --table site --connect jdbc:mysql://localhost/loudacre -- username training --password training --export-dir /site/ --update-mode allowinsert --update-key id
Таким образом, вместо обновления уже существующего идентификатора его вставки дубликата идентификатор еще раз (то есть два 1, 1 для www.one.com и 1 для www.yahoo.com)
даже если удалить --update ключ исход same.Does его происходит потому, что таблица не имеет первичного ключа
Я использую sqoop 1.4.5 в Cloudera QuickStart VM
Любая помощь?
Да, когда id = 1, он обновит строку, но я не понимаю, почему она снова вставляет новую запись с id = 1. Я делаю что-то неправильно. –
@Deepak_Spark_Beginner, как вы сказали, 'id' не является первичным ключом. Вы создали уникальный индекс в поле 'id'? –
В моей таблице нет этого. Я создам его, а затем попробую. Спасибо за быстрый ответ –