HDFS,MapReduce,Hive,Hbase 等之间的关系

Posted ylz8401

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDFS,MapReduce,Hive,Hbase 等之间的关系相关的知识,希望对你有一定的参考价值。

 

 技术分享图片

 

HDFS:

HDFS是GFS的一种实现,他的完整名字是分布式文件系统,类似于FAT32,NTFS,是一种文件格式,是底层的。

Hive与Hbase的数据一般都存储在HDFS上。Hadoop HDFS为他们提供了高可靠性的底层存储支持。

 

Hive

Hive不支持更改数据的操作,Hive基于数据仓库,提供静态数据的动态查询。其使用类SQL语言,底层经过编译转为MapReduce程序,在Hadoop上运行,数据存储在HDFS上。

 

Hbase:

Hbase是Hadoop database,即Hadoop数据库。它是一个适合于非结构化数据存储的数据库,HBase基于列的而不是基于行的模式。

HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据。

Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。 Sqoop则为HBase提供了方便的RDBMS(关系型数据库)数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。

 

 

Pig:

Pig的语言层包括一个叫做PigLatin文本语言,Pig Latin是面向数据流的编程方式。Pig和Hive类似更侧重于数据的查询和分析,底层都是转化成MapReduce程序运行。

区别是Hive是类SQL的查询语言,要求数据存储于表中,而Pig是面向数据流的一个程序语言。

 

Sqoop 

Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。

 

 

转自:https://blog.csdn.net/xincai/article/details/71123653

 



以上是关于HDFS,MapReduce,Hive,Hbase 等之间的关系的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

hbase和hive的差别是啥,各自适用在啥场景中

HBase与Hive

HBase与Hive

Hive与HBase的区别与联系

Hive 和 HBase 区别