Tabelas de sistema para solucionar problemas de carregamento de dados
As seguintes tabelas de sistema do Amazon Redshift podem ser úteis na solução de problemas de carregamento de dados:
-
Consulte STL_LOAD_ERRORS para descobrir erros que ocorreram durante os carregamentos específicos.
-
Consulte STL_FILE_SCAN para visualizar o tempo de carregamento de arquivos específicos ou para ver se um arquivo específico foi mesmo lido.
-
Consulte STL_S3CLIENT_ERROR para encontrar detalhes de erros encontrados durante a transferência de dados do Amazon S3.
Para encontrar e diagnosticar erros de carregamento
-
Crie uma exibição ou defina uma consulta que retorne detalhes dos erros de carregamento. O seguinte exemplo junta a tabela STL_LOAD_ERRORS à tabela STV_TBL_PERM a IDs para comparar os IDs de tabela aos nomes reais da tabela.
create view loadview as (select distinct tbl, trim(name) as table_name, query, starttime, trim(filename) as input, line_number, colname, err_code, trim(err_reason) as reason from stl_load_errors sl, stv_tbl_perm sp where sl.tbl = sp.id);
-
Defina a opção MAXERRORS em seu comando COPY como um valor grande o suficiente para permitir que COPY retorne informações úteis sobre seus dados. Se COPY encontrar erros, uma mensagem de erro o direciona a consultar a tabela STL_LOAD_ERRORS para obter detalhes.
-
Consulte a exibição LOADVIEW para visualizar detalhes de erros. Por exemplo:
select * from loadview where table_name='venue';
tbl | table_name | query | starttime --------+------------+-------+---------------------------- 100551 | venue | 20974 | 2013-01-29 19:05:58.365391 | input | line_number | colname | err_code | reason +----------------+-------------+---------+----------+-------------------- | venue_pipe.txt | 1 | 0 | 1214 | Delimiter not found
-
Corrija o problema no arquivo de entrada ou no script do carregamento com base nas informações que a exibição retorna. Alguns erros típicos de carregamento a observar incluem:
-
Divergência entre os tipos de dados na tabela e valores nos campos nos dados de entrada.
-
Divergência entre o número de colunas na tabela e o número de campos nos dados de entrada.
-
Aspas incompatíveis. O Amazon Redshift oferece suporte a aspas simples e duplas; no entanto, essas aspas devem ser balanceadas adequadamente.
-
Formato incorreto de dados de data/hora nos arquivos de entrada.
-
Valores fora do intervalo nos arquivos de entrada (para colunas numéricas).
-
O número de valores distintos de uma coluna excede a limitação de sua codificação de compactação.
-