Colunas duplicadas no erro dos metadados

Problema

O teu trabalho da Apache Spark está a processar uma tabela Delta quando o trabalho falha com uma mensagem de erro.

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

Causa

Há nomes de colunas duplicados na tabela Delta. Os nomes das colunas que diferem apenas por caso são considerados duplicados.

Delta Lake é um caso de preservação, mas caso insensível, ao armazenar um esquema.

Parquet é sensível a caso ao armazenar e devolver informações de colunas.

A faísca pode ser sensível a casos, mas é caso insensível por defeito.

Para evitar potenciais corrupção de dados ou perda de dados, não são permitidos nomes de colunas duplicados.

Solução

As tabelas Delta não devem conter nomes de colunas duplicados.

Certifique-se de que todos os nomes das colunas são únicos.