Sintaxe da visualização do Catálogo de Dados do Glue - Amazon Athena

Sintaxe da visualização do Catálogo de Dados do Glue

Esse recurso está em prévia de release e sujeito a alterações. Para obter mais informações, consulte a seção Beta e pré-visualizações no documento de Termos de serviço da AWS.

Esta seção descreve os comandos da linguagem de definição de dados (DDL) para criar e gerenciar visualizações do AWS Glue Data Catalog.

ALTER VIEW DIALECT

É possível atualizar as visualizações do Catálogo de Dados ao adicionar um dialeto para o mecanismo ou ao atualizar ou descartar um dialeto do mecanismo existente. Somente o Lake FormationAdmin e o Definer (o usuário que criou a visualização) têm permissões para usar a instrução ALTER VIEW DIALECT em uma visualização do Catálogo de Dados.

Sintaxe

ALTER VIEW name [ FORCE ] [ ADD|UPDATE ] DIALECT AS query
ALTER VIEW name [ DROP ] DIALECT
FORCE

A palavra-chave FORCE faz com que as informações conflitantes do dialeto do mecanismo em uma visualização sejam substituídas pela nova definição. A palavra-chave FORCE é útil quando uma atualização em uma visualização do Catálogo de Dados resulta em definições de visualizações conflitantes entre os dialetos dos mecanismos existentes. Suponha que uma visualização do Catálogo de Dados tenha os dialetos do Athena e do Amazon Redshift e que a atualização resulte em um conflito com o Amazon Redshift na definição de visualização. Nesse caso, é possível usar a palavra-chave FORCE para permitir que a atualização seja concluída e marcar o dialeto do Amazon Redshift como obsoleto. Quando mecanismos marcados como obsoletos consultam a visualização, a consulta apresenta falhas. Os mecanismos lançam uma exceção para rejeitar resultados obsoletos. Para corrigir isso, atualize os dialetos obsoletos na visualização.

ADD

Adiciona um novo dialeto do mecanismo à visualização do Catálogo de Dados. O mecanismo especificado ainda não deve existir na visualização do Catálogo de Dados.

UPDATE

Atualiza um dialeto do mecanismo que já existe na visualização do Catálogo de Dados.

DROP

Descarta um dialeto do mecanismo existente de uma visualização do Catálogo de Dados. Após descartar um mecanismo de uma visualização do Catálogo de Dados, a visualização do Catálogo de Dados não poderá ser consultada pelo mecanismo que foi descartado. Outros dialetos do mecanismo na visualização ainda podem consultar a visualização.

DIALECT AS

Apresenta uma consulta SQL específica para o mecanismo.

Exemplos

ALTER VIEW orders_by_date FORCE ADD DIALECT AS SELECT orderdate, sum(totalprice) AS price FROM orders GROUP BY orderdate
ALTER VIEW orders_by_date FORCE UPDATE DIALECT AS SELECT orderdate, sum(totalprice) AS price FROM orders GROUP BY orderdate
ALTER VIEW orders_by_date DROP DIALECT

CREATE PROTECTED MULTI DIALECT VIEW

Cria uma visualização do Catálogo de Dados no AWS Glue Data Catalog. Uma visualização do Catálogo de Dados corresponde a um esquema de visualização única que funciona sem complicações no Athena e em outros mecanismos SQL, como o Amazon Redshift e o Amazon EMR.

Sintaxe

CREATE [ OR REPLACE ] PROTECTED MULTI DIALECT VIEW view_name [ SECURITY DEFINER ] AS query
PROTECTED

Palavra-chave obrigatória. Especifica que a visualização está protegida contra vazamentos de dados. As visualizações do Catálogo de Dados podem ser criadas somente como uma visualização PROTECTED.

MULTI DIALECT

Especifica que a visualização oferece suporte aos dialetos SQL de diferentes mecanismos de consulta e, portanto, que ela pode ser lida por esses mecanismos.

SECURITY DEFINER

Especifica que a semântica do programador está em vigor para essa visualização. A semântica do programador significa que as permissões de leitura efetivas nas tabelas subjacentes pertencem à entidade principal ou ao perfil que definiu a visualização, e não à entidade principal que executa a leitura.

OR REPLACE

Uma visualização do Catálogo de Dados não poderá ser substituída se dialetos SQL de outros mecanismos estiverem presentes na visualização. Se o mecanismo de chamada tiver o único dialeto SQL presente na visualização, a visualização poderá ser substituída.

Exemplo

O exemplo apresentado a seguir cria a visualização orders_by_date do Catálogo de Dados com base em uma consulta na tabela orders.

CREATE PROTECTED MULTI DIALECT VIEW orders_by_date SECURITY DEFINER AS SELECT orderdate, sum(totalprice) AS price FROM orders WHERE order_city = 'SEATTLE' GROUP BY orderdate

DESCRIBE

Mostra a lista de colunas para a visualização do Catálogo de Dados especificada. A instrução DESCRIBE é semelhante à instrução DESCRIBE para visualizações do Athena. Ao contrário das visualizações do Athena, a saída da instrução é controlada pelo controle de acesso do Lake Formation. Dessa forma, a saída dessa consulta não corresponde a todas as colunas da visualização, mas somente às colunas às quais o chamador tem acesso.

Sintaxe

DESCRIBE [db_name.]view_name

Exemplos

DESCRIBE orders

DROP VIEW

Descarta uma visualização do Catálogo de Dados somente se o dialeto do mecanismo de chamada está presente na visualização do Catálogo de Dados. Por exemplo, se um usuário chamar DROP VIEW usando o Athena, a visualização será descartada somente se o dialeto do Athena existir na visualização. Caso contrário, haverá falha na operação. Somente o administrador do Lake Formation e o programador de visualizações têm permissões para usar a instrução DROP VIEW em uma visualização do Catálogo de Dados.

Sintaxe

DROP VIEW [ IF EXISTS ] view_name

Exemplos

DROP VIEW orders_by_date
DROP FORCE VIEW IF EXISTS orders_by_date

A cláusula IF EXISTS opcional faz com que o erro seja suprimido se a exibição não existir.

SHOW COLUMNS

Mostra somente os nomes das colunas para uma única visualização do Catálogo de Dados especificada. A instrução SHOW COLUMNS é semelhante à instrução SHOW COLUMNS para visualizações do Athena. Ao contrário das visualizações do Athena, a saída da instrução é controlada pelo controle de acesso do Lake Formation. Dessa forma, a saída dessa consulta não corresponde a todas as colunas da visualização, mas somente às colunas às quais o chamador tem acesso.

Sintaxe

SHOW COLUMNS {FROM|IN} database_name.view_name
SHOW COLUMNS {FROM|IN} view_name [{FROM|IN} database_name]

MOSTRAR CRIAR EXIBIÇÃO

Mostra a sintaxe SQL que criou a visualização do Catálogo de Dados. O SQL retornado mostra a sintaxe de criação de visualização usada no Athena. Somente as entidades principais do administrador do Lake Formation e do programador de visualizações estão autorizadas a chamar SHOW CREATE VIEW em uma visualização do Catálogo de Dados.

Sintaxe

SHOW CREATE VIEW view_name

Exemplos

SHOW CREATE VIEW orders_by_date

MOSTRAR EXIBIÇÕES

Lista os nomes de todas as visualizações no banco de dados. Todas as visualizações do Catálogo de Dados no banco de dados que têm o dialeto SQL do mecanismo Athena são listadas. Outras visualizações do Catálogo de Dados que não têm o dialeto do mecanismo Athena presente na visualização são filtradas.

Sintaxe

SHOW VIEWS [IN database_name] [LIKE 'regular_expression']

Exemplos

SHOW VIEWS
SHOW VIEWS IN marketing_analytics LIKE 'orders*'