У меня есть фрейм данных, который создается с помощью запроса sql, к которому я затем добавляю столбец раздела, используя .withColumn, и использую insertInto. (позиция столбца точно такая же, как и в таблице с добавленным разделом в конце)
В зависимости от запроса иногда может быть 0.
Затем я запускаю:
spark.write.mode(SaveMode.OverWrite).insertInto(tableName);
Старые данные для этого раздела перезаписываются, когда в фрейме данных есть данные, но когда счетчик равен 0, старые данные для этого раздела не удаляются, что не является ожидаемым поведением. Я проверил то же самое с помощью оболочки Shell и запроса на ручную перезапись вставки в кусте, старые данные удаляются, и новый раздел не создается. В чем может быть проблема?