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 não tem servidor, então não há infraestrutura para gerenciar. Você só paga pelas consultas 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.
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 S3 por um papel ou por 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 inadvertidamente 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.
Na seção Administrador do Looker, selecione Conexões e clique em Adicionar conexão.
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 em443
. 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 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 esse botão para ativar as tabelas derivadas persistentes (PDTs). A ativação das TDPs revela mais 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 S3 em que você quer que o Looker grave suas 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 possíveis builds de TDP simultâneas na 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 Como conectar o Looker ao banco de dados.
- Outros parâmetros do JDBC: especifique outros parâmetros para a conexão:
- O parâmetro
s3_staging_dir
é o bucket do S3 que o Looker precisa usar para a saída de resultados de consulta e PDTs. Consulte a seção Como especificar seu bucket do S3 para saída de resultados de consulta e PDTs 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 parâmetros JDBC adicionais para melhorar significativamente o desempenho da extração de conjuntos de resultados grandes. Esse parâmetro é definido como0
por padrão. - Outros parâmetros opcionais a serem adicionados à string de conexão do JDBC.
- O parâmetro
- SSL: ignora. por padrão, todas as conexões com a API AWS serão criptografadas.
- Máximo de conexões por nó: por padrão, é definido como 5. É possível aumentar esse número em até 20 se o Looker for o principal mecanismo de consulta executado no Athena. Consulte a documentação sobre os limites de serviço do 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ã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 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 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 mais informações e uma lista de todas as opções de driver JDBC disponíveis.
No campo Parâmetros JDBC adicionais, 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 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 gravará PDTs, insira o caminho do diretório no bucket 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 o bucket 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á motivos para isso acontecer:
- O Athena armazena os resultados de cada consulta em um bucket do S3. Consulte Consultas do Athena.
- Se as TDPs estiverem ativadas, quando uma TDP for criada, os metadados sobre a tabela criada serão armazenados no bucket do S3.
Recursos
- Documentação do Amazon Athena
- Console da Amazon Web Services para Athena (requer login na AWS)
- Referência do Amazon Athena SQL e HiveQL
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 Outros parâmetros do JDBC 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 oferecer suporte a eles.
O Amazon Athena é compatível com os seguintes recursos a partir do Looker 24.14:
Recurso | Compatível? |
---|---|
Nível de suporte | Compatível |
Looker (Google Cloud Core) | Sim |
Agregações simétricas | Sim |
Tabelas derivadas | Sim |
Tabelas derivadas de SQL persistentes | Sim |
Tabelas derivadas nativas nativas | Sim |
Visualizações estáveis | Sim |
Eliminação de consultas | Sim |
Dinâmicas baseadas 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 |
Seleção do SQL Runner 10 | Sim |
Contagem de executores do SQL | Sim |
Explicação do SQL | Não |
Credenciais OAuth | Não |
Comentários de contexto | Sim |
Pool de conexão | Não |
Esboços do HLL | Sim |
Agregar reconhecimento | Sim |
TDPs incrementais | Não |
Milissegundos | Sim |
Microssegundos | Não |
Visualizações materializadas | Não |
Contagem aproximada diferente | Sim |
Próximas etapas
Depois de concluir a conexão do banco de dados, configure as opções de autenticação.