Hadoop大数据平台实战(02):HBase vs. Hive vs. Impala 对比

简介: Hadoop大数据平台实战(02):HBase vs. Hive vs. Impala 对比。

Hadoop大数据平台中非常重要的三个技术:HBase vs. Hive vs. Impala。他们之间的关系和区别。

Apache™Hadoop是目前最流行的开源大数据平台,核心组件使用Java语言开发。

Apache Hadoop软件库是一个框架,允许使用简单的编程模型跨计算机集群分布式处理大型数据集。 它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储。 该库本身不是依靠硬件来提供高可用性,而是设计用于检测和处理应用层的故障,从而在计算机集群之上提供高可用性服务,每个计算机都可能容易出现故障。

1)Hadoop:最流行的开源大数据平台,主要框架使用Java开发。

2)HBase:面向列的开源NoSQL分布式数据库,基于HDFS,起源于谷歌的论文BigTable。

3)Hive:开源分布式数据仓库工具,至于类SQL语法,基于Hadoop构建,支持HDFS和HBase。

4)Impala:Hadoop,开源分布式的MPP分析引擎框架,类SQL语法,又叫:Cloudera Impala。支持HDFS和HBase,亚马逊S3。


HBase vs. Hive vs. Impala的详细参数对比
名称 HBase  Hive  Impala 
描述

面向列的NoSQL数据库

基于谷歌BigTable论文。

Apache Hadoop数据库。

数据仓库软件,

构建于Hadoop上。

支持类SQL

分布式的MPP分析引擎

支持类SQL

主要模型 列存储 关系型 关系型
次要模型 Document
排名

分数 58.66
排名 #17   总体
#2   宽列存储
分数 74.71
排名 #15   总体
#10   关系型
分数 14.52
排名 #36   总体
#22   关系型
官网 hbase.apache.org hive.apache.org https://impala.apache.org
文档 hbase.apache.org hive.apache.org
https://impala.apache.org
开发者 Apache基金会 Apache基金会 Cloudera公司
创建时间 2008 2012 2013
当前版本 1.4.8, 2018年10月 2.3.0, 2017年7月 3.0.0, 2018年5月
许可证 开源 开源 开源
只支持云 no no no

开发语言 Java Java C++
支持系统 Linux
Unix
Windows info
运行Java VM的系统 Linux
scheme schema-free yes yes
Typing no yes yes
XML支持 no no
辅助索引 no yes yes
SQL  no 类SQL语句 类SQL语句
API支持 Java API
RESTful HTTP API
Thrift
JDBC
ODBC
Thrift
JDBC
ODBC
支持语言 C
C#
C++
Groovy
Java
PHP
Python
Scala
C++
Java
PHP
Python

所有语言

JDBC/ODBC

服务器脚本 yes yes yes
触发器 yes no no
分区方法 Sharding分片 Sharding分片 Sharding分片
复制方法 可选择复制因子 可选择复制因子
可选择复制因子
MapReduce yes yes  yes
一致性 立即一致性 最终一致性 终一致性
外键 no no no
事物 no no no
并发 yes yes yes
持久性 yes yes yes
In-memory no no
用户概念 访问控制列表 (ACL)  users, groups,roles权限

users, groups,roles权限


参考资料:

https://impala.apache.org/overview.html

https://db-engines.com/en/system/HBase%3bHive%3bImpala

https://en.wikipedia.org/wiki/Apache_HBase

https://hbase.apache.org/

https://impala.apache.org/docs/build/html/topics/impala_intro.html


阿里巴巴Java群超过4800人
进群方式:钉钉扫码入群
image

阿里巴巴MongoDB群
image

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
SQL 分布式计算 大数据
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
本文深入介绍 Hive 与大数据融合构建强大数据仓库的实战指南。涵盖 Hive 简介、优势、安装配置、数据处理、性能优化及安全管理等内容,并通过互联网广告和物流行业案例分析,展示其实际应用。具有专业性、可操作性和参考价值。
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
715 79
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
906 4
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
726 2
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
645 1
|
SQL 数据采集 数据挖掘
大数据行业应用之Hive数据分析航班线路相关的各项指标
大数据行业应用之Hive数据分析航班线路相关的各项指标
582 1
|
SQL 分布式计算 数据库
【大数据技术Spark】Spark SQL操作Dataframe、读写MySQL、Hive数据库实战(附源码)
【大数据技术Spark】Spark SQL操作Dataframe、读写MySQL、Hive数据库实战(附源码)
985 0
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
409 0
|
SQL 分布式计算 大数据
大数据处理平台Hive详解
【7月更文挑战第15天】Hive作为基于Hadoop的数据仓库工具,在大数据处理和分析领域发挥着重要作用。通过提供类SQL的查询语言,Hive降低了数据处理的门槛,使得具有SQL背景的开发者可以轻松地处理大规模数据。然而,Hive也存在查询延迟高、表达能力有限等缺点,需要在实际应用中根据具体场景和需求进行选择和优化。
1298 6