

# Habilitar otimização automática de tabelas no nível do catálogo
<a name="enable-auto-table-optimizers"></a>

 É possível habilitar a otimização automática de tabelas para todas as novas tabelas do Apache Iceberg no Catálogo de dados. Após criar a tabela, você também pode atualizar explicitamente as configurações de otimização da tabela manualmente. 

 Para atualizar as configurações do Catálogo de dados para habilitar otimizações de tabela no nível do catálogo, o perfil do IAM utilizado deve ter permissão `glue:UpdateCatalog` no catálogo raiz. É possível usar a API `GetCatalog` para verificar as propriedades do catálogo. 

 Para as tabelas gerenciadas pelo Lake Formation, o perfil do IAM selecionado durante a configuração de otimização do catálogo requer permissões do Lake Formation `ALTER`, `DESCRIBE`, `INSERT` e `DELETE` para quaisquer tabelas novas ou atualizadas. 

## Para habilitar otimizadores no nível do catálogo (console)
<a name="enable-catalog-optimizers-console"></a>

1. Abra o console do Lake Formation em [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. No painel de navegação, escolha **Catálogo de Dados**.

1. Escolha a guia **Catálogos**.

1. Escolha o catálogo no nível da conta.

1. Escolha **Otimizações da tabela**, **Editar** na guia **Otimizações da tabela**. Você também pode escolher **Editar otimizações** em **Ações**.  
![A captura de tela mostra a opção Editar para permitir otimizações no nível do catálogo.](http://docs.aws.amazon.com/pt_br/glue/latest/dg/images/catalog-edit-optimizations.png)

1. Na página **Otimização de tabelas**, configure estas opções:  
![A captura de tela mostra as opções de otimização no nível do catálogo.](http://docs.aws.amazon.com/pt_br/glue/latest/dg/images/catalog-optimization-options.png)

   1. Defina as configurações de **Compactação**:
      + Habilitar/desabilitar a compactação.
      + Escolha o perfil do IAM com as permissões necessárias para executar os otimizadores.

        Para obter mais informações sobre os requisitos de permissão para o perfil do IAM, consulte [Pré-requisitos de otimização de tabelas](optimization-prerequisites.md).

   1. Defina as configurações de **Retenção de snapshots**:
      + Habilitar/desabilitar a retenção.
      + Defina o período de retenção do snapshot em dias: o padrão é 5 dias.
      + Defina o número de snapshots a serem retidos: o padrão é 1 snapshot.
      + Habilitar/desabilitar a limpeza de arquivos expirados.

   1. Defina configurações de **Exclusão de arquivos órfãos**:
      + Habilitar/desabilitar exclusão de arquivos órfãos.
      + Defina o período de retenção de arquivos órfãos em dias - o padrão é 3 dias.

1. Escolha **Salvar**.

## Habilitando otimizadores em nível de catálogo por meio do AWS CLI
<a name="catalog-auto-optimizers-cli"></a>

Use o seguinte comando da CLI para atualizar um catálogo existente com as configurações do otimizador:

**Example Atualizar catálogo com configurações do otimizador**  

```
aws glue update-catalog \
   --name {{catalog-id}} \
  --catalog-input \
  '{
    "CatalogId": "{{111122223333}}",
    "CatalogInput": {
        "CatalogProperties": {
            "CustomProperties": {
                "ColumnStatistics.Enabled": "false",
                "ColumnStatistics.RoleArn": "arn:aws:iam::{{111122223333}}:role/service-role/{{stats-role-name}}"
            },
            "IcebergOptimizationProperties": {
                "RoleArn": "arn:aws:iam::{{111122223333}}:role/{{optimizer-role-name}}",
                "Compaction": {
                    "enabled": "{{true}}"
                },
                "Retention": {
                    "enabled": "{{true}}",
                    "snapshotRetentionPeriodInDays": "{{10}}",
                    "numberOfSnapshotsToRetain": "{{5}}",
                    "cleanExpiredFiles": "{{true}}"
                },
                "OrphanFileDeletion": {
                    "enabled": "{{true}}",
                    "orphanFileRetentionPeriodInDays": "{{3}}"
                }
            }
        }
    }
}'
```

Se você encontrar problemas com otimizadores no nível do catálogo, verifique o seguinte:
+ Certifique-se de que o perfil do IAM tenha as permissões corretas, conforme descrito na seção Pré-requisitos.
+ Verifique os logs do CloudWatch para ver se há mensagens de erro relacionadas às operações do otimizador.

   Para obter mais informações, consulte [Visualizar métricas disponíveis](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/viewing_metrics_with_cloudwatch.html) no *Guia do usuário do Amazon CloudWatch*. 
+ Verifique se as configurações do catálogo foram aplicadas com êxito, conferindo a configuração do catálogo.
+ Para falhas no acesso à tabela, verifique os logs do CloudWatch e as notificações do EventBridge para obter informações detalhadas sobre o erro.