目录
推荐公众号
有彩蛋哦!!!(或者公众号内点击网赚获取彩蛋)
如有其它意见欢迎指正微信 zzh_1_2_3
Hadoop是什么
What Is Apache Hadoop?
The Apache? Hadoop? project develops open-source software for reliable, scalable, distributed computing.
Apache Hadoop平台(项目)是一个可靠的、可扩展的、可分布式计算的开源软件。
The Apache Hadoop software library is a framework that allows for the
distributed processing of large data sets across clusters of computers
using simple programming models. It is designed to scale up from single
servers to thousands of machines, each offering local computation and
storage. Rather than rely on hardware to deliver high-availability,
the library itself is designed to detect and handle failures at the
application layer, so delivering a highly-available service on top of a
cluster of computers, each of which may be prone to failures.
Apache Hadoop平台是一个框架,允许使用简单的编程模型
在计算机集群中对大型数据集进行分布式处理。
该平台被设计成可以从单个服务器扩展到数千台服务器,每个服务器都提供本地计算和存储。
该平台也被设计成可检测和处理应用层的故障(即高可靠、高容错),高可用服务是基于计算机集群的,并且其中每一台计算机都容易出现故障,而不是依靠硬件来提供高可用性。
Hadoop历史
Apache Lucene开源的高性能全文检索工具包
Doug Cutting开创的开源源软件,用java书写的代码,实现与Google类似的全文搜索功能,它提供了全文检索引擎的框架,包括完整的查询引擎和索引引擎。早期发布在个人网站和SourceFage上 ,2001年底成为Apache软件基金会jakarta的一个子项目,Lucene的目的是为软件开发人员提供一套简单易用的工具包,以方便的在目标系统中实现全文检索的功能,对于大数据量的检索,lucene面临这和Google一样的困难。迫使DougCutting学习和模仿Google解决这些问题的方法一个微缩版nutch
Apache Nutch 开源的 Web 搜索引擎
Google 三大论文 MapReduce / GFS / BigTable
2003-2004年,Google公开了部分GFS和MapReduce的思想细节,以此为基础,DougCutting等人用了2年的业余时间实现了DFS和MapReduce机制,使Nutch性能飘升
Yahoo招安了DougCutting及其子项目
Apache Hadoop 大规模数据处理
Hadoop于2005秋天作为Lucene的子项目Nutch的一部分正式引入Apache基金会。2006年3月份,MapReduce和Nutch Distributed FileSystem (NDFS)分别是被纳入到Hadoop的项目中
名字来源于DougCutting儿子的一个玩具大象
Hadoop生态圈
官网中可以看到很多熟悉的工具
Flume:数据搜集工具
Sqoop:数据整合工具,可以把mysql,oracel等数据库数据整合起来
Hive:数据参数,使用类sql的形式处理数据
Hbase:nosql类型大数据库
HDFS:A distributed file system that provides high-throughput access to application data。Hadoop Distributed File System,分布式文件处理工具
Hadoop Common: The common utilities that support the other Hadoop modules
YARN:A framework for job scheduling and cluster resource management.Hadoop全局资源管理与调度
MapReduce:A YARN-based system for parallel processing of large data sets.使用java语言,离线并行计算框架
Hadoop Ozone: An object store for Hadoop.
Hadoop Submarine: A machine learning engine for Hadoop.
Pig:流式处理的工具,多用于数据清洗
Spark:在线,离线,近实时的数据处理,但是并不会数据存储
Storm:实时处理工具
其实下面这些不在Hadoop生态园之内
Kafka:
Redis:nosql数据库
MongoDB:nosql数据库
Zookeeper:分布式服务协调