

 O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a [publicação de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Compactação de colunas para reduzir o tamanho dos dados armazenados
<a name="t_Compressing_data_on_disk"></a>

A *compactação* é uma operação em nível de coluna que reduz o tamanho dos dados quando eles são armazenados. A compactação economiza espaço de armazenamento e reduz o tamanho dos dados que são lidos a partir do armazenamento, que reduz a quantidade de E/S de disco e, portanto, melhora a performance da consulta.

ENCODE AUTO é o padrão para tabelas. Quando a tabela é definida como ENCODE AUTO, o Amazon Redshift gerencia automaticamente a codificação de compactação para todas as colunas da tabela. Para obter mais informações, consulte [CRIAR TABELA](r_CREATE_TABLE_NEW.md) e [ALTER TABLE](r_ALTER_TABLE.md).

Porém, se você especificar a codificação de compactação para qualquer coluna da tabela, a tabela não será mais definida como ENCODE AUTO. O Amazon Redshift não gerencia mais automaticamente a codificação de compactação para todas as colunas da tabela. 

Você pode aplicar um tipo de compactação ou *codificação* para as colunas em uma tabela manualmente quando você cria a tabela. Ou pode usar o comando COPY para analisar e aplicar compactação automaticamente. Para obter mais informações, consulte [Permitir que COPY selecione as codificações de compactação](c_best-practices-use-auto-compression.md). Para obter detalhes sobre a aplicação de compactação automática, consulte [Carregamento de tabelas com compactação automática](c_Loading_tables_auto_compress.md).

**nota**  
Recomendamos o uso do comando COPY para aplicar a compactação automática.

Você pode optar por aplicar codificações de compactação manualmente se a nova tabela compartilhar as mesmas características de dados que outra tabela. Ou pode fazê-lo se ao testar você descobrir que as codificações de compactação aplicadas durante a compactação automática não são a melhor opção para seus dados. Se você escolher aplicar as codificações de compactação manualmente, poderá executar o comando [ANALYZE COMPRESSION](r_ANALYZE_COMPRESSION.md) em uma tabela já povoada e usar os resultados para escolher as codificações de compactação.

Para aplicar a compactação manualmente, especifique as codificações de compactação para colunas individuais como parte da instrução CREATE TABLE. A sintaxe é a seguinte.

```
CREATE TABLE table_name (column_name 
data_type ENCODE encoding-type)[, ...]
```

Aqui, *encoding-type* é retirado da tabela de palavras-chave na seção a seguir.

Por exemplo, a seguinte instrução cria uma tabela de duas colunas, PRODUCT. Quando os dados são carregados na tabela, a coluna PRODUCT\$1ID não é compactada, mas a coluna de PRODUCT\$1NAME é compactada usando a codificação do dicionário de bytes (BYTEDICT).

```
create table product(
product_id int encode raw,
product_name char(20) encode bytedict);
```

Você pode especificar a codificação para uma coluna quando ela é adicionada a uma tabela usando o comando ALTER TABLE.

```
ALTER TABLE table-name ADD [ COLUMN ] column_name column_type ENCODE encoding-type
```

**Topics**
+ [Codificações de compactação](c_Compression_encodings.md)
+ [Teste de codificações de compactação](t_Verifying_data_compression.md)