2017-02-13 12 views
0

Класс Pyspark DataFrameWriter имеет jdbc function для записи dataframe в sql. Эта функция имеет опцию --ignore, о которой говорится в документации:Не игнорирует ли параметр функции Pyspark DataFrameWriter jdbc игнорировать всю транзакцию или просто оскорбляет строки?

Молчаливое игнорирование этой операции, если данные уже существуют.

Но проигнорирует ли она всю транзакцию или будет игнорировать вставку строк, которые являются дубликатами? Что делать, если я должен был объединить --ignore с флагом --append? Изменится ли поведение?

ответ

1

mode("ingore") - это просто NOOP, если таблица (или другая раковина) уже существует, и режимы записи не могут быть объединены. Если вы ищете что-то вроде INSERT IGNORE или INSERT INTO ... WHERE NOT EXISTS ..., вам придется делать это вручную, например, с помощью mapPartitions.