SPARK Escape Character: Lendo CSV no Spark
CSV significa valores separados por vírgula. Este é um formato comum de arquivo de texto em que cada linha representa um único registro, e vírgulas separam cada campo dentro de um registro.
Embora os arquivos CSV pareçam bem estruturados, eles são, na verdade, um dos formatos de arquivo mais complicados que você encontrará, porque em cenários de produção não se pode fazer muitas suposições sobre o que eles contêm ou como estão estruturados. CSV são frágeis!
Lendo csv no spark:
Reserved Characters and Keywords
Uma coisa com a qual você pode se deparar são caracteres reservados, como espaços ou traços, nos nomes das colunas. Lidar com esses caracteres significa escapar (escape) os nomes das colunas de forma apropriada. Na maioria das vezes, tentamos resolver a questão com escape de caracteres durante o pré-processamento ou transformação dos dados, mas a documentação do Spark aponta uma solução simples para lidar com problemas de leitura, escrita e carregamento de dados em csv com spark.
Livro: Learning Spark - Chapter 6 - Data Source / csv files - Página 165
Escrita pelo próprio Matei Zaharia (desenvolvedor do spark), a leitura de csv em Spark é amplamente solucionada.
Embora ainda tenhamos issues com caracteres especiais e quebras de linhas dentro de colunas, os maiores problemas na leitura do csv foram solucionados.
A leitura da documentação pode economizar algumas horas de pesquisa sobre como solucionar o problema. Faça uso dela.
Referências:
Spark - Definitive Guide - Matei Zaharia
Bom estudo a todos!