Perguntas e respostas básicas da entrevista do Hive 2022
Publicados: 2021-01-08As entrevistas de Big Data podem ser conduzidas em linhas gerais (nas quais você deve ter uma ideia geral sobre as estruturas e ferramentas populares de Big Data) ou podem ser focadas em uma estrutura ou ferramenta específica. Hoje, vamos nos concentrar em uma estrutura de Big Data amplamente utilizada – Apache Hive.
Criamos esta lista de perguntas da entrevista do Apache Hive para ajudá-lo a ter uma ideia melhor sobre o tipo de perguntas que os empregadores costumam fazer durante as entrevistas do Hadoop relacionadas ao Hive.
Então, se você é alguém que deseja pregar a entrevista do Hive, continue lendo até o final!
- O que é Apache Hive?
Apache Hive é uma estrutura de armazenamento de dados construída sobre o Hadoop. É usado principalmente para analisar dados estruturados e semiestruturados. O Hive foi projetado para projetar estrutura nos dados e executar consultas escritas em HQL (Hive Query Language), semelhante às instruções SQL. Além disso, o compilador Hive transforma essas consultas em tarefas de redução de mapa.
- Que tipo de aplicativos o Hive pode suportar?
O Hive pode suportar qualquer aplicativo escrito em Python, Java, C++, Ruby e PHP.
- O que você quer dizer com um Metastore? Por que o Hive não armazena os metadados no HDFS?
Metastore é um repositório no Hive que armazena as informações de metadados. Ele faz isso aproveitando o RDBMS junto com uma camada ORM (Object Relational Model) de código aberto chamada Data Nucleus que transforma a representação do objeto no esquema relacional e vice-versa.

O Hive armazena informações de metadados usando RDBMS e não HDFS, pois as operações de leitura/gravação usando HDFS são um processo demorado. O RDBMS tem uma vantagem sobre ele, pois ajuda a obter baixa latência.
- Diferencie entre Metastore Local e Remoto.
Um metastore local é executado na mesma JVM em que o serviço Hive é executado. Ele pode se conectar a um banco de dados em execução em uma JVM separada na mesma máquina ou em uma máquina remota. Pelo contrário, um metastore remoto é executado em uma JVM separada e não naquela em que o serviço Hive é executado.
- O que você quer dizer com uma partição no Hive? Qual é a sua importância?
No Hive, as tabelas são classificadas e organizadas em partições para organizar tipos semelhantes de dados juntos, de acordo com uma coluna ou chave de partição. Portanto, uma partição é na verdade um subdiretório no diretório da tabela. Uma tabela pode ter mais de uma chave de partição para uma partição específica.
Por meio do particionamento, você pode obter granularidade em uma tabela Hive. Isso ajuda a reduzir a latência da consulta, pois verifica apenas dados particionados relevantes em vez de todo o conjunto de dados.
- O que é uma variável Hive?
Uma variável Hive é criada no ambiente Hive desenvolvido por linguagens de script Hive. Usando o comando source, ele transfere valores para consultas do hive quando a consulta começa a ser executada.
- Para que tipo de aplicativos de data warehouse o Hive é adequado?
Os regulamentos de design do Hadoop e HDFS colocam certas limitações nas habilidades do Hive. Além disso, não possui os recursos necessários para o OLTP (Online Transaction Processing). O Hive é mais adequado para aplicativos de data warehouse em grandes conjuntos de dados que exigem:
- Análise dos dados relativamente estáticos.
- Menor tempo de resposta.
- Sem alterações dinâmicas nos dados.
- O que é um Índice Hive?
O índice do Hive é um método de otimização de consulta do Hive. Ele é usado para acelerar o acesso de uma coluna específica ou conjunto de colunas em um banco de dados Hive. Ao utilizar um índice Hive, o sistema de banco de dados não precisa ler todas as linhas em uma tabela para encontrar os dados escolhidos.
- Por que você precisa do Hcatolog?
Hcatalog é necessário para compartilhar estruturas de dados com sistemas externos. Ele fornece acesso ao metastore do Hive, para que você possa ler/gravar dados no data warehouse do Hive.

- Nomeie os componentes de um processador de consulta do Hive?
Os componentes de um processador de consulta Hive são:
- Plano Lógico de Geração.
- Plano Físico de Geração.
- Motor de Execução.
- UDFs e UDAFs.
- Operadores.
- Otimizador.
- Analisador.
- Analisador Semântico.
- Verificação de tipo.
- Como as tabelas de formato ORC ajudam o Hive a melhorar o desempenho?
Usando o formato de arquivo ORC (Optimized Row Columnar), você pode armazenar os dados do Hive com eficiência, pois ajuda a simplificar várias limitações do formato de arquivo do Hive.
- Qual é a função do Object-Inspector?
No Hive, o Object-Inspector ajuda a analisar a estrutura interna de um objeto de linha e a estrutura individual de colunas. Além disso, também oferece maneiras de acessar objetos complexos que podem ser armazenados em diferentes formatos na memória.
- Qual é a diferença entre Hive e HBase?
Os principais pontos de diferenciação entre Hive e HBase são:

- O Hive é uma estrutura de armazenamento de dados, enquanto o HBase é um banco de dados NoSQL.
- Embora o Hive possa executar a maioria das consultas SQL, o HBase não permite consultas SQL.
- O Hive não oferece suporte a operações de inserção, atualização e exclusão em nível de registro em uma tabela, mas o HBase oferece suporte a essas funções.
- O Hive é executado em cima do MapReduce, mas o HBase é executado em cima do HDFS.
- O que é uma tabela gerenciada e uma tabela externa?
Em uma tabela gerenciada, as informações de metadados e os dados da tabela são excluídos do diretório do warehouse do Hive se você sair/sair de uma tabela gerenciada. No entanto, em uma tabela externa, apenas as informações de metadados associadas à tabela são excluídas enquanto os dados da tabela são retidos no HDFS.
- Nomeie os diferentes componentes de uma arquitetura Hive.
Existem 5 componentes de uma Arquitetura Hive:
- Interface do usuário – Permite ao usuário enviar consultas e outras operações ao sistema Hive. A interface do usuário oferece suporte à interface do usuário da Web do Hive, linha de comando do Hive e Hive HD Insight.
- Driver – Cria um identificador de sessão para as consultas e, em seguida, envia as consultas ao compilador para criar um plano de execução para as mesmas.
- Metastore – Contém os dados estruturados junto com todas as informações das diferentes tabelas e partições do warehouse (com atributos). Ao receber a solicitação de metadados, ele envia os metadados ao compilador para executar as consultas.
- Compilador – Gera o plano de execução para analisar as consultas, realizar análise semântica em diferentes blocos de consulta e gerar expressão de consulta.
- Mecanismo de Execução – Enquanto o compilador faz o plano de execução, o mecanismo de execução o implementa. Gerencia as dependências das diversas etapas do plano.
Obviamente, há mais no Hive do que apenas essas 15 perguntas. Esses são apenas os conceitos básicos que ajudarão você a aprender mais sobre o Hive.
Se você estiver interessado em saber mais sobre Big Data, confira nosso programa PG Diploma in Software Development Specialization in Big Data, projetado para profissionais que trabalham e fornece mais de 7 estudos de caso e projetos, abrange 14 linguagens e ferramentas de programação, práticas práticas workshops, mais de 400 horas de aprendizado rigoroso e assistência para colocação de emprego com as principais empresas.
Feliz aprendizado!