

# Trabalhar com visualizações
<a name="views"></a>

Uma visualização no Amazon Athena é uma tabela lógica, não física. A consulta que define uma exibição é executada sempre que a exibição é referenciada em uma consulta. Você pode criar uma exibição a partir de uma consulta `SELECT` e, em seguida, fazer referência a essa exibição em futuras consultas. 

É possível usar dois tipos diferentes de visualizações no Athena: visualizações do Athena e visualizações do AWS Glue Data Catalog.

## Quando usar as visualizações do Athena?
<a name="when-to-use-views"></a>

Talvez você queira criar visualizações do Athena para: 
+ **Consultar um subconjunto de dados**: por exemplo, é possível criar uma visualização com um subconjunto de colunas com base na tabela original para simplificar a consulta de dados. 
+ **Combinar tabelas**: é possível usar exibições para combinar várias tabelas em uma consulta. Se você tem várias tabelas e deseja combiná-las com `UNION ALL`, é possível criar uma visualização com essa expressão para simplificar consultas em tabelas combinadas.
+ **Ocultar a complexidade**: use as visualizações para ocultar a complexidade de consultas básicas existentes e simplificar as consultas executadas pelos usuários. As consultas básicas geralmente incluem junções entre tabelas, expressões na lista de colunas e outra sintaxe de SQL que dificultam o entendimento e a depuração delas. Você pode criar uma exibição que oculta a complexidade e simplifica consultas.
+ **Otimizar consultas**: é possível usar visualizações para experimentar técnicas de otimização para criar consultas otimizadas. Por exemplo, se você encontrar uma combinação de condições `WHERE`, ordem `JOIN` ou outras expressões que demonstram a melhor performance, você poderá criar uma exibição com essas cláusulas e expressões. Os aplicativos podem realizar consultas relativamente simples contra essa exibição. Posteriormente, se você encontrar uma melhor maneira de otimizar a consulta original, quando você recriar a exibição, todos os aplicativos aproveitam imediatamente a consulta básica otimizada. 
+ **Ocultar nomes subjacentes**: é possível usar visualizações para ocultar nomes de tabelas e colunas subjacentes e minimizar os problemas de manutenção se esses nomes forem alterados. Se os nomes forem alterados, é possível simplesmente recriar a exibição usando os novos nomes. As consultas que usam a visualização em vez das tabelas continuarão em execução sem alterações.

  Para obter mais informações, consulte [Trabalhar com visualizações do Athena](views-console.md).

## Quando usar as visualizações do AWS Glue Data Catalog?
<a name="when-to-use-views-gdc"></a>

Use as visualizações do AWS Glue Data Catalog quando desejar uma perspectiva única e comum entre os Serviços da AWS, como o Amazon Athena e o Amazon Redshift. Nas visualizações do Catálogo de Dados, as permissões de acesso são definidas pelo usuário que criou a visualização, e não pelo usuário que consulta a visualização. Esse método de concessão de permissões é chamado de semântica do *programador*.

Os casos de uso apresentados a seguir mostram como é possível usar as visualizações do Catálogo de Dados.
+ **Maior controle de acesso**: você cria uma visualização que restringe o acesso aos dados com base no nível de permissões requeridas pelo usuário. Por exemplo, é possível usar as visualizações do Catálogo de Dados para evitar que colaboradores que não trabalham no departamento de recursos humanos (RH) vejam informações de identificação pessoal.
+ **Garantia de registros completos**: ao aplicar determinados filtros na visualização do Catálogo de Dados, você garante que os registros de dados em uma visualização do Catálogo de Dados estejam sempre completos.
+ **Segurança aprimorada**: nas visualizações do Catálogo de Dados, a definição de consulta que cria a visualização deve estar intacta para que a visualização seja criada. Isso torna as visualizações do Catálogo de Dados menos suscetíveis a comandos SQL de agentes mal-intencionados.
+ **Prevenção do acesso às tabelas subjacentes**: a semântica do programador permite que os usuários acessem uma visualização sem disponibilizar a tabela subjacente para eles. Somente o usuário que define a visualização necessita de acesso às tabelas.

As definições de visualização do Catálogo de Dados são armazenadas no AWS Glue Data Catalog. Isso significa que você pode usar o AWS Lake Formation para conceder acesso usando concessões de recursos, concessões de colunas ou controles de acesso baseados em etiquetas. Para obter mais informações sobre como conceder e revogar acesso no Lake Formation, consulte [Granting and revoking permissions on Data Catalog resources](https://docs.aws.amazon.com/lake-formation/latest/dg/granting-catalog-permissions.html) no *Guia do desenvolvedor do AWS Lake Formation*.

Para obter mais informações, consulte [Usar visualizações do Catálogo de Dados no Athena](views-glue.md).