Apache Hive

Esta página contém informações sobre como conectar o Looker ao Apache Hive.

Introdução

O Looker foi projetado para se conectar a um servidor de banco de dados via JDBC. No caso do Hive, este é o servidor brechó (HiveServer2). Consulte a documentação do Apache para mais informações.

Por padrão, esse servidor atenderá na porta 10000.

O Looker é uma ferramenta de consulta interativa, então espera-se que funcione com um mecanismo SQL interativo. Se o Hive estiver sendo executado no MapReduce (hive.execution.engine estiver definido como mr), ele retornará os resultados da consulta lentamente demais para não ser práticos.

O Looker foi testado com o Hive on Tez (hive.execution.engine=tez), embora também seja possível executá-lo no Hive no Spark. A compatibilidade com o Spark foi adicionada no Hive versão 1.1. O Looker é compatível com Hive 1.2.1+.

Tabelas derivadas permanentes (PDTs, na sigla em inglês)

Para ativar tabelas derivadas permanentes (PDTs, na sigla em inglês) no Looker usando uma conexão Hive, crie um esquema de rascunho para ser usado pelo Looker. Veja um exemplo de um comando que pode ser usado para criar um esquema looker_scratch:

 CREATE SCHEMA looker_scratch;

A conta de usuário que o Looker usa para se conectar ao Hive (que pode ser anônimo se nenhuma autenticação for usada) precisa ter os seguintes recursos no esquema de rascunho:

  • crie tabelas
  • Alterar tabelas
  • Soltar tabelas

Teste isso com um cliente JDBC antes de tentar criar PDTs com o Hive.

Filas

Se você quiser que as consultas do Looker entrem em uma fila específica, insira o parâmetro do nome da fila no campo Parâmetros JDBC adicionais na página Configurações de conexão:

?tez.queue.name=the_bi_queue

Outros parâmetros do Hive podem ser definidos dessa maneira no campo Parâmetros JDBC adicionais na página Configurações de conexão.

Usando atributos de usuário, é possível que consultas de diferentes usuários ou grupos de usuários entrem em filas distintas. Para fazer isso, crie um atributo de usuário chamado algo como queue_name. Em seguida, no campo Parâmetros JDBC adicionais, adicione o seguinte:

?tez.queue.name={{ _user_attributes['queue_name'] }}

Você também pode usá-lo para personalizar outros parâmetros hive-site.xml por usuário ou grupo.

Como criar a conexão do Looker com seu banco de dados

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

Preencher os detalhes de conexão. A maioria das configurações é comum para a maioria dos dialetos de banco de dados. Consulte a página de documentação Como conectar o Looker ao seu banco de dados para mais informações. Algumas das configurações são descritas a seguir:

  • Nome: especifique o nome da conexão. É assim que você vai se referir à conexão em projetos do LookML.
  • Dialeto: especifique o dialeto: Apache Hive 2, Apache Hive 2.3+ ou Apache Hive 3.1.2+.

    Para o Apache Hive 3.1.2+, o Looker só pode ser totalmente integrado aos bancos de dados do Apache Hive 3 em versões especificamente 3.1.2 ou superiores. Isso ocorre devido a um problema de análise de consulta das versões 2.4.0 a 3.1.2 do Hive, o que resultou em tempos de análise extremamente longos para o SQL gerado pelo Looker.

  • Host: especifique o nome do host.

  • Porta: especifique a porta do banco de dados.

  • Banco de dados: especifique o nome do banco de dados.

  • Nome de usuário: especifique o nome de usuário do banco de dados.

  • Senha: especifique a senha do usuário do banco de dados.

  • Ativar TDPs: use este botão para ativar as tabelas derivadas permanentes. Quando as TDPs estão ativadas, a janela Conexão mostra as outras configurações e a seção Modificações de TDP.

  • Banco de dados temporário: especifique o nome do esquema de rascunho criado na seção PDTs acima.

  • Número máximo de conexões do PDT Builder: especifique o número de criações simultâneas de PDT simultâneas 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 Como conectar o Looker ao seu banco de dados.

  • Outros parâmetros JDBC: especifique parâmetros de string JDBC adicionais.

  • Programação de manutenção de PDT e grupo de dados: especifique uma expressão cron que indique quando o Looker deve verificar grupos de dados e as tabelas derivadas permanentes. Programação de manutenção de PDT e grupo de dados

  • SSL: marque para usar conexões SSL.

  • Verify SSL: verifique a verificação do nome do host.

  • Máximo de conexões por nó: esta configuração pode ser inicialmente mantida com o valor padrão. 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: esta configuração pode ser mantida com o valor padrão inicialmente. Leia mais sobre essa configuração na seção Tempo limite do pool de conexões da página de documentação Como conectar o Looker ao seu banco de dados.

  • Pré-cache do SQL Runner: para fazer com que o SQL Runner não pré-carregue as informações da tabela e carregue as informações dela apenas quando uma tabela estiver selecionada, desmarque essa opção. Leia mais sobre essa configuração na seção Pré-cache do SQL Runner da página de documentação Como conectar o Looker ao seu banco de dados.

  • Fuso horário do banco de dados: especifique o fuso horário usado no banco de dados. Deixe esse campo em branco se você não quiser a conversão de fuso horário. Consulte a página de documentação Como usar configurações de fuso horário para mais informações.

Para verificar se a conexão foi concluída, clique em Testar. Consulte a página de documentação Como testar a conectividade do banco de dados para ver informações sobre solução de problemas.

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

Suporte a recursos

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

Apache Hive 2.

O Apache Hive 2 é compatível com os seguintes recursos a partir do Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Não
Agregados simétricos
Não
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Não
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Sim
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Não
Processos do SQL Runner Show
Não
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

Apache Hive 2.3+

O Apache Hive 2.3+ é compatível com os seguintes recursos a partir do Looker 23.8:

Recurso Compatível?
Nível do suporte
Integração
Looker (Google Cloud Core)
Não
Agregados simétricos
Não
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Não
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Sim
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Não
Processos do SQL Runner Show
Não
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

Apache Hive versão 3.1.2 ou posterior

O Apache Hive 3.1.2+ é compatível com os seguintes recursos a partir do Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregados simétricos
Não
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Não
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Sim
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Não
Processos do SQL Runner Show
Não
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Não
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

Próximas etapas

Depois de conectar seu banco de dados ao Looker, configure as opções de login para seus usuários.