Apache Hive é um pacote de armazenamento de dados construído sobre o Hadoop e é usado para análise de dados. O Hive é voltado para usuários que se sentem confortáveis com SQL. É semelhante ao SQL e denominado HiveQL, usado para gerenciar e consultar dados estruturados. O Apache Hive é usado para abstrair a complexidade do Hadoop. Essa linguagem também permite que os programadores tradicionais de mapeamento / redução conectem seus mapeadores e redutores personalizados. O recurso popular do Hive é que não há necessidade de aprender Java.
Hive, uma estrutura de armazenamento de dados em escala de peta-bytes de código aberto baseada em Hadoop, foi desenvolvida pela Equipe de Infraestrutura de Dados do Facebook. O Hive também é uma das tecnologias que estão sendo usadas para atender aos requisitos do Facebook. O Hive é muito popular entre todos os usuários internos do Facebook e está sendo usado para executar milhares de trabalhos no cluster com centenas de usuários, para uma ampla variedade de aplicativos. O cluster Hive-Hadoop no Facebook armazena mais de 2 PB de dados brutos e carrega regularmente 15 TB de dados diariamente.
Vejamos alguns de seus recursos que o tornam popular e fácil de usar:
- Permite que os programadores conectem mapeadores e redutores personalizados.
- Possui infraestrutura de Data Warehouse.
- Fornece ferramentas para permitir ETL fácil de dados.
- Define uma linguagem de consulta semelhante a SQL chamada QL.
Caso de uso do Apache Hive - Facebook:
talend open studio tutorial pdf
Antes de implementar o Hive, o Facebook enfrentou muitos desafios à medida que o tamanho dos dados gerados aumentava ou, melhor, explodia, tornando muito difícil lidar com eles. O RDBMS tradicional não conseguia lidar com a pressão e, como resultado, o Facebook estava procurando opções melhores. Para resolver esse problema iminente, o Facebook inicialmente tentou usar o Hadoop MapReduce, mas com dificuldade em programação e conhecimento obrigatório em SQL, tornou uma solução impraticável. O Hive permitiu que eles superassem os desafios que estavam enfrentando.
Com o Hive, eles agora são capazes de realizar o seguinte:
- As tabelas podem ser repartidas e divididas em intervalos
- Flexibilidade e evolução do esquema
- Drivers JDBC / ODBC estão disponíveis
- As tabelas Hive podem ser definidas diretamente no HDFS
- Extensível - Tipos, formatos, funções e scripts
Caso de uso do Hive na área de saúde:
Onde usar o Hive?
O Apache Hive pode ser usado nos seguintes locais:
- Mineração de dados
- Processamento de Log
- Indexação de Documentos
- Inteligência de negócios voltada para o cliente
- Modelagem Preditiva
- Testando hipóteses
Arquitetura Hive:
O Hive consiste nos seguintes componentes principais:
- Metastore - para armazenar os metadados.
- JDBC / ODBC - Compilador de Consultas e Mecanismo de Execução para converter consultas SQL em uma sequência de MapReduce.
- SerDe e ObjectInspectors - Para formatos e tipos de dados.
- UDF / UDAF - para funções definidas pelo usuário.
- Clientes - semelhante à linha de comando do MySQL e uma IU da web.
Componentes do Hive:
Metastore:
O Metastore armazena as informações sobre as tabelas, partições e colunas dentro das tabelas. Existem 3 maneiras de armazenar no Metastore: Embedded Metastore, Local Metastore e Remote Metastore. Principalmente, o Remote Metastore será usado no modo de produção.
Limitações do Hive:
O Hive tem as seguintes limitações e não pode ser usado em tais circunstâncias:
- Não projetado para processamento de transações online.
- Fornece latência aceitável para navegação de dados interativa.
- Não oferece consultas em tempo real e atualizações de nível de linha.
- A latência para consultas do Hive geralmente é muito alta.
Tem alguma questão para nós? Mencione-os na seção de comentários e entraremos em contato com você.
Postagens relacionadas: