Amazon Athena

O Looker oferece suporte a conexões com o Amazon Athena, um serviço de consulta interativa que facilita a análise de dados no Amazon S3 usando o SQL padrão. O Amazon Athena é sem servidor, portanto, não há infraestrutura para gerenciar. Você só vai receber cobranças pelas consultas que forem executadas.

Como 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 Amazon AWS.
    • O bucket S3 que contém os dados que você quer consultar no Looker com o Amazon Athena. As chaves de acesso da Amazon 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, bem como por regras de firewall. Não adicione regras de segurança ao bucket do S3 para o IP do Looker, porque isso pode bloquear acidentalmente o acesso do Amazon Athena ao bucket do S3. Para outros dialetos além do Amazon Athena, os usuários podem querer limitar o acesso aos dados da camada de rede com uma lista de permissões de IP, conforme descrito na página de documentação Como ativar o acesso seguro ao banco de dados.

    • Conhecimento da localização dos dados da instância do Amazon Athena. O nome da região pode ser encontrado 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 de URL JDBC. O host precisa ser um endpoint válido da Amazon, 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 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). A ativação das TDPs revela outros campos de TDP e a seção Substituições de TDP da conexão.
    • 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 as PDTs. Especifique o caminho completo para o diretório de saída no campo Parâmetros adicionais do JDBC. consulte a seção Como especificar o bucket do S3 para a saída dos resultados da consulta e as TDPs nesta página.
    • Número máximo de conexões do criador de TDP: especifique o número de builds de TDP simultâneos possíveis 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 Como 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 dos resultados da consulta e as PDTs. consulte a seção Como especificar o bucket do S3 para resultados de consulta e TDPs nesta página.
      • Sinalização para resultados de streaming. Se você tiver a política athena:GetQueryResultsStream anexada ao usuário do Athena, adicione ;UseResultsetStreaming=1 ao final dos outros parâmetros JDBC para melhorar significativamente o desempenho da extração de um conjunto de resultados grande. Esse parâmetro é definido como 0 por padrão.
      • Parâmetros adicionais opcionais para adicionar à string de conexão JDBC.
    • SSL: ignore. Por padrão, todas as conexões com a API da AWS serão criptografadas.
    • Máximo de conexões por nó: por padrão, é definido como 5. Você pode aumentar esse número em até 20 se o Looker for o principal mecanismo de consulta executado no Athena. Consulte a documentação sobre limites de serviço do Athena para mais detalhes. Consulte a página de documentação Como conectar o Looker ao banco de dados para mais informações.
    • Tempo limite do pool de conexão: especifique o tempo limite do pool de conexão. Por padrão, o tempo limite é definido como 120 segundos. Consulte a página de documentação Como 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 informações da tabela somente quando uma tabela for selecionada. Consulte a página de documentação Como 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 este campo em branco se não quiser a conversão de fuso horário. Consulte a página de documentação Como usar as 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 Teste de conectividade do banco de dados para informações sobre solução de problemas.

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

Como especificar o bucket do S3 para a saída dos resultados da consulta e TDPs

Use o campo Parâmetros JDBC adicionais da página Conexões para configurar o caminho para o 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 as opções de driver JDBC para saber mais e ver uma lista de todas as opções disponíveis.

No campo Outros parâmetros 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 os 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 isso no campo Banco de dados temporário:

`looker_scratch`

Digite 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 adicionais do JDBC.

Considerações sobre buckets do S3

É recomendável configurar os ciclos de vida de objetos do Amazon S3 para limpar periodicamente os arquivos desnecessários no bucket especificado do S3. 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 PDTs ativados, quando um PDT for criado, os metadados sobre a tabela criada serão armazenados no bucket do S3.

Recursos

Depuração

A Amazon oferece opções de drivers 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 vai 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 oferece suporte aos seguintes recursos a partir do Looker 24.18:

Recurso Compatível?
Nível de suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregações simétricas
Sim
Tabelas derivadas
Sim
Tabelas derivadas SQL persistentes
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Pivots baseados em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Não
Parâmetros adicionais do JDBC
Sim
Diferenciar maiúsculas e minúsculas
Sim
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Não
Processos de exibição do SQL Runner
Não
Tabela de descrição do executor do SQL
Sim
Índices de exibição do SQL Runner
Não
SQL Runner Select 10
Sim
Contagem do SQL Runner
Sim
Explicação do SQL
Não
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexões
Não
Esboços HLL
Sim
Agregar reconhecimento
Sim
TDPs incrementais
Não
Milissegundos
Sim
Microssegundos
Não
Visualizações materializadas
Não
Contagem aproximada distinta
Sim

Próximas etapas

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