Quero usar o comando COPY para carregar um arquivo .csv do Amazon Simple Storage Service (Amazon S3) no Amazon Redshift. O arquivo contém registros. No entanto, o comando não carrega o arquivo nem retorna um erro.
Resolução
Se o arquivo.csv usar retornos de transporte como um terminador de linha, então COPY falhará ao carregar dados no Amazon Redshift. Os retornos de transporte incluem “\\ r”, “^M” ou “0x0D” em hexadecimal.
Como o Amazon Redshift não reconhece retornos de carro como terminadores de linha, o Amazon Redshift analisa o arquivo como uma linha. Quando você define o parâmetro IGNOREHEADER como um número diferente de zero no comando COPY, o Amazon Redshift ignora a primeira linha. Como resultado, o Amazon Redshift também ignora o arquivo inteiro. O comando não retorna erros de carregamento porque a operação foi tecnicamente bem-sucedida.
Para resolver esse problema, substitua os retornos de carro por CRLF, “\\r\\n” ou “0x0D0A” em hexadecimal ou LF, “\\n” ou “0x0A” em hexadecimal. Carregue o arquivo modificado no bucket do S3 e execute o comando COPY novamente.
Se você substituir as devoluções do carro e ainda tiver problemas, execute as seguintes ações:
Informações relacionadas
Fontes de dados
Exemplos de COPY