码迷,mamicode.com
首页 > 其他好文 > 详细

hadoop生态系统介绍

时间:2019-01-04 23:33:32      阅读:344      评论:0      收藏:0      [点我收藏+]

标签:调用   数据导入   reduce   img   fail   技术   时间   行数据   数据库   

hadoop生态系统如下图所示:

技术分享图片

 

HDFS:

HDFS(Hadoop Distributed File System)是分布式文件系统,是针对谷歌开发的分布式文件系统GFS(Google File System)的开源实现,是Hadoop两大核心组成部分之一。

HDFS有NameNodeDataNode两部分,NameNode是整个文件系统目录,基于内存存储,存储的是一些文件的详细信息,比如文件名、文件大小、创建时间、文件位置等,有且仅有一个;DataNode存储文件的数据信息,也就是文件本身,不过是分割后的小文件。

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

 

HBase:

HBase是针对谷歌BigTable的开源实现,是一个高可靠、高性能、面向列、可伸缩的分布式数据库,主要用来存储非结构化和半结构化的松散数据。需要注意的是,HBase可以使用本地文件系统而不用HDFS作为底层数据存储方式,不过为了提高数据可靠性和系统的健壮性,发挥HBase处理大数据量等功能,一般都使用HDFS作为HBase的底层数据存储方式

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

HBase是一个开源的Not-Only-SQL的数据库,像其他数据库一样提供随即读写功能。HDFS最适于执行批次分析,而不能满足实时需要,HBase能够处理大规模数据,它不适于批次分析,但它可以向Hadoop实时地调用数据。如果需要实时访问一些数据,就把它存入HBase。

下面再以表格的形式对HDFS和HBase作一个比较:

技术分享图片

 

hadoop生态系统介绍

标签:调用   数据导入   reduce   img   fail   技术   时间   行数据   数据库   

原文地址:https://www.cnblogs.com/zyb993963526/p/10222976.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!