前言
Hadoop是用来解决海量数据的存储和海量数据的分析计算问题,一个分布式系统基础架构
一、hadoop的发展历史
来不及解释了,点击带你了解什么是Hadoop
二、大数据简述
1. 大数据的概念
大数据:指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产
存储单位在TB、PB、EB
1T = 1024G
2. 大数据特点(4V)
Volume(大量)
Velocity(高速)
这是大数据区分于传统数据挖掘的最显著特征
根据IDC的“数字宇宙”的报告,预计到2025年,全球数据使用量将达到163ZB。在如此海量的数据面前,处理数据的效率就是企业的生命
Variety(多样)
分为结构化和非结构化数据
Value(低价值密度)
价值密度的高低与数据总量的大小成反比
3. 大数据技术生态圈
虽然 Hadoop 提供了很多功能,但仍然应该把它归类为由多个组件组成的 Hadoop 生态圈,这些组件包括数据存储、数据集成、数擔处理和其他进行数据分析的专门工具。
三、hadoop概述
1. hadoop优势
高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失
高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点
高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度
高容错性:能够自动将失败的任务重新分配
2. hadoop组成
hadoop 1.x hadoop 2.x hadoop 3.x
Common(辅助工具) Common(辅助工具) 同2.x
HDFS(数据存储) HDFS(数据存储)
MapReduce(计算+资源调度) MapReduce(计算)
YARN(资源调度)
说明
在Hadoop1.x 时代,Hadoop中的MapReduce同时处理业务逻辑运算和资源的调度,耦合性较大。
在Hadoop2.x时代,增加了Yarn。Yarn只负责资源的调度,MapReduce只负责运算。
Hadoop3.x在组成上没有变化
3. HDFS架构概述
Hadoop Distributed File System,简称HDFS,是一个分布式文件系统
NameNode(nn):存储文件的元数据,如:文件名、文件目录结构、文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和所在的DataNode等
简而言之就是一目录,DataNode才是内容
DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和。
Secondary NameNode(2nn):每隔一段时间对NameNode元数据备份
4. YARN架构概述
Yet Another Resource Negotiator简称YARN,另一种资源协调者,是Hadoop的资源管理器
ResourceManager (RM):整个集群资源(内存、CPU等)的老大
NodeManager (NM):单个节点服务器资源老大
ApplicationMaster (AM):单个任务运行的老大
Container:容器,相当一台独立的服务器,里面封装了任务运行所需要的资源,如内存、CPU、磁盘、网络等
说明
客户端可以有多个
集群上可以运行多个ApplicationMaster
每个NodeManager上可以有多个Container容器(最低分配一核一cpu)
5. MapReduce架构概述
MapReduce将计算分成两个过程:
Map阶段并行处理输入数据
Reduce阶段对Map结果进行汇总
6. HDFS、YARN、MapReduce三者关系
总结
Hadoop 是一个基础框架,允许用简单的编程模型在计算机集群上对大型数据集进行分布式处理。它的设计规模从单一服务器到数千台机器,每个服务器都能提供本地计算和存储功能,框架本身提供的是计算机集群高可用的服务,不依靠硬件来提供高可用性。
用户可以在不了解分布式底层细节的情况下,轻松地在 Hadoop 上开发和运行处理海量数据的应用程序。低成本、高可靠、高扩展、高有效、高容错等特性让 hadoop 成为最流行的大数据分析系统。
到这里,已经可以初步了解了大数据的大致情况,Hadoop的组成架构,下一篇将带来Hadoop运行环境的搭建。