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.

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 PDTs, outros campos de PDT e a seção Substituições de PDT 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 esse 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.
      • Flag 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 a performance da extração de conjuntos de resultados grandes. Por padrão, esse parâmetro é definido como 0.
      • Parâmetros adicionais opcionais a serem adicionados à 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 Como 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 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 as informações da tabela somente quando ela 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 esse 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 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 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 PDTs ativadas, quando uma PDT 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 25.10:

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

Próximas etapas

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