大数据概述
Hadoop是Apache提供的一套开源的、可靠的、可扩展(可伸缩)的、用于分布式计算的框架
1. HDFS是Hadoop提供的一套用于进行分布式存储的文件系统
2. HDFS为了方便使用,仿照Linux设计了文件存储系统
3. HDFS的基本是结构是典型的主从结构:NameNode(主)和DataNode(从)
4. HDFS在存储文件的时候会将文件进行切块
5. 在HDFS中,会自动的对数据进行备份,这个备份称之为副本(replicas)。默认的副本数量是3
大数据的特点
1. 能够存储超大文件 - 切块
2. 能够快速的应对和检测故障 - 心跳
3. 以流的方式来读写数据
4. 能够横向构建在廉价的机器上
5. 简化的一致性模型 - 一次写入多次读取
6. 不支持低延迟响应
7. 不建议存储小文件
不支持事务 - 在大数据场景下,在样本量足够大的情况下,允许存在容错误差
Hadoop的发展过程
1. Hadoop之父:Doug Cutting(道格.卡丁 - 狗哥)和Mike Caferalla
2. 在2002年,Doug和Mike设计一个搜索系统Nutch,爬取了全网10亿个网页的数据
3. 在2003年,Google发表了一篇论文<The Google File System>(GFS)阐述了分布式存储的原理,但是并没有对外公开这个系统。Doug根据这篇论文设计了NDFS - Nutch Distributed File System
4. 在2004年,Google发表了一篇论文<The Google MapReduce>阐述了分布式计算的思想。Doug又根据这篇论文设计了Nutch MapReduce
5. 在Nutch0.8版本的时候,Doug将NDFS和MapReduce独立出来,形成了Hadoop,NDFS更名为HDFS
6. 在2007年,Doug携带Hadoop入职了Yahoo!
7. 在Yahoo!工作期间,Doug实现了HBase、Pig等框架
8. 后来Yahoo!将这些框架都贡献给了Apache
Hadoop的相关模块
1. Common:公共模块
2. HDFS:分布式存储
3. YARN:任务调度和集群的资源管理
4. MapReduce:基于YARN的分布式计算系统
5. Ozone:对象存储 - 2018
6. Submarine:机器学习引擎 - 2019.03
Hadoop的版本
1. Hadoop1.0:包含了Common、HDFS和MapReduce
2. Hadoop2.0:包含了Common、HDFS、MapReduce和YARN。Hadoop1.0和Hadoop2.0不兼容。Hadoop2.7之后的版本中,包含了Ozone
3. Hadoop3.0:包含了Common、HDFS、MapReduce和YARN。在后续版本中包含了Ozone,最新版本中包含了Submarine