00-Hadoop入门

Hadoop入门

Hadoop四高

1)高可靠性

Hadoop底层维护多个数据副本,所有即使hadoop某个计算元素或存储故障,也不会造成数据丢失

2)高扩展性

在集群间分配任务数据,可方便的扩展数以千计的节点

3)高效性

在mapreduce的思想下,Hadoop是可以并行工作的,以加快任务处理的速度。

4)高容错性

能够自动将失败的任务重新分配

HDFS缺点:

1)不适合低延迟数据访问,比如毫秒级的存储数据,它做不到

2)无法高效对大量小文件进行存储

存储大量小文件,他会占用大量的NameNode大量的内存来存储文件目录和快信息。这样是不可取的,因为NameNode内存是有限的

小文件的寻址时间会超过读取时间,违反了HDFS的设计目标

3)不支持并发写入、文件随机修改

一个文件只能有一个写,不允许多个线程同时写

仅支持数据追加(append),不支持文件的随机修改

Hadoop组成

Hadoop1.x阶段

HDFS(数据存储)、MapReduce(计算+资源调度)、Common(辅助工具)

1.x时期,mr需要同时处理业务逻辑运算又要资源调度,压力大,耦合度大。

Hadoop2.x阶段

HDFS(数据存储)、MapReduce(计算)、YARN(资源调度)、Common(辅助工具)

Hadoop3.x阶段无变化

  • Hadoop集群包括两个:HDFS集群、YARN集群
  • 两个集群逻辑上分离、通常物理上是在一起的
  • 两个集群都是标准的主从架构的集群

Hadoop架构

HDFS 集群

​ 主角色:NameNode(NN)是Master,它是管理者

  • 存储文件元数据,如文件名、文件目录结构、文件属性,以及每个文件块列表、块所在DataNode等
  • 管理HDFS的名称空间
  • 配置副本策略
  • 处理客户端读写请求

​ 从角色:DataNode(DN) 是Slave,DataNode执行实际的操作

  • 在本地文件系统存储文件块数据 和读写数据块,以及数据的校验和

​ 主角色辅助角色:SecondaryNameNode(SNN) 相当于主角色的秘书

​ 该节点并非NameNode的热备节点。当NameNode挂掉时,它并不能马上替换NameNode并提供服务

​ 它只辅助NameNode,分担NameNode工作量,比如定期合并Fsimage和Edits,并推送给NameNode

  • 每个一段时间对NameNode元数据做备份
  • 紧急情况下,可辅助恢复NameNode

Client客户端

1)文件切片。文件上传HDFS时,Client将文件分成一个个block,然后进行上传;

2)与NameNode交互,获取文件的位置信息;

3)与DataNode交互,读取或写入信息;

4)Client提供了一些命名来管理HDFS,比如NameNode格式化;

5)Client可以通过一些命名来访问HDFS,比如对HDFS增删改查等操作

YARN集群

​ 主角色:ResourceManager(RM)

  • 整个集群资源(cpu、内存等)的老大

​ 从角色:NodeManager(NM)

  • 单个节点服务器资源的老大

​ ApplicationMaster(AM)

  • 单个任务运行的老大

​ Container

  • 容器,相当于一台独立的服务器,里面封装了任务运行时所需资源,内存、cpu、磁盘、网络等

注:集群上可以有很多ApplicationMaster,每个NodeManager上可以有多个Container

Hadoop特征优点

扩容能力(Scalable):Hadoop是在可用的计算机集群间分配数据并完成计算任务的,这些集群可用方便的扩展到数以千计的节点中。

成本低(Economical):Hadoop通过普通廉价的机器组成服务器集群来分发以及处理数据,以至于成本很低。

高效率(Efficient):通过并发数据,Hadoop可以在节点之间动态并行的移动数据,使得速度非常快。

可靠性(Rellable):能自动维护数据的多份复制,并且在任务失败后能自动地重新部署(redeploy)计算任务。所以Hadoop的按位存储和处理数据的能力值得人们信赖。

相关推荐
简单的心13 小时前
window部署虚拟机VirtualBox来部署flink
大数据·windows·flink
碳基学AI4 小时前
北京大学DeepSeek内部研讨系列:AI在新媒体运营中的应用与挑战|122页PPT下载方法
大数据·人工智能·python·算法·ai·新媒体运营·产品运营
viperrrrrrrrrr74 小时前
大数据学习(105)-Hbase
大数据·学习·hbase
SeaTunnel5 小时前
【同步教程】基于Apache SeaTunnel从MySQL同步到MySQL——Demo方舟计划
大数据·人工智能·apache·etl
群联云防护小杜6 小时前
基于AI的Web应用防火墙(AppWall)实战:漏洞拦截与威胁情报集成
前端·分布式·安全·ddos
老友@8 小时前
Elasticsearch 全面解析
大数据·elasticsearch·搜索引擎
云之兕8 小时前
分布式ID生成器设计详解
分布式
不懂的浪漫8 小时前
分布式限流器框架 eval-rate-limiter
分布式
Gvemis⁹8 小时前
Spark Core(二)
大数据·分布式·spark