Introdução à arquitetura Hive

A Hive Architecture é construída sobre o ecossistema Hadoop. O Hive freqüentemente tem interações com o Hadoop. O Apache Hive lida com o sistema de banco de dados SQL do domínio e com a Redução de mapa. Os aplicativos Hive podem ser escritos em várias linguagens como Java, python. A arquitetura do Hive mostra como escrever a linguagem de consulta do hive e como as interações entre o programador são feitas usando a interface da linha de comandos. A linguagem de consulta do Hive faz o trabalho de converter todas as tarefas de cluster do Hadoop por meio da redução de mapa. Como todos sabíamos, o Hadoop processava big data em um ambiente distribuído e formava uma estrutura de código aberto. Com o hive, é flexível gerenciar e executar a consulta e um bom suporte para executar funções como encapsulamento e consultas ad-hoc. Este artigo fornece uma breve introdução à arquitetura de seção, que reside na camada Hadoop para executar resumos em big data.

Arquitetura do Hive com seus componentes

O Hive desempenha um papel importante na análise de dados e na integração de inteligência de negócios e suporta formatos de arquivo como arquivo de texto e arquivo rc. O Hive usa um sistema distribuído para processar e executar consultas e, finalmente, o armazenamento é feito no disco e finalmente processado usando uma estrutura de redução de mapa. Ele resolve o problema de otimização encontrado em mapa-reduzir e seção executar tarefas em lote que são claramente explicadas no fluxo de trabalho. Aqui, uma meta-loja armazena informações do esquema. Uma estrutura chamada Apache Tez foi projetada para desempenho de consultas em tempo real.

Os principais componentes do Hive são apresentados abaixo:

  1. Clientes do Hive
  2. Hive Services
  3. Armazenamento de seção (Meta storage)

O diagrama acima mostra a arquitetura do Hive e seus elementos componentes.

Clientes da Hive:

Eles incluem o aplicativo Thrift para executar comandos de seção fáceis, disponíveis para python, ruby, C ++ e drivers. Esses aplicativos cliente se beneficiam da execução de consultas na seção. O Hive possui três tipos de categorização de clientes: clientes econômicos, clientes JDBC e ODBC.

Serviços de colméia:

Para processar todas as seções da consulta, existem vários serviços. Todas as funções são facilmente definidas pelo usuário na seção. Vamos ver todos esses serviços em breve:

  • Interface da linha de comandos ( interface do usuário): permite a interação entre o usuário e a seção, um shell padrão. Ele fornece uma GUI para executar a linha de comando e o insight da seção. Também podemos usar interfaces da Web (HWI) para enviar as consultas e interações com um navegador da web.
  • Driver Hive: Ele recebe consultas de diferentes fontes e clientes, como o servidor thrift, e armazena e busca no driver ODBC e JDBC, que são automaticamente conectados à seção. Este componente faz análise semântica ao ver as tabelas do metastore que analisa uma consulta. O driver leva a ajuda do compilador e executa funções como analisador, planejador, execução de tarefas do MapReduce e otimizador.
  • Compilador: O processo de análise e semântica da consulta é feito pelo compilador. Ele converte a consulta em uma árvore de sintaxe abstrata e novamente no DAG para compatibilidade. O otimizador, por sua vez, divide as tarefas disponíveis. O trabalho do executor é executar as tarefas e monitorar o cronograma de pipeline das tarefas.
  • Mecanismo de execução: todas as consultas são processadas por um mecanismo de execução. Os planos de estágio de um DAG são executados pelo mecanismo e ajudam a gerenciar as dependências entre os estágios disponíveis e executá-los em um componente correto.
  • Metastore: Ele atua como um repositório central para armazenar todas as informações estruturadas dos metadados. Também é um aspecto importante para a seção, pois possui informações como tabelas e detalhes de particionamento e armazenamento de arquivos HDFS. Em outras palavras, diremos que o metastore atua como um espaço para nome de tabelas. O Metastore é considerado um banco de dados separado que também é compartilhado por outros componentes. O Metastore possui duas partes chamadas serviço e armazenamento de backlog.

O modelo de dados da seção é estruturado em Partições, buckets, tabelas. Tudo isso pode ser filtrado, ter chaves de partição e avaliar a consulta. A consulta do Hive funciona na estrutura do Hadoop, não no banco de dados tradicional. O servidor Hive é uma interface entre as consultas de um cliente remoto e a seção. O mecanismo de execução é completamente incorporado em um servidor de seção. Você pode encontrar aplicação de colméia em aprendizado de máquina, inteligência de negócios no processo de detecção.

Fluxo de trabalho da colméia:

O Hive funciona em dois tipos de modos: modo interativo e modo não interativo. O modo anterior permite que todos os comandos do hive acessem diretamente o shell do hive, enquanto o tipo posterior executa o código no modo do console. Os dados são divididos em partições que se dividem ainda mais em buckets. Os planos de execução são baseados em agregação e inclinação de dados. Uma vantagem adicional do uso do hive é que ele processa facilmente grande escala de informações e possui mais interfaces com o usuário.

No diagrama acima, podemos ter uma idéia do fluxo de dados na seção com o sistema Hadoop.

Os passos incluem:

  1. executar a consulta da interface do usuário
  2. obter um plano a partir das etapas do DAG das tarefas do driver
  3. obter solicitação de metadados da meta store
  4. envie metadados do compilador
  5. enviando o plano de volta ao motorista
  6. Executar plano no mecanismo de execução
  7. buscando resultados para a consulta de usuário apropriada
  8. enviando resultados bidirecionalmente
  9. processamento do mecanismo de execução no HDFS com os resultados de redução de mapa e busca dos nós de dados criados pelo rastreador de tarefas. Ele atua como um conector entre o Hive e o Hadoop.

O trabalho do mecanismo de execução é se comunicar com os nós para obter as informações armazenadas na tabela. Aqui, operações SQL como criar, soltar, alterar são executadas para acessar a tabela.

Conclusão:

Examinamos o Hive Architecture e seu fluxo de trabalho, o hive basicamente executa uma quantidade de petabytes de dados e, portanto, é um pacote de data warehouse na plataforma Hadoop. Como o hive é uma boa opção para lidar com alto volume de dados, ajuda na preparação de dados com o guia da interface SQL para resolver os problemas do MapReduce. O Apache hive é uma ferramenta ETL para processar dados estruturados. Conhecer o funcionamento da arquitetura do hive ajuda as pessoas corporativas a entender o princípio de funcionamento do hive e começa bem com a programação do hive.

Artigos recomendados:

Este foi um guia para a Hive Architecture. Aqui discutimos a arquitetura da seção, diferentes componentes e fluxo de trabalho da seção. você também pode consultar os seguintes artigos para saber mais

  1. Arquitetura Hadoop
  2. Usos do Ruby
  3. O que é C ++
  4. O que é o banco de dados MySQL
  5. Hive Order By

Categoria: