Как добиться "INSERT IGNORE", используя PRESTO - PullRequest
0 голосов
/ 30 октября 2019

Так что в моем MYSQL вы можете использовать синтаксис INSERT IGNORE при выполнении вставки, а не выдавать ошибку при вставке дублирующейся строки, а просто игнорировать эту строку

Я бы хотел добиться того же в Prestoработать с базой данных Hive, если это возможно?

Я знаю, что hive не является настоящей реляционной базой данных в том смысле, что документация для оператора INSERT в Presto является очень простой

Я просто хотел бы знать,есть простой обходной путь, так как все, что я могу придумать, - это сначала сделать выбор с курсором, чтобы просмотреть результаты и вставить

1 Ответ

1 голос
/ 30 октября 2019

До Hive 3 концепция уникальных ограничений отсутствует, и даже в Hive 3 ограничения не применяются, насколько мне известно.

Следовательно, коннектор Presto Hive не применяет никаких уникальных ограничений, поэтому вашЗапрос INSERT никогда не завершится неудачей, когда вы вставите дублированные строки. Они просто будут храниться в виде независимых копий данных.

Если вы хотите сохранить уникальность, это необходимо обрабатывать извне, на уровне приложения.

...