

# Gerar estatísticas de colunas em uma programação
<a name="generate-column-stats"></a>

Siga estas etapas para configurar um cronograma para gerar estatísticas no AWS Glue Data Catalog usando o console do , o AWS Glue, a AWS CLI ou a operação [StartColumnStatisticsTaskRun](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-column-statistics.html#aws-glue-api-crawler-column-statistics-CreateColumnStatisticsTaskSettings).

------
#### [ Console ]

**Para gerar estatísticas de colunas usando o console**

1. Faça login no console do AWS Glue em [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/). 

1. Escolha uma tabela do Catálogo de Dados.

1. Escolha uma tabela na lista. 

1. Escolha a guia **Estatísticas de colunas** na seção inferior da página **Tabelas**.

1. Você também pode escolher **Gerar em uma programação** em **Estatísticas de colunas** em **Ações**.

1. Na página **Gerar estatísticas em uma programação**, configure uma programação recorrente para executar a tarefa de estatísticas de colunas escolhendo a frequência e a hora de início. É possível definir a frequência como a cada hora, diária ou semanal ou ainda definir uma expressão cron para especificar a programação.

   Uma expressão cron é uma string que representa um padrão de programação que consiste em 6 campos separados por espaços: \$1 \$1 \$1 \$1 \$1 <minuto> <hora> <dia do mês> <mês> <dia da semana> <ano> Por exemplo, para executar uma tarefa todos os dias à meia-noite, a expressão cron seria: 0 0 \$1 \$1 ? \$1

   Para obter mais informações, consulte [Expressões cron](https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html#CronExpressions).  
![\[A captura de tela mostra as opções disponíveis para gerar estatísticas da coluna.\]](http://docs.aws.amazon.com/pt_br/glue/latest/dg/images/generate-column-stats-schedule.png)

1. Em seguida, escolha a opção de coluna para gerar estatísticas.
   + **Todas as colunas**: escolha essa opção para gerar estatísticas para todas as colunas na tabela.
   + **Colunas selecionadas**: escolha essa opção para gerar estatísticas para colunas específicas. É possível selecionar as colunas na lista suspensa.

1. Crie um perfil do IAM ou escolha um existente que tenha permissões para gerar estatísticas. O AWS Glue assume esse perfil para gerar estatísticas de colunas.

   Uma abordagem mais rápida é permitir que o console do AWS Glue crie um perfil para você. O perfil por ele criado destina-se especificamente à geração de estatísticas de colunas e inclui a política `AWSGlueServiceRole` gerenciada pela AWS e mais a política em linha necessária para a fonte de dados especificada. 

   Se você especificar um perfil existente para a geração de estatísticas de colunas, certifique-se de que ele inclua a política `AWSGlueServiceRole` ou equivalente (ou uma versão dessa política com um escopo reduzido), além das políticas em linha necessárias. 

1. (Opcional) Em seguida, escolha uma configuração de segurança para ativar a criptografia em repouso para logs.

1. (Opcional) É possível escolher um tamanho de amostra indicando somente uma porcentagem específica de linhas da tabela para gerar estatísticas. O padrão é todas as linhas. Use as setas para cima e para baixo para aumentar ou diminuir o valor percentual. 

   Recomendamos incluir todas as linhas na tabela para calcular estatísticas precisas. Use as linhas de exemplo para gerar estatísticas de coluna somente quando valores aproximados forem aceitáveis.

1. Escolha **Gerar estatísticas** para executar a tarefa de geração de estatísticas de colunas.

------
#### [ AWS CLI ]

O exemplo de AWS CLI a seguir pode ser usado para criar uma programação de geração de estatísticas de colunas. Os parâmetros obrigatórios são database-name, table-name e role, enquanto os parâmetros opcionais são schedule, column-name-list, catalog-id, sample-size e security-configuration.

```
aws glue create-column-statistics-task-settings \ 
 --database-name 'database_name' \ 
 --table-name table_name \ 
 --role 'arn:aws:iam::123456789012:role/stats-role' \ 
 --schedule 'cron(0 0-5 14 * * ?)' \ 
 --column-name-list 'col-1' \  
 --catalog-id '123456789012' \ 
 --sample-size '10.0 ' \
 --security-configuration 'test-security'
```

Também é possível pode gerar estatísticas de colunas chamando a operação [StartColumnStatisticsTaskRun](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-column-statistics.html#aws-glue-api-crawler-column-statistics-StartColumnStatisticsTaskRun).

------

# Gerenciar a programação para geração de estatísticas de colunas
<a name="manage-column-stats-schedule"></a>

Você pode gerenciar as operações de programação, como atualizar, iniciar, interromper e excluir programações para a geração de estatísticas de colunas no AWS Glue. É possível usar o console do AWS Glue, a AWS CLI ou [operações de API de estatísticas de colunas do AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-column-statistics.html) para realizar essas tarefas.

**Topics**
+ [Atualizar a programação da geração de estatísticas de colunas](#update-column-stats-shedule)
+ [Interromper a programação de geração de estatísticas de colunas](#stop-column-stats-schedule)
+ [Retomar a programação de geração de estatísticas de colunas](#resume-column-stats-schedule)
+ [Excluir programação de geração de estatísticas de colunas](#delete-column-stats-schedule)

## Atualizar a programação da geração de estatísticas de colunas
<a name="update-column-stats-shedule"></a>

É possível atualizar a programação para acionar a tarefa de geração de estatísticas de colunas após ela ser criada. É possível usar o console do AWS Glue ou a AWS CLI ou executar a operação [UpdateColumnStatisticsTaskSettings](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-column-statistics.html#aws-glue-api-crawler-column-statistics-UpdateColumnStatisticsTaskSettings) para atualizar a programação para uma tabela. É possível modificar os parâmetros de uma programação existente, como o tipo de programação (sob demanda ou programada) e outros parâmetros opcionais. 

------
#### [ Console de gerenciamento da AWS ]

**Para atualizar as configurações para uma tarefa de estatísticas de colunas**

1. Faça login no console do AWS Glue em [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/).

1. Escolha a tabela que você deseja atualizar na lista de tabelas.

1. Na seção inferior da página de detalhes da tabela, escolha **Estatísticas de colunas**. 

1. Em **Ações**, escolha **Editar** para atualizar a programação.

1. Faça as alterações desejadas na programação e escolha **Salvar**.

------
#### [ AWS CLI ]

 Se você não estiver usando o recurso de geração de estatísticas do AWS Glue no console, poderá atualizar manualmente a programação usando o comando `update-column-statistics-task-settings`. O exemplo a seguir mostra como excluir estatísticas de colunas usando a AWS CLI. 

```
aws glue update-column-statistics-task-settings \ 
 --database-name 'database_name' \ 
 --table-name 'table_name' \ 
 --role arn:aws:iam::123456789012:role/stats_role \ 
 --schedule 'cron(0 0-5 16 * * ?)' \ 
 --column-name-list 'col-1' \
 --sample-size '20.0' \  
 --catalog-id '123456789012'\
 --security-configuration 'test-security'
```

------

## Interromper a programação de geração de estatísticas de colunas
<a name="stop-column-stats-schedule"></a>

 Se não precisar mais das estatísticas incrementais, você poderá interromper a geração agendada para economizar recursos e custos. Pausar a programação não afeta as estatísticas geradas anteriormente. Você pode retomar a programação conforme sua conveniência. 

------
#### [ Console de gerenciamento da AWS ]

**Para interromper a programação de uma tarefa de geração de estatísticas de colunas**

1. No console do AWS Glue, escolha **Tabelas** em Catálogo de Dados.

1. Selecione uma tabela com estatísticas de colunas.

1. Na página **Detalhes da tabela**, escolha **Estatísticas da coluna**.

1. Em **Ações**, escolha **Geração programada**, **Pausar**.

1. Escolha **Pausar** para confirmar.

------
#### [ AWS CLI ]

Para interromper a programação de execução de uma tarefa de estatísticas de colunas usando a AWS CLI, é possível usar o seguinte comando: 

```
aws glue stop-column-statistics-task-run-schedule \
 --database-name ''database_name' \
 --table-name 'table_name'
```

Substitua `database_name` e `table_name` pelos nomes reais do banco de dados e da tabela para os quais você deseja interromper a programação de execução da tarefa de estatísticas de colunas.

------

## Retomar a programação de geração de estatísticas de colunas
<a name="resume-column-stats-schedule"></a>

 Se você pausou a programação de geração de estatísticas, o AWS Glue permite retomá-lo conforme sua conveniência. Você pode retomar a programação usando o console do AWS Glue, a AWS CLI ou a operação [StartColumnStatisticsTaskRunSchedule](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-column-statistics.html#aws-glue-api-crawler-column-statistics-StartColumnStatisticsTaskRunSchedule). 

------
#### [ Console de gerenciamento da AWS ]

**Para retomar a programação de geração de estatísticas de colunas**

1. No console do AWS Glue, escolha **Tabelas** em Catálogo de Dados.

1. Selecione uma tabela com estatísticas de colunas.

1. Na página **Detalhes da tabela**, escolha **Estatísticas da coluna**.

1. Em **Ações**, escolha **Geração programada** e escolha **Retomar**.

1. Escolha **Retomar** para confirmar.

------
#### [ AWS CLI ]

Substitua `database_name` e `table_name` pelos nomes reais do banco de dados e da tabela para os quais você deseja interromper a programação de execução da tarefa de estatísticas de colunas.

```
aws glue start-column-statistics-task-run-schedule \
 --database-name 'database_name' \
 --table-name 'table_name'
```

------

## Excluir programação de geração de estatísticas de colunas
<a name="delete-column-stats-schedule"></a>

 Embora a manutenção de estatísticas atualizadas seja geralmente recomendada para otimizar a performance da consulta, há casos de uso específicos em que a remoção da programação de geração automática pode ser benéfica.
+ Se os dados permanecerem relativamente estáticos, as estatísticas de colunas existentes poderão permanecer precisas por um longo período, reduzindo a necessidade de atualizações frequentes. Excluir a programação pode evitar o consumo desnecessário de recursos e a sobrecarga associada à regeneração de estatísticas em dados inalterados.
+ Quando o controle manual sobre a geração de estatísticas é preferido. Ao excluir a programação automática, os administradores podem atualizar seletivamente as estatísticas de colunas em intervalos específicos ou após alterações significativas nos dados, alinhando o processo com suas estratégias de manutenção e necessidades de alocação de recursos. 

------
#### [ Console de gerenciamento da AWS ]

**Para excluir a programação de geração de estatísticas de colunas**

1. No console do AWS Glue, escolha **Tabelas** em Catálogo de Dados.

1. Selecione uma tabela com estatísticas de colunas.

1. Na página **Detalhes da tabela**, escolha **Estatísticas da coluna**.

1. Em **Ações**, escolha **Geração programada**, **Excluir**.

1. Escolha **Excluir** para confirmar.

------
#### [ AWS CLI ]

Substitua `database_name` e `table_name` pelos nomes reais do banco de dados e da tabela para os quais você deseja interromper a programação de execução da tarefa de estatísticas de colunas.

Você pode excluir estatísticas de colunas usando a operação da API [DeleteColumnStatisticsTaskSettings](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-column-statistics.html#aws-glue-api-crawler-column-statistics-DeleteColumnStatisticsTaskSettings) ou a AWS CLI. Os exemplos a seguir mostram como excluir a programação de geração de estatísticas de colunas usando a AWS Command Line Interface (AWS CLI).

```
aws glue delete-column-statistics-task-settings \
    --database-name 'database_name' \
    --table-name 'table_name'
```

------