Hive é um sistema de data warehouse usado para analisar dados estruturados. Ele é construído no topo do Hadoop. Foi desenvolvido pelo Facebook.
O Hive fornece a funcionalidade de leitura, gravação e gerenciamento de grandes conjuntos de dados residentes em armazenamento distribuído. Ele executa consultas semelhantes a SQL chamadas HQL (linguagem de consulta Hive), que são convertidas internamente em trabalhos MapReduce.
Usando o Hive, podemos ignorar o requisito da abordagem tradicional de escrever programas MapReduce complexos. O 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).
Recursos do Hive
Estes são os seguintes recursos do Hive:
- O Hive é rápido e escalável.
- Ele fornece consultas semelhantes a SQL (ou seja, HQL) que são transformadas implicitamente em trabalhos MapReduce ou Spark.
- É capaz de analisar grandes conjuntos de dados armazenados em HDFS.
- Ele permite diferentes tipos de armazenamento, como texto simples, RCFile e HBase.
- Ele usa indexação para acelerar consultas.
- Ele pode operar com dados compactados armazenados no ecossistema Hadoop.
- Ele suporta funções definidas pelo usuário (UDFs) onde o usuário pode fornecer sua funcionalidade.
Limitações do Hive
- O Hive não é capaz de lidar com dados em tempo real.
- Ele não foi projetado para processamento de transações online.
- As consultas do Hive contêm alta latência.
Diferenças entre colmeia e porco
Colmeia | Porco |
---|---|
O Hive é comumente usado por analistas de dados. | Pig é comumente usado por programadores. |
Segue consultas semelhantes a SQL. | Ele segue a linguagem de fluxo de dados. |
Ele pode lidar com dados estruturados. | Ele pode lidar com dados semiestruturados. |
Funciona no lado do servidor do cluster HDFS. | Funciona no lado do cliente do cluster HDFS. |
O Hive é mais lento que o Pig. | Pig é comparativamente mais rápido que o Hive. |