Consultar objetos restaurados do Amazon S3 Glacier - Amazon Athena

Consultar objetos restaurados do Amazon S3 Glacier

É possível usar o Athena para consultar objetos restaurados das classes de armazenamento do Amazon S3 S3 Glacier Flexible Retrieval (antigo Glacier) e S3 Glacier Deep Archive. É necessário habilitar esse recurso com base em tabelas. Se você não habilitar o atributo em uma tabela antes de executar a consulta, o Athena ignorará todos os objetos do S3 Glacier Flexible Retrieval e do S3 Glacier Deep Archive da tabela durante a execução da consulta.

Condições e limitações

  • Há suporte para a consulta de objetos restaurados do Amazon S3 Glacier somente no mecanismo do Athena versão 3.

  • O atributo é compatível somente com tabelas do Apache Hive.

  • É necessário restaurar seus objetos antes de consultar os dados; o Athena não restaura objetos para você.

Configurar uma tabela para usar objetos restaurados

Para configurar sua tabela do Athena de modo a incluir objetos restaurados em suas consultas, é necessário definir a propriedade de tabela read_restored_glacier_objects como true. Para fazer isso, você pode usar o editor de consultas do Athena ou o console do AWS Glue. Você também pode usar a CLI do AWS Glue, a API do AWS Glue ou o SDK do AWS Glue.

Usar o editor de consultas do Athena

No Athena, você pode usar o comando ALTER TABLE SET TBLPROPERTIES para definir a propriedade da tabela, como no exemplo a seguir.

ALTER TABLE table_name SET TBLPROPERTIES ('read_restored_glacier_objects' = 'true')

Usar o console de AWS Glue

Edite a tabela no console do AWS Glue e realize as seguintes etapas para adicionar a propriedade de tabela read_restored_glacier_objects.

Para configurar as propriedades da tabela no console do AWS Glue
  1. Faça logon no AWS Management Console e abra o console do AWS Glue em https://console.aws.amazon.com/glue/.

  2. Execute um destes procedimentos:

    • Escolha Ir para catálogo de dados.

    • No painel de navegação, escolha Tabelas do catálogo de dados.

  3. Na página Tabelas, na lista de tabelas, escolha o link para a tabela que você deseja editar.

  4. Selecione Actions (Ações), Edit (Editar).

  5. Na página Editar tabela, na seção Propriedades da tabela, adicione o par de chave-valor a seguir.

    • Em Chave, adicione read_restored_glacier_objects.

    • Em Valor, insira true.

  6. Escolha Salvar.

Usando a AWS CLI

Na AWS CLI, você pode usar o comando update-table do AWS Glue e seu argumento --table-input para redefinir a tabela e, ao fazer isso, adicionar a propriedade read_restored_glacier_objects. No argumento --table-input, use a estrutura Parameters para especificar a propriedade read_restored_glacier_objects e o valor de true. O argumento para --table-input não deve ter espaços e deve usar barras invertidas como escape das aspas duplas. No exemplo a seguir, substitua my_database e my_table pelos nomes de seu banco de dados e tabela.

aws glue update-table \ --database-name my_database \ --table-input={\"Name\":\"my_table\",\"Parameters\":{\"read_restored_glacier_objects\":\"true\"}}
Importante

O comando update-table do AWS Glue funciona no modo de substituição, o que significa que ele substitui a definição da tabela existente pela nova definição especificada pelo parâmetro table-input. Por esse motivo, não se esqueça de especificar também todos os campos que deseja que estejam em sua tabela no parâmetro table-input ao adicionar a propriedade read_restored_glacier_objects.