Amazon Athena

O Looker é compatível com conexões ao Amazon Athena, um serviço de consultas interativas que facilita a análise de dados no Amazon S3 usando SQL padrão. O Amazon Athena não tem servidor, então não há infraestrutura para gerenciar. Você paga apenas pelas consultas executadas.

Criptografar o tráfego de rede

É uma prática recomendada criptografar o tráfego de rede entre o aplicativo Looker e seu banco de dados. Considere uma das opções descritas na página de documentação Como ativar o acesso seguro ao banco de dados.

Como configurar uma conexão do Amazon Athena

Nesta página, descrevemos como conectar o Looker a uma instância do Amazon Athena.

  1. Verifique se você tem o seguinte:

    • Um par de chaves de acesso da AWS da Amazon.
    • O bucket do S3 que contém os dados que você quer consultar no Looker com o Amazon Athena. As chaves de acesso da AWS precisam ter acesso de leitura e gravação a esse bucket.

      O Amazon Athena precisa ter acesso a esse bucket do S3 por uma função ou um conjunto de permissões, além de regras de firewall. Não adicione regras de segurança ao bucket do S3 para o IP do Looker, porque isso pode bloquear inadvertidamente o acesso do Amazon Athena ao bucket do S3. Para outros dialetos além do Amazon Athena, os usuários podem limitar o acesso aos dados da camada de rede com uma lista de permissão de IP, conforme descrito na página de documentação Como ativar o acesso seguro ao banco de dados.

    • Conhecimento de onde os dados da instância do Amazon Athena estão localizados. O nome da região está na parte superior direita do console da Amazon.

  2. Na seção Administrador do Looker, selecione Conexões e clique em Adicionar conexão.

  3. Preencha os detalhes da conexão:

    • Nome: especifique o nome da conexão. É assim que você vai se referir à conexão nos projetos do LookML.
    • Dialeto: selecione Amazon Athena.
    • Host e Porta: especifique o nome do host e da porta conforme descrito na documentação do Athena sobre o formato do URL JDBC. O host precisa ser um endpoint da Amazon válido (como athena.eu-west-1.amazonaws.com), e a porta precisa permanecer em 443. Uma lista atualizada de endpoints compatíveis com o Athena pode ser encontrada nesta página de referência geral da AWS.
    • Banco de dados: especifique o banco de dados padrão que você quer modelar. Outros bancos de dados podem ser acessados, mas o Looker trata esse banco de dados como o padrão.
    • Nome de usuário: especifique o ID da chave de acesso da AWS.
    • Senha: especifique a chave de acesso secreta da AWS.
    • Ativar TDPs: use essa opção para ativar as tabelas derivadas persistentes (TDPs). Ao ativar as TDPs, outros campos de TDP e a seção Substituições de TDP da conexão são exibidos.
    • Banco de dados temporário: especifique o nome do diretório de saída no bucket do S3 em que você quer que o Looker grave suas PDTs. O caminho completo para o diretório de saída precisa ser especificado no campo Parâmetros JDBC adicionais. Consulte a seção Especificar seu bucket do S3 para saída de resultados de consultas e TDPs nesta página.
    • Número máximo de conexões do builder da TDP: especifique o número de builds simultâneos possíveis de TDP nessa conexão. Definir um valor muito alto pode afetar negativamente os tempos de consulta. Para mais informações, consulte a página de documentação Conectar o Looker ao seu banco de dados.
    • Parâmetros JDBC adicionais: especifique outros parâmetros para a conexão:
      • O parâmetro s3_staging_dir é o bucket do S3 que o Looker deve usar para a saída de resultados da consulta e as PDTs. Consulte a seção Especificar seu bucket do S3 para saída de resultados da consulta e PDTs nesta página.
      • Sinalize para resultados de streaming. Se você tiver a política athena:GetQueryResultsStream anexada ao seu usuário do Athena, adicione ;UseResultsetStreaming=1 ao final dos parâmetros JDBC extras para melhorar significativamente o desempenho da extração de conjuntos de resultados grandes. Por padrão, esse parâmetro é definido como 0.
      • Parâmetros opcionais adicionais a serem incluídos na string de conexão JDBC.
    • SSL: ignorar. Por padrão, todas as conexões com a API da AWS são criptografadas.
    • Máximo de conexões por nó: por padrão, esse valor é definido como 5. É possível aumentar esse número para até 20 se o Looker for o principal mecanismo de consulta executado no Athena. Consulte a documentação de limites do serviço Athena para mais detalhes. Consulte a página de documentação Conectar o Looker ao seu banco de dados para mais informações.
    • Tempo limite do pool de conexões: especifique o tempo limite do pool de conexões. Por padrão, o tempo limite é definido como 120 segundos. Consulte a página de documentação Conectar o Looker ao seu banco de dados para mais informações.
    • Pré-cache do SQL Runner: desmarque essa opção se preferir que o SQL Runner carregue as informações da tabela somente quando ela for selecionada. Consulte a página de documentação Conectar o Looker ao seu banco de dados para mais informações.
    • Fuso horário do banco de dados: especifique o fuso horário usado no banco de dados. Deixe esse campo em branco se não quiser a conversão de fuso horário. Consulte a página de documentação Usar configurações de fuso horário para mais informações.

Para verificar se a conexão foi bem-sucedida, clique em Testar. Consulte a página de documentação Testar a conectividade do banco de dados para informações sobre solução de problemas.

Para salvar essas configurações, clique em Conectar.

Especificar seu bucket do S3 para saída de resultados de consulta e PDTs

Use o campo Parâmetros JDBC adicionais da página Conexões para configurar o caminho do bucket do S3 que o Looker vai usar para armazenar a saída dos resultados da consulta e especificar o nome do diretório de saída no bucket do S3 em que você quer que o Looker grave os PDTs. Especifique essas informações usando o parâmetro s3_staging_dir.

O parâmetro JDBC s3_staging_dir é uma maneira alternativa de configurar a propriedade S3OutputLocation do Amazon Athena, que é necessária para conexões JDBC do Athena. Consulte a documentação do Athena sobre opções de driver JDBC para mais informações e uma lista de todas as opções de driver JDBC disponíveis.

No campo Parâmetros adicionais do JDBC, especifique o parâmetro s3_staging_dir usando o seguinte formato:

`s3_staging_dir=s3://<s3-bucket>/<output-path>`

Em que:

  • <s3-bucket> é o nome do bucket do S3.
  • <output-path> é o caminho em que o Looker vai gravar a saída dos resultados da consulta.

O par de chaves de acesso da AWS precisa ter permissões de gravação no diretório <s3-bucket>.

Para configurar o diretório em que o Looker vai gravar PDTs, insira o caminho do diretório no bucket do S3 no campo Banco de dados temporário. Por exemplo, se você quiser que o Looker grave PDTs em s3://<s3-bucket>/looker_scratch, insira o seguinte no campo Banco de dados temporário:

`looker_scratch`

Insira apenas o caminho do diretório. O Looker recebe o nome do bucket do S3 do parâmetro s3_staging_dir inserido no campo Parâmetros JDBC adicionais.

Considerações sobre buckets do S3

Recomendamos que você configure os ciclos de vida de objetos do Amazon S3 para limpar periodicamente os arquivos desnecessários no bucket do S3 especificado. Há alguns motivos para isso:

  • O Athena armazena os resultados de cada consulta em um bucket do S3. Consulte Consultas do Athena.
  • Se você tiver as TDPs ativadas, quando uma TDP for criada, os metadados sobre a tabela criada serão armazenados no bucket do S3.

Recursos

Depuração

A Amazon oferece opções de driver JDBC LogLevel e LogPath para depurar conexões. Para usá-los, adicione ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log ao final do campo Parâmetros JDBC adicionais e teste a conexão novamente.

Se o Looker estiver hospedando a instância, o suporte do Looker ou seu analista precisará recuperar esse arquivo para continuar a depuração.

Suporte a recursos

Para que o Looker ofereça suporte a alguns recursos, o dialeto do banco de dados também precisa ser compatível com eles.

O Amazon Athena é compatível com os seguintes recursos a partir do Looker 26.0:

Recurso Compatível?
Looker (Google Cloud Core)
Agregações simétricas
Tabelas derivadas
Tabelas derivadas persistentes em SQL
Tabelas derivadas nativas persistentes
Visualizações estáveis
Interrupção de consultas
Tabelas dinâmicas baseadas em SQL
Fusos horários
SSL
Subtotais
Parâmetros adicionais do JDBC
Diferenciação entre maiúsculas e minúsculas
Tipo de local
Tipo de lista
Percentil
Percentil distinto
Mostrar processos do SQL Runner
Descrever tabela do SQL Runner
Mostrar índices do SQL Runner
SQL Runner Select 10
Contagem do SQL Runner
Explicação do SQL
Credenciais do OAuth 2.0
Comentários contextuais
Pooling de conexão
Esboços HLL
Reconhecimento agregado
TDPs incrementais
Milissegundos
Microssegundos
Visualizações materializadas.
Medidas de comparação de períodos
Contagem aproximada aproximada

Próximas etapas

Depois de concluir a conexão do banco de dados, configure as opções de autenticação.