Operações de carregamento de dados - Amazon Redshift

Operações de carregamento de dados

Gerencie o comportamento padrão da operação de carregamento para solucionar problemas ou reduzir o tempo de carregamento especificando os parâmetros a seguir.

Parâmetros
COMPROWS numrows

Especifica o número de linhas a serem usadas como o tamanho de exemplo para análise de compactação. A análise é executada em linhas de cada fatia de dados. Por exemplo, se você especificar COMPROWS 1000000 (1.000.000) e o sistema contiver quatro fatias no total, não mais do que 250.000 linhas para cada fatia serão lidas e analisadas.

Se COMPROWS não for especificado, o padrão do tamanho de exemplo será 100.000 para cada fatia. Os valores de COMPROWS menores que o padrão de 100.000 linhas para cada fatia são atualizados automaticamente para o valor padrão. Porém, a compactação automática não acontecerá se o valor de dados carregados for insuficiente para produzir um exemplo significativo.

Se o número de COMPROWS for maior que o número de linhas no arquivo de entrada, o comando COPY continuará e executará a análise de compactação em todas as linhas disponíveis. O intervalo aceito para esse argumento é um número entre 1000 e 2147483647 (2,147,483,647).

COMPUPDATE [ PRESET | { ON | TRUE } | { OFF | FALSE } ]

Controla se as codificações de compactação são aplicadas automaticamente durante um comando COPY.

Quando COMPUPDATE é PRESET, o comando COPY escolhe a codificação de compactação para cada coluna se a tabela de destino estiver vazia; mesmo se as colunas já tiverem codificações diferentes de RAW. As codificações de coluna atualmente especificadas podem ser substituídas. A codificação para cada coluna é baseada no tipo de dados da coluna. Não é criada nenhuma amostra de dados. O Amazon Redshift atribui automaticamente a codificação de compactação da seguinte maneira:

  • Colunas que são definidas como chaves de classificação são designadas a compactação RAW.

  • Colunas que são definidas como tipos de dados BOOLEAN, REAL ou DOUBLE PRECISION recebem a compactação RAW.

  • As colunas definidas como SMALLINT, INTEGER, BIGINT, DECIMAL, DATE, TIMESTAMP ou TIMESTAMPTZ recebem a compactação AZ64.

  • As colunas definidas como CHAR ou VARCHAR recebem a compactação LZO.

Quando COMPUPDATE for omitido, o comando COPY escolherá a codificação de compactação para cada coluna apenas se a tabela de destino estiver vazia e você não tiver especificado uma codificação (diferente de RAW) para nenhuma das colunas. A codificação de cada coluna é determinada pelo Amazon Redshift. Não é criada nenhuma amostra de dados.

Quando COMPUPDATE estiver definido como ON (ou TRUE) ou especificado sem uma opção, o comando COPY aplicará a compactação automática se a tabela estiver vazia, mesmo que as colunas da tabela já tenham codificações diferentes de RAW. As codificações de coluna atualmente especificadas podem ser substituídas. A codificação de cada coluna se baseia em uma análise de dados de amostra. Para obter mais informações, consulte Carregamento de tabelas com compactação automática.

Quando COMPUPDATE é definido como OFF (ou FALSE), a compactação automática é desativada. As codificações de coluna não são alteradas.

Para obter informações sobre a tabela do sistema para analisar a compactação, consulte STL_ANALYZE_COMPRESSION.

IGNOREALLERRORS

Você pode especificar essa opção para ignorar todos os erros que ocorrem durante a operação de carregamento.

Você não pode especificar a opção IGNOREALLERRORS se especificar a opção MAXERROR. Você não pode especificar a opção IGNOREALLERRORS para formatos colunares, incluindo ORC e Parquet.

MAXERROR [AS] error_count

Se retornar o número de erros error_count ou mais, a carga falhará. Se retornar menos erros, a carga continuará e retornará uma mensagem INFO informando que não foi possível carregar o número de linhas. Use esse parâmetro para permitir que as cargas continuem quando determinadas linhas deixarem de ser carregadas na tabela por causa de erros de formatação ou outras inconsistências nos dados.

Defina esse valor como 0 ou 1, se você quiser que a carga falhe assim que o primeiro erro ocorrer. A palavra-chave AS é opcional. O valor padrão MAXERROR é 0, e o limite é 100000.

O número real de erros relatados pode ser maior que o MAXERROR especificado por causa da natureza paralela do Amazon Redshift. Se o nó no cluster do Amazon Redshift detectar que MAXERROR foi excedido, cada nó relatará todos os nós encontrados.

NOLOAD

Verifica a validade do arquivo de dados sem efetivamente carregar os dados. Use o parâmetro NOLOAD para garantir que o arquivo de dados seja carregado sem erros antes de executar o carregamento de dados real Executar COPY com o parâmetro NOLOAD é muito mais rápido do que carregar os dados porque somente analisa os arquivos.

STATUPDATE [ { ON | TRUE } | { OFF | FALSE } ]

Regula a computação automática e a atualização de estatísticas do otimizador ao final de um comando COPY bem-sucedido. Por padrão, se o parâmetro STATUPDATE não for usado, as estatísticas serão atualizadas automaticamente se a tabela estiver inicialmente vazia.

Sempre que o processamento de dados em uma tabela não vazia alterar significativamente o tamanho da tabela, recomendamos atualizar as estatísticas executando um comando ANALYZE ou usando o argumento STATUPDATE ON.

Com STATUPDATE ON (ou TRUE), as estatísticas são atualizadas automaticamente, independente da tabela estar inicialmente vazia. Se STATUPDATE for usado, o usuário atual não deverá ser o proprietário da tabela ou um superusuário. Se STATUPDATE não for especificado, somente a permissão INSERT será necessária.

Com STATUPDATE OFF (ou FALSE), as estatísticas jamais são atualizadas.

Para obter informações adicionais, consulte Análise de tabelas.