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

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 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的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
2月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
186 6
|
2月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
78 2
|
2天前
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
25 4
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
110 2
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
75 1
|
2月前
|
分布式计算 Hadoop 大数据
大数据体系知识学习(一):PySpark和Hadoop环境的搭建与测试
这篇文章是关于大数据体系知识学习的,主要介绍了Apache Spark的基本概念、特点、组件,以及如何安装配置Java、PySpark和Hadoop环境。文章还提供了详细的安装步骤和测试代码,帮助读者搭建和测试大数据环境。
74 1
|
2月前
|
SQL 分布式计算 大数据
大数据平台的毕业设计01:Hadoop与离线分析
大数据平台的毕业设计01:Hadoop与离线分析
159 0
|
3月前
|
分布式计算 Java Hadoop
java使用hbase、hadoop报错举例
java使用hbase、hadoop报错举例
121 4
|
2月前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
80 4
|
2月前
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
38 3