什么是Hadooop

Hadoop源自始于2002年的Apache Nutch项目,是一个分布式系统基础架构,其所有的功能都是分布式的。简单来说,就是一种让你在分布式服务器集群(可靠性)上存储海量数据(可伸缩性)并运行分布式分析应用(高效)的一种方法。

什么是分布式?分布式其实是相对于传统数据库的集中式管理而言的,集中式管理是一个主机带多个终端。终端没有数据处理能力,运算全部在主机上进行,这样不仅数据处理的效率慢,而且当主机出现问题时就整个集群都不能工作了。所以,相应地,分布式管理的概念诞生了。

分布式,把问题分开解决,即系统分布在几个不同服务器上,这样的设计不仅可以让处理效率大大增加,而且当分布式服务器集群其中一台服务器宕机时,其他服务器不受影响。
Hadoop有两个核心问题:存储和计算,对应到Hadoop里面就是两个核心组件,HDFS用来存储,MapRedece则用来计算;当然,Hadoop不止这两个组件,结构图如下所示:
Hadoop架构的主要组成组件
从架构图可以看出,Hadoop有一个很棒的地方,就是它几乎完全是模块化的,这意味着我们能用其他软件工具抽换掉Hadoop的模块。模块化使得Hadoop的架构异常灵活,同时又不牺牲其可靠性和高效率。

这些组件都大有用处,以后将每章节分开详讲,在这里先粗略的介绍一下:
HDFS: 分布式文件系统(负责存储 Hadoop 集群中所有存储节点上的文件)
YARN: 资源管理和调度器
MapReduce: 分布式并行编程模型(基于Java,是完成数据处理任务的工具)
HBase: Hadoop上的非关系型的分布式数据库(就是一个分布式数据库)
Hive: Hadoop上的数据仓库(可以将输入的查询语句转换成MapReduce任务)
Pig :一个基于Hadoop的大规模数据分析平台,提供类似SQL的查询语言Pig Latin
Flume: 一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统
Sqoop: 用于在Hadoop与传统数据库之间进行数据传递
Zookeeper: 提供分布式协调一致性服务
Ambari Hadoop:快速部署工具,支持Apache Hadoop集群的供应、管理和监控

猜你喜欢

转载自blog.csdn.net/weixin_44592407/article/details/86572411
今日推荐