O Looker suporta ligações ao Amazon Athena, um serviço de consultas interativo que facilita a análise de dados no Amazon S3 através do SQL padrão. O Amazon Athena é sem servidor, pelo que não existe infraestrutura para gerir. Só lhe são cobradas as consultas executadas.
Encriptar o tráfego de rede
É uma prática recomendada encriptar o tráfego de rede entre a aplicação Looker e a sua base de dados. Considere uma das opções descritas na página de documentação Ativar o acesso seguro à base de dados.
Configurar uma ligação do Amazon Athena
Esta página descreve como associar o Looker a uma instância do Amazon Athena.
Certifique-se de que tem o seguinte:
- Um par de chaves de acesso do Amazon AWS.
O contentor do S3 que contém os dados que quer consultar no Looker com o Amazon Athena. As chaves de acesso do Amazon AWS têm de ter acesso de leitura/escrita a este contentor.
O Amazon Athena tem de ter acesso a este contentor do S3 através de uma função ou de um conjunto de autorizações, bem como de regras de firewall. Não adicione regras de segurança ao contentor do S3 para o IP do Looker, uma vez que isto pode bloquear inadvertidamente o acesso do Amazon Athena ao contentor do S3. (Para outros dialetos além do Amazon Athena, os utilizadores podem querer limitar o acesso aos dados a partir da camada de rede com uma lista de IPs permitidos, conforme descrito na página de documentação Ativar o acesso seguro à base de dados.)
Conhecimento da localização dos dados da instância do Amazon Athena. Pode encontrar o nome da região na parte superior direita da consola da Amazon.
Na secção Administração do Looker, selecione Ligações e, de seguida, clique em Adicionar ligação.
Preencha os detalhes da associação:
- Nome: especifique o nome da associação. É assim que se vai referir à ligação nos projetos do LookML.
- Dialeto: selecione Amazon Athena.
- Host e Port: especifique o nome do anfitrião e a porta, conforme descrito na documentação do Athena sobre o formato do URL JDBC. O anfitrião deve ser um ponto final da Amazon válido (como
athena.eu-west-1.amazonaws.com
) e a porta deve permanecer em443
. Pode encontrar uma lista atualizada de pontos finais que suportam o Athena nesta página de referência geral da AWS. - Base de dados: especifique a base de dados predefinida que quer modelar. Pode aceder a outras bases de dados, mas o Looker trata esta base de dados como a base de dados predefinida.
- Nome de utilizador: especifique o ID da chave de acesso da AWS.
- Palavra-passe: especifique a chave de acesso secreta da AWS.
- Ativar PDTs: use este botão para ativar as tabelas derivadas persistentes (PDTs). A ativação das PDTs revela campos de PDT adicionais e a secção Substituições de PDTs para a associação.
- Base de dados temporária: especifique o nome do diretório de saída no seu contentor do S3 onde quer que o Looker escreva as PDTs. O caminho completo para o diretório de saída tem de ser especificado no campo Parâmetros JDBC adicionais. Consulte a secção Especificar o seu contentor do S3 para a saída de resultados de consultas e PDTs nesta página.
- Número máximo de ligações de compilador de PDTs: especifique o número de compilações de PDTs simultâneas possíveis nesta ligação. Definir este valor demasiado alto pode afetar negativamente os tempos de consulta. Para mais informações, consulte a página de documentação Estabelecer ligação do Looker à sua base de dados.
- Parâmetros JDBC adicionais: especifique parâmetros adicionais para a ligação:
- O parâmetro
s3_staging_dir
é o contentor do S3 que o Looker deve usar para a saída dos resultados da consulta e as PDTs. Consulte a secção Especificar o seu contentor do S3 para a saída dos resultados da consulta e as PDTs nesta página. - Sinalize para resultados de streaming. Se tiver a política
athena:GetQueryResultsStream
anexada ao seu utilizador do Athena, pode adicionar;UseResultsetStreaming=1
ao final dos parâmetros JDBC adicionais para melhorar significativamente o desempenho da extração de grandes conjuntos de resultados. Este parâmetro está predefinido como0
. - Parâmetros adicionais opcionais a adicionar à string de ligação JDBC.
- O parâmetro
- SSL: ignorar; por predefinição, todas as ligações à API AWS são encriptadas.
- Máximo de ligações por nó: por predefinição, esta opção está definida como 5. Pode aumentar este valor até 20 se o Looker for o motor de consulta principal em execução no Athena. Consulte a documentação sobre os limites do serviço Athena para ver mais detalhes sobre os limites do serviço. Consulte a página de documentação Ligar o Looker à sua base de dados para mais informações.
- Limite de tempo do conjunto de ligações: especifique o limite de tempo do conjunto de ligações. Por predefinição, o limite de tempo está definido como 120 segundos. Consulte a página de documentação Ligar o Looker à sua base de dados para mais informações.
- Pré-cache da execução de SQL: desmarque esta opção se preferir que a execução de SQL carregue as informações da tabela apenas quando uma tabela é selecionada. Consulte a página de documentação Ligar o Looker à sua base de dados para mais informações.
- Fuso horário da base de dados: especifique o fuso horário usado na base de dados. Deixe este campo em branco se não quiser a conversão do fuso horário. Consulte a página de documentação Usar definições de fuso horário para mais informações.
Para verificar se a associação foi bem-sucedida, clique em Testar. Consulte a página de documentação Testar a conetividade da base de dados para ver informações de resolução de problemas.
Para guardar estas definições, clique em Associar.
Especificar o seu contentor do S3 para a saída dos resultados das consultas e os PDTs
Use o campo Additional JDBC parameters (Parâmetros JDBC adicionais) da página Connections (Ligações) para configurar o caminho para o contentor do S3 que o Looker vai usar para armazenar a saída dos resultados das consultas e para especificar o nome do diretório de saída no contentor do S3 onde quer que o Looker escreva PDTs. Especifique estas informações através do parâmetro s3_staging_dir
.
O parâmetro JDBC s3_staging_dir
é uma forma alternativa de configurar a propriedade S3OutputLocation
do Amazon Athena, que é necessária para as ligações JDBC do Athena. Consulte a documentação do Athena sobre as opções do controlador JDBC para ver mais informações e uma lista de todas as opções do controlador JDBC disponíveis.
No campo Parâmetros JDBC adicionais, especifique o parâmetro s3_staging_dir
com o seguinte formato:
`s3_staging_dir=s3://<s3-bucket>/<output-path>`
Onde:
<s3-bucket>
é o nome do contentor do S3.<output-path>
é o caminho onde o Looker escreve o resultado da consulta.
O par de chaves de acesso da AWS tem de ter autorizações de escrita no diretório
<s3-bucket>
.
Para configurar o diretório onde o Looker vai escrever PDTs, introduza o caminho do diretório no contentor do S3 no campo Base de dados temporária.
Por exemplo, se quiser que o Looker escreva PDTs em s3://<s3-bucket>/looker_scratch
, introduza o seguinte no campo Base de dados temporária:
`looker_scratch`
Introduza apenas o caminho do diretório. O Looker obtém o nome do contentor do S3 a partir do parâmetro s3_staging_dir
que introduz no campo Parâmetros JDBC adicionais.
Considerações sobre o contentor do S3
Recomendamos que configure os ciclos de vida dos objetos do Amazon S3 para limpar periodicamente os ficheiros desnecessários no contentor do S3 especificado. Existem motivos para tal:
- O Athena armazena os resultados das consultas para cada consulta num contentor do S3. Consulte Consultas do Athena.
- Se tiver PDTs ativadas, quando uma PDT é criada, os metadados sobre a tabela criada são armazenados no contentor do S3.
Recursos
- Documentação do Amazon Athena
- Consola dos Amazon Web Services para o Athena (requer um início de sessão na AWS)
- Referência de SQL e HiveQL do Amazon Athena
Depuração
A Amazon oferece opções de controladores JDBC LogLevel
e LogPath
para depurar ligações. Para os usar, adicione ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log
ao final do campo Parâmetros JDBC adicionais e teste a ligação novamente.
Se o Looker estiver a alojar a instância, o apoio técnico do Looker ou o seu analista tem de obter este ficheiro para continuar a depuração.
Suporte de funcionalidades
Para que o Looker suporte algumas funcionalidades, o dialeto da base de dados também tem de as suportar.
O Amazon Athena suporta as seguintes funcionalidades a partir do Looker 25.14:
Funcionalidade | Compatível? |
---|---|
Nível de apoio técnico | Suportado |
Looker (Google Cloud Core) | Sim |
Dados agregados simétricos | Sim |
Tabelas derivadas | Sim |
Tabelas derivadas SQL persistentes | Sim |
Tabelas derivadas nativas persistentes | Sim |
Vistas 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 JDBC adicionais | Sim |
Sensível a maiúsculas e minúsculas | Sim |
Tipo de localização | Sim |
Tipo de lista | Sim |
Percentil | Sim |
Percentil distinto | Não |
Execução de SQL Mostrar processos | Não |
Execução de SQL Describe Table | Sim |
Execução de SQL Mostrar índices | Não |
Execução de SQL Select 10 | Sim |
Contagem da execução de SQL | Sim |
SQL Explain | Não |
Credenciais do OAuth 2.0 | Não |
Comentários de contexto | Sim |
Agrupamento de ligações | Não |
Esboços HLL | Sim |
Notoriedade agregada | Sim |
PDTs incrementais | Não |
Milissegundos | Sim |
Microssegundos | Não |
Vistas materializadas | Não |
Medidas de comparação de períodos | Não |
Contagem distinta aproximada | Sim |
Passos seguintes
Depois de concluir a ligação à base de dados, configure as opções de autenticação.