Hadoop介绍
什么是Hadoop?
1.hadoop是Apache旗下的一套开源平台
正如官网上所说,它是可靠的,可扩展的,分布式计算平台。
2.Hadoop核心组件有以下几类:
a. Hdfs:(Hadopo Distrubuted File Sysytem) hadoop 分布式文件系统
b. Mapreduce :分布式 计算编程框架
c. Yarn: 运算资源调度系统
3.从“狭义”上说hadoop核心组件就是以上三种。但是从“广义”上说,hadoop也有一个更广泛的概念–“HADOOP生态圈” 。和hadoop类似的也有Spark.后续会有介绍。
hadoop背景介绍
1.Hadoop最早起源于Nutch。
Nutch是基于Lucene的,而Lucene是提供全文文本搜索的开源函数库,Lucene为Nutch提供了文本索引和搜索的API。
Hadoop开始的时候,只是Nutch的一个分布式计算的模块,是为了解决Nutch的海量的数据的高扩展问题。hadoop的出现可以很好地解决数亿级别Nutch上的网页的存储和索引的问题。
2.2003,2004年谷歌相继发变了俩篇论文为该上问题提供了解决方案
a. -----GFS(分布式文件系统)时候来hdfs的雏形,用于海量数据的存储。
b. -----MAPREDUCE 分布式计算框架,用于解决海量数据的计算问题。
3.随后Nutch的开发人员实现了开源的HDFS,MAPREDUCE,并将其独立开来,成为HADOOP,2008年1月,HADOOP成为Apache的顶级项目。
Hadoop生态圈介绍
1.Hadoop生态圈包含的逐渐也是比较多的。我目前所接触学到的有以下几种:
----. Hdfs 分布式文件系统
----. Mapreduce 分布式运算编程框架
----. Hbase 基于Hadoop分布式存储的海量数据库
----. Hive 基于大数据的SQL数据仓库工具
----. zookeeper 分布式协调服务基础组件
----. Oozie 工作调度框架 Oozie 是重量级的,还有一个轻量级的Azkaban。
----. Sqoop 数据导入导出工具
----. Flume 日志数据采集框架