Ошибка дублирования столбцов в метаданных

Проблема

Задание Apache Spark обрабатывает разностную таблицу, когда происходит сбой задания с генерацией сообщения об ошибке.

org.apache.spark.sql.AnalysisException: Found duplicate column(s) in the metadata update: col1, col2...

Причина

В разностной таблице есть дублирующиеся имена столбцов. Имена столбцов, отличающиеся только регистром, считаются дублирующимися.

При хранении схемы Дельта Lake сохраняет регистр, но не учитывает его.

Parquet учитывает регистр при хранении и возврате сведений о столбцах.

В Spark можно учитывать регистр, но по умолчанию он не учитывается.

Чтобы избежать возможного повреждения или потери данных, дублирующиеся имена столбцов не допускаются.

Решение

Разностные таблицы не должны содержать дублирующиеся имена столбцов.

Убедитесь, что все имена столбцов уникальны.