Tutorial do Hive - Arquitetura do Hive e estudo de caso da NASA



Este blog de tutorial do Hive oferece um conhecimento profundo da arquitetura do Hive e do modelo de dados do Hive. Também explica o estudo de caso da NASA sobre o Apache Hive.

Tutorial do Apache Hive: Introdução

Hive é uma ferramenta usada rigorosamente em todo o setor para Big Data Analytics e uma ótima ferramenta para iniciar seu com. Neste blog de tutorial do Hive, discutiremos sobre o Apache Hive em detalhes. Apache Hive é uma ferramenta de armazenamento de dados no , que fornece linguagem semelhante a SQL para consultar e analisar Big Data. A motivação por trás do desenvolvimento do Hive é o caminho de aprendizagem sem atrito para desenvolvedores e analistas de SQL. O Hive não é apenas um salvador para pessoas com experiência em não programação, mas também reduz o trabalho de programadores que passam longas horas escrevendo programas MapReduce. Neste blog do tutorial do Apache Hive, falarei sobre:





Tutorial do Apache Hive: O que é o Hive?

Apache Hive é um sistema de data warehouse construído sobre o Hadoop e é usado para analisar dados estruturados e semiestruturados.O Hive abstrai a complexidade do Hadoop MapReduce. Basicamente, ele fornece um mecanismo para projetar a estrutura nos dados e realizar consultas escritas em HQL (Hive Query Language) que são semelhantes às instruções SQL. Internamente, essas consultas ou HQL são convertidas para mapear trabalhos de redução pelo compilador Hive. Portanto, você não precisa se preocupar em escrever programas MapReduce complexos para processar seus dados usando o Hadoop. Ele é voltado para usuários que estão familiarizados com o SQL. O Apache Hive oferece suporte a Linguagem de Definição de Dados (DDL), Linguagem de Manipulação de Dados (DML) e Funções Definidas pelo Usuário (UDF).

Tutorial do Hive para iniciantes | Noções básicas sobre Hive em profundidade | Edureka



SQL + Hadoop MapReduce = HiveQL

Tutorial do Apache Hive: História do Hive - do Facebook ao Apache

Caso de uso do Facebook - Tutorial do Hive - EdurekaFIG : Tutorial do Hive - caso de uso do Facebook

Desafios no Facebook: crescimento exponencial de dados

Antes de 2008, toda a infraestrutura de processamento de dados no Facebook era construída em torno de um data warehouse baseado em RDBMS comercial. Essas infraestruturas eram capazes de atender às necessidades do Facebook da época. Mas, como os dados começaram a crescer muito rápido, tornou-se um grande desafio gerenciar e processar esse enorme conjunto de dados. De acordo com um artigo do Facebook, os dados foram dimensionados de um conjunto de dados de 15 TB em 2007 para dados de 2 PB em 2009. Além disso, muitos produtos do Facebook envolvem a análise dos dados como Audience Insights, Facebook Lexicon, Facebook Ads, etc. precisava de uma solução escalonável e econômica para lidar com esse problema e, portanto, começou a usar a estrutura do Hadoop.



Democratizando Hadoop - MapReduce

Mas, conforme os dados aumentaram, a complexidade dos códigos Map-Reduce cresceu proporcionalmente. Então, treinar pessoas com experiência em não programação para escrever programas MapReduce se tornou difícil. Além disso, para realizar uma análise simples, é necessário escrever cem linhas de código MapReduce. Desde então, o SQL foi amplamente usado por engenheiros e analistas, incluindo o Facebook, portanto, colocar o SQL no topo do Hadoop parecia uma maneira lógica de tornar o Hadoop acessível a usuários com experiência em SQL.

Portanto, a capacidade do SQL de ser suficiente para a maioria dos requisitos analíticos e a escalabilidade do Hadoop deu origem ao Apache Hive que permite realizar consultas do tipo SQL sobre os dados presentes no HDFS. Posteriormente, o projeto Hive foi liberado em agosto de 2008 pelo Facebook e está disponível gratuitamente como Apache Hive hoje.

Agora, vamos dar uma olhada nos recursos ou vantagens do Hive que o tornam tão popular.

o que é keyerror em python

Tutorial do Apache Hive: Vantagens do Hive

  • Útil para pessoas que não têm experiência em programação, pois elimina a necessidade de escrever um programa MapReduce complexo.
  • Extensível e escalável para lidar com o crescente volume e variedade de dados, sem afetar o desempenho do sistema.
  • É uma ferramenta ETL (Extract, Transform, Load) eficiente.
  • Hive suporta qualquer aplicativo cliente escrito em Java, PHP, Python, C ++ ou Ruby, expondo seu Servidor Thrift . (Você pode usar essas linguagens do lado do cliente incorporadas ao SQL para acessar um banco de dados como o DB2, etc.).
  • Como as informações de metadados do Hive são armazenadas em um RDBMS, isso reduz significativamente o tempo para realizar verificações semânticas durante a execução da consulta.

Tutorial do Apache Hive: Onde usar o Apache Hive?

Apache Hive tira proveito de ambos os mundos, ou seja, sistema de banco de dados SQL e estrutura. Portanto, ele é usado por uma vasta gama de empresas. É usado principalmente para armazenamento de dados, onde você pode realizar análises e mineração de dados que não requerem processamento em tempo real. Alguns dos campos onde você pode usar o Apache Hive são os seguintes:

  • Armazenamento de dados
  • Análise Ad-hoc

Como é dito, você não pode bater palmas com apenas uma mão, ou seja, você não pode resolver todos os problemas com uma única ferramenta. Portanto, você pode combinar o Hive com outras ferramentas para usá-lo em muitos outros domínios. Por exemplo, o Tableau junto com o Apache Hive pode ser usado para visualização de dados, a integração do Apache Tez com o Hive fornecerá recursos de processamento em tempo real, etc.
Prosseguindo neste blog Tutorial do Apache Hive, vamos dar uma olhada em um estudo de caso da NASA, onde você saberá como o Hive resolveu o problema que os cientistas da NASA estavam enfrentando ao realizar avaliações de Modelos Climáticos.

Tutorial do Hive: estudo de caso da NASA

Um modelo climático é uma representação matemática dos sistemas climáticos com base em vários fatores que impactam o clima da Terra. Basicamente, ele descreve a interação de vários fatores do clima, como oceano, sol, atmosfera, etc. parafornecem uma visão sobre a dinâmica do sistema climático. É usado para projetar as condições climáticas, simulando as mudanças climáticas com base em fatores que afetam o clima. O Laboratório de Propulsão a Jato da NASA desenvolveu o Sistema de Avaliação do Modelo de Clima Regional (RCMES) para análise e avaliação do modelo de saída do clima contra dados de sensoriamento remoto presentes em vários repositórios externos.

O RCMES (Sistema de Avaliação do Modelo de Clima Regional) tem dois componentes:

  • RCMED (Banco de dados de avaliação do modelo climático regional):

É um banco de dados em nuvem escalável que carrega os dados de sensoriamento remoto e dados de reanálise que estão relacionados ao clima usando extratores como os extratores Apache OODT, Apache Tika, etc. Finalmente, ele transforma os dados como o modelo de ponto de dados que está na forma (latitude , longitude, tempo, valor, altura) e armazena no banco de dados My SQL. O cliente pode recuperar os dados presentes no RCMED realizando consultas de Espaço / Tempo. A descrição de tais consultas não é relevante para nós agora.

  • RCMET (Kit de Ferramentas de Avaliação do Modelo do Clima Regional):

Ele fornece ao usuário a capacidade de comparar os dados de referência presentes no RCMED com os dados de saída do modelo climático obtidos de algumas outras fontes para realizar diferentes tipos de análise e avaliação. Você pode consultar a imagem abaixo para entender a arquitetura do RCMES.

Os dados de referência do RCMED são provenientes do sensoriamento remoto por satélite, de acordo com os diferentes parâmetros necessários para a avaliação do modelo climático. Por exemplo - AIRS (Atmospheric Infrared Sounder) fornece parâmetros como temperatura do ar da superfície, temperatura e geopotencial, TRMM (Tropical Rainfall Measurement Mission) fornece precipitação mensal, etc.

Problemas enfrentados pela NASA usando o sistema de banco de dados MySQL:

  • Após carregar o banco de dados MySQL com 6 bilhões de tuplas do formulário (latitude, longitude, tempo, valor do ponto de dados, altura), o sistema travou conforme mostrado na imagem acima.
  • Mesmo depois de dividir a tabela inteira em subconjuntos menores, o sistema gerou uma grande sobrecarga ao processar os dados.

Portanto, eles precisavam de uma solução escalonável que pudesse armazenar e processar essa enorme quantidade de dados com recurso de consulta do tipo SQL. Finalmente, eles decidiram usar o Apache Hive para superar os problemas declarados acima.

Como o Apache Hive pode resolver o problema?

Agora, vamos ver quais são os recursos que convenceram a equipe JPL da NASA a incluir o Apache Hive como parte integrante de sua estratégia de solução:

  • Como o Apache Hive é executado no Hadoop, ele é escalonável e pode processar dados de maneira distribuída e paralela.
  • Ele fornece Hive Query Language que é semelhante ao SQL e, portanto, fácil de aprender.

Implantação do Hive:

A imagem a seguir explica o RCMES Architect com integração Apache Hive:

FIG : Tutorial do Hive - Arquitetura RCMES com Apache Hive

A imagem acima mostra a implantação do hive do apache no RCMES. As seguintes etapas foram executadas pela equipe da NASA durante a implantação do Apache Hive:

  • Eles instalaram o Hive usando Cloudera e Apache Hadoop, conforme mostrado na imagem acima.
  • Eles usaram o Apache Sqoop para inserir dados do banco de dados MySQL no Hive.
  • Wrapper Apache OODT foi implementado para realizar consultas no Hive e recuperar os dados de volta para RCMET.

Observações iniciais de benchmarking com Hive:

  • Inicialmente, eles carregaram 2,5 bilhões de pontos de dados em uma única tabela e realizaram uma consulta de contagem. Por exemplo, Hive> selecione a contagem (datapoint_id) do dataPoint. Demorou 5-6 minutos para contar todos os registros (15-17 minutos para o total de 6,8 bilhões de registros).
  • A fase de redução foi rápida, mas a fase de mapa levou 95% do tempo total de processamento. Eles estavam usando seis ( 4x quad-core ) sistemas com 24 GB de RAM (aprox.) em cada um dos sistemas.
  • Mesmo depois de adicionar mais máquinas, alterando o tamanho do bloco HDFS (64 MB, 128 MB, 256 MB) e alterando muitas outras variáveis ​​de configuração (io.ordenar.fator, eu.ordenar.MB), eles não tiveram muito sucesso na redução do tempo para concluir a contagem.

Entradas de membros da comunidade Hive:

Finalmente, membros da comunidade Hive vieram em seu socorro e forneceram vários insights para resolver os problemas com suas implementações Hive atuais:

  • Eles mencionaram que a velocidade de leitura do HDFS é de aproximadamente 60 MB / s em comparação com 1 GB / s no caso de um disco local, dependendo da capacidade da rede e da carga de trabalho no NameNode.
  • Os membros sugeriram que 16 mapeadores serão necessários em seu sistema atual para corresponder ao desempenho de E / S de uma tarefa local não Hadoop.
  • Eles também sugeriram reduzir o tamanho dividido para cada mapeador para aumentar o númerodomapeadores e, portanto, fornecendo mais paralelismo.
  • Finalmente, os membros da comunidade disseram-lhes para usar contagem (1) em vez de se referir a contagem ( datapoint_id) . Isso ocorre porque no caso de contagem (1), não há coluna de referência e, portanto, nenhuma descompressão e desserialização ocorre durante a realização da contagem.

Finalmente, a NASA foi capaz de ajustar seu cluster Hive de acordo com suas expectativas, levando em consideração todas as sugestões dadas pelos membros da comunidade Hive. E, portanto, eles foram capazes de consultar bilhões de linhas em apenas 15 segundos usando as configurações de sistema mencionadas acima.

Tutorial do Apache Hive: Arquitetura Hive e seus componentes

A imagem a seguir descreve a Arquitetura Hive e o fluxo no qual uma consulta é enviada aoColmeiae finalmente processado usando a estrutura MapReduce:

FIG : Tutorial Hive - Arquitetura Hive

Conforme mostrado na imagem acima, a Arquitetura Hive pode ser categorizada nos seguintes componentes:

  • Clientes Hive: O Hive oferece suporte a aplicativos escritos em muitas linguagens como Java, C ++, Python etc. usando drivers JDBC, Thrift e ODBC. Portanto, sempre é possível escrever um aplicativo cliente Hive escrito em um idioma de sua escolha.
  • Serviços Hive: O Apache Hive fornece vários serviços como CLI, Web Interface etc. para realizar consultas. Exploraremos cada um deles em breve neste blog de tutorial do Hive.
  • Estrutura de processamento e gerenciamento de recursos: Internamente,O Hive usa a estrutura Hadoop MapReduce como mecanismo de fato para executar as consultas. é um tópico separado por si só e, portanto, não é discutido aqui.
  • Armazenamento Distribuído: Como o Hive é instalado sobre o Hadoop, ele usa o HDFS subjacente para o armazenamento distribuído. Você pode consultar o Blog HDFS para aprender mais sobre isso.

Agora, vamos explorar os dois primeiros componentes principais da Arquitetura Hive:

1. Clientes Hive:

O Apache Hive oferece suporte a diferentes tipos de aplicativos cliente para realizar consultas no Hive. Esses clientes podem ser categorizados em três tipos:

  • Clientes Thrift: Como o servidor Hive é baseado no Apache Thrift, ele pode atender à solicitação de todas as linguagens de programação que suportam o Thrift.
  • Clientes JDBC: O Hive permite que aplicativos Java se conectem a ele usando o driver JDBC que é definido na classe org.apache.hadoop.hive.jdbc.HiveDriver.
  • Clientes ODBC: O driver ODBC do Hive permite que aplicativos que suportam o protocolo ODBC se conectem ao Hive. (Como o driver JDBC, o driver ODBC usa Thrift para se comunicar com o servidor Hive.)

2. Serviços Hive:

O Hive fornece muitos serviços, conforme mostrado na imagem acima. Vamos dar uma olhada em cada um deles:

  • Hive CLI (Interface de linha de comando): Este é o shell padrão fornecido pelo Hive, onde você pode executar suas consultas e comandos do Hive diretamente.
  • Interfaces da Web Apache Hive: Além da interface de linha de comando, o Hive também fornece uma GUI baseada na web para executar consultas e comandos do Hive.
  • Servidor Hive: O servidor Hive é construído no Apache Thrift e, portanto, também é conhecido como Servidor Thrift, que permite que diferentes clientes enviem solicitações ao Hive e recuperem o resultado final.
  • Driver Apache Hive: É responsável por receber de um cliente as consultas submetidas através do CLI, IU da web, Thrift, ODBC ou JDBC. Em seguida, o driver passa a consulta para o compilador onde a análise, verificação de tipo e análise semântica ocorrem com a ajuda do esquema presente no metastore. Na próxima etapa, um plano lógico otimizado é gerado na forma de um DAG (Directed Acyclic Graph) de tarefas de redução de mapa e tarefas HDFS. Finalmente, o mecanismo de execução executa essas tarefas na ordem de suas dependências, usando o Hadoop.
  • Metastore: Você pode pensar em metastorecomo um repositório central para armazenar todas as informações de metadados do Hive. Os metadados do Hive incluem vários tipos de informações, como estrutura de tabelas e as partiçõesjunto com a coluna, tipo de coluna, serializador e desserializador que é necessário para a operação de leitura / gravação nos dados presentes no HDFS. O metastorecompreende duas unidades fundamentais:
    • Um serviço que fornece metastoreacesso a outrorServiços Hive.
    • Armazenamento em disco para os metadados separados do armazenamento HDFS.

Agora, vamos entender as diferentes maneiras de implementar o metastore Hivena próxima seção deste Tutorial do Hive.

Tutorial do Apache Hive: Configuração do Metastore

O Metastore armazena as informações de metadados usando RDBMS e uma camada ORM (Object Relational Model) de código aberto chamada Data Nucleus que converte a representação do objeto em esquema relacional e vice-versa. A razão para escolher RDBMS em vez de HDFS é atingir baixa latência. Podemos implementar metastore nas seguintes três configurações:

1. Metastore incorporado:

Tanto o serviço metastore quanto o serviço Hive são executados na mesma JVM por padrão usando uma instância de banco de dados Derby incorporada onde os metadados são armazenados no disco local. Isso é chamado de configuração de metastore incorporada. Nesse caso, apenas um usuário pode se conectar ao banco de dados metastore por vez. Se você iniciar uma segunda instância do driver Hive, receberá um erro. Isso é bom para testes de unidade, mas não para soluções práticas.

2. Metastore local:

Esta configuração nos permite ter várias sessões Hive, ou seja, vários usuários podem usar o banco de dados metastore ao mesmo tempo. Isso é obtido usando qualquer banco de dados compatível com JDBC, como o MySQL, que é executado em uma JVM separada ou em uma máquina diferente daquela do serviço Hive e do serviço metastore que está sendo executado na mesma JVM, conforme mostrado acima. Em geral, a escolha mais popular é implementar um servidor MySQL como o banco de dados metastore.

3. Metastore remoto:

Na configuração do metastore remoto, o serviço do metastore é executado em sua própria JVM separada e não na JVM do serviço Hive. Outros processos se comunicam com o servidor metastore usando APIs Thrift Network. Você pode ter um ou mais servidores metastore neste caso para fornecer mais disponibilidade.A principal vantagem de usar o metastore remoto é que você não precisa compartilhar a credencial de login JDBC com cada usuário do Hive para acessar o banco de dados metastore.

Tutorial do Apache Hive: modelo de dados

Os dados no Hive podem ser categorizados em três tipos no nível granular:

  • Mesa
  • Partição
  • Balde

Mesas:

As tabelas no Hive são iguais às tabelas presentes em um banco de dados relacional. Você pode realizar operações de filtro, projeto, junção e união neles. Existem dois tipos de tabelas no Hive:

como fazer um pacote em java

1. Tabela gerenciada:

Comando:

CRIAR TABELA (tipo_de_dados_coluna1, tipo_de_dados_coluna2)

LOAD DATA INPATH INTO tabela managed_table

Como o nome sugere (tabela gerenciada), o Hive é responsável por gerenciar os dados de uma tabela gerenciada. Em outras palavras, o que eu quis dizer com “Hive gerencia os dados”, é que se você carregar os dados de um arquivo presente no HDFS em um Hive Mesa Gerenciada e emitir um comando DROP sobre ele, a tabela junto com seus metadados serão excluídos. Portanto, os dados pertencentes ao managed_table não existe mais em nenhum lugar no HDFS e você não pode recuperá-lo de forma alguma. Basicamente, você está movendo os dados ao emitir o comando LOAD do local do arquivo HDFS para o diretório do warehouse do Hive.

Nota: O caminho padrão do diretório do warehouse é definido como / user / hive / warehouse. Os dados de uma tabela Hive residem em warehouse_directory / table_name (HDFS). Você também pode especificar o caminho do diretório do warehouse no parâmetro de configuração hive.metastore.warehouse.dir presente no hive-site.xml.

2. Tabela Externa:

Comando:

CRIAR TABELA EXTERNA (tipo_de_dados_coluna1, tipo_de_dados_coluna2) LOCALIZAÇÃO ‘’

CARREGAR DADOS NO CAMINHO ‘’ NA TABELA

Para mesa externa , O Hive não é responsável pelo gerenciamento dos dados. Nesse caso, quando você emite o comando LOAD, o Hive move os dados para seu diretório de warehouse. Em seguida, o Hive cria as informações de metadados para a tabela externa. Agora, se você emitir um comando DROP no mesa externa , apenas as informações de metadados sobre a tabela externa serão excluídas. Portanto, você ainda pode recuperar os dados dessa tabela muito externa do diretório do warehouse usando comandos HDFS.

Partições:

Comando:

CRIAR TABELA nome_tabela (tipo_de_dados_coluna1, tipo_de_dados_coluna2) PARTITIONED BY (tipo_de_dados_partição1, tipo_de_dados_partição2, & hellip.)

O Hive organiza tabelas em partições para agrupar tipos semelhantes de dados com base em uma coluna ou chave de partição. Cada tabela pode ter uma ou mais chaves de partição para identificar uma partição específica. Isso nos permite ter uma consulta mais rápida em fatias dos dados.

Nota: Lembre-se de que o erro mais comum cometido ao criar partições é especificar um nome de coluna existente como uma coluna de partição. Ao fazer isso, você receberá um erro - “Erro na análise semântica: coluna repetida em colunas de particionamento”.

Vamos entender a partição tomando um exemplo em que tenho uma tabela student_details contendo as informações do aluno de alguma faculdade de engenharia como student_id, nome, departamento, ano, etc. Agora, se eu executar o particionamento com base na coluna do departamento, as informações de todos os alunos pertencentes a um determinado departamento serão armazenados juntos nessa mesma partição. Fisicamente, uma partição nada mais é do que um subdiretório no diretório da tabela.

Digamos que temos dados para três departamentos em nossa tabela student_details - CSE, ECE e Civil. Portanto, teremos três partições no total para cada um dos departamentos, conforme mostrado na imagem abaixo. E, para cada departamento, teremos todos os dados relativos a esse mesmo departamento residindo em um subdiretório separado no diretório da tabela Hive. Por exemplo, todos os dados do aluno relativos aos departamentos de CSE serão armazenados em user / hive / warehouse / student_details / dept. = CSE. Assim, as consultas a respeito dos alunos do CSE teriam apenas que examinar os dados presentes na partição do CSE. Isso torna o particionamento muito útil, pois reduz a latência da consulta examinando apenas relevante dados particionados em vez de todo o conjunto de dados. Na verdade, em implementações do mundo real, você lidará com centenas de TBs de dados. Então, imagine digitalizar essa enorme quantidade de dados para alguma consulta onde 95% os dados verificados por você não eram relevantes para a sua consulta.

Eu sugiro que você navegue pelo blog em Comandos Hive onde você encontrará diferentes maneiras de implementar partições com um exemplo.

Buckets:

Comandos:

CREATE TABLE nome_tabela PARTITIONED BY (tipo_de_dados_partição1, tipo_de_dados_partição2, & hellip.) CLUSTERED BY (nome_coluna1, nome_coluna2,…) SORTED BY (nome_coluna [ASC | DESC],…)] INTO num_buckets BUCKETS

Agora, você pode dividir cada partição ou tabela não particionada em Buckets com base na função hash de uma coluna da tabela. Na verdade, cada bucket é apenas um arquivo no diretório de partição ou no diretório de tabela (tabela não particionada). Portanto, se você optou por dividir as partições em n depósitos, terá n arquivos em cada diretório de partição. Por exemplo, você pode ver a imagem acima, onde dividimos cada partição em 2 grupos. Assim, cada partição, digamos CSE, terá dois arquivos onde cada um deles armazenará os dados do aluno CSE.

Como o Hive distribui as linhas em intervalos?

Bem, o Hive determina o número do intervalo para uma linha usando a fórmula: hash_function (bucketing_column) modulo (num_of_buckets) . Aqui, hash_function depende do tipo de dados da coluna. Por exemplo, se você está dividindo a tabela com base em alguma coluna, digamos user_id, do tipo de dados INT, a função hash será - hash_function (user_id ) = valor inteiro de user_id . E, suponha que você tenha criado dois baldes, o Hive determinará as linhas que vão para o balde 1 em cada partição calculando: (valor de user_id) módulo (2). Portanto, neste caso, as linhas com user_id terminando com um dígito inteiro par residirão em um mesmo depósito correspondente a cada partição. A função hash para outros tipos de dados é um pouco complexa para calcular e, de fato, para uma string, ela nem mesmo é reconhecível por humanos.

Nota: Se você estiver usando o Apache Hive 0.x ou 1.x, terá que emitir o comando - set hive.enforce.bucketing = true do seu terminal Hive antes de executar o bucket. Isso permitirá que você tenha o número correto de redutor ao usar cluster por cláusula para agrupar uma coluna. Caso você não tenha feito isso, você pode descobrir que o número de arquivos que foram gerados em seu diretório de tabela não é igual ao número de depósitos. Como alternativa, você também pode definir o número de redutor igual ao número de depósitos usando set mapred.reduce.task = num_bucket.

Por que precisamos de baldes?

Existem dois motivos principais para realizar o bucketing para uma partição:

  • PARA junção do lado do mapa requer que os dados pertencentes a uma chave de junção exclusiva estejam presentes na mesma partição. Mas e aqueles casos em que sua chave de partição difere de join? Portanto, nesses casos, você pode executar uma junção do lado do mapa dividindo a tabela em intervalos usando a chave de junção.
  • O agrupamento torna o processo de amostragem mais eficiente e, portanto, nos permite diminuir o tempo de consulta.

Eu gostaria de concluir este blog tutorial do Hive aqui. Tenho certeza de que depois de ler este blog de tutorial do Hive, você perceberá a simplicidade do Apache Hive. Desde então, vocês aprenderam todos os fundamentos do Hive, é hora de ter alguma experiência prática com o Apache Hive. Portanto, verifique o próximo blog nesta série de blogs Tutorial do Hive, que está na instalação do Hive e comece a trabalhar no Apache Hive.

Agora que você entendeu o Apache Hive e seus recursos, verifique o pela Edureka, uma empresa de aprendizagem online confiável com uma rede de mais de 250.000 alunos satisfeitos espalhados por todo o mundo. O curso Edureka Big Data Hadoop Certification Training ajuda os alunos a se tornarem especialistas em HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume e Sqoop usando casos de uso em tempo real no varejo, mídia social, aviação, turismo, domínio financeiro.

Tem alguma questão para nós? Mencione isso na seção de comentários e entraremos em contato com você.