Мы пытаемся скопировать около 900 миллионов строк из таблиц Hive в Aurora PostgreSQL (AWS).Так как у нас было ограничение первичного ключа в целевой таблице, оно выдало ошибки нарушения ограничения, и копирование не удалось.Итак, мы попытались удалить ограничение, пока копия не будет завершена.Точное количество строк было успешно скопировано за 30 минут.Но, когда мы изучаем данные, у них есть несколько дубликатов и несколько строк из источника.Имеется в виду, скажем, у нас были строки -a, row-b, row-c, row-d в источнике.Теперь в пункте назначения ровно 4 строки, но в нем есть row-a, row-b, row-b , row-d.То есть строка b копируется дважды, а строка c пропускается.
В этом случае 1. мы не можем добавить первичный ключ.и 2. Мы теряем около 1 миллиона исходных строк в этом процессе.
Ниже приведена наша команда экспорта:
sqoop export \ -libjars / usr / hdp / current / sqoop-client / lib / RedshiftJDBC42-1.2.12.1017.jar \ --driver com.amazon.redshift.jdbc42.Driver \ --connect jdbc: postgresql: //myClusterEndpoint.rds.amazonaws.com: 5455 / DB_NAME? sslmode = require & ssl =true \ --table myTable \ --export-dir / data / external / myDataFile \ --input-fields-terminated-by "," \ --username myUserNamer \ --password myPassword \ -m 500 \
Кто-нибудь сталкивался с такой проблемой или знает о причине, пожалуйста, поделитесь своим опытом и помогите нам решить эту проблему.Заранее спасибо.