一, Hadoop基础架构初步认识 2

一, Hadoop基础架构初步认识


问题1:
Q: 为什么不能用配有大量硬盘的数据库做大规模数据分析? 我们为什么需要HADOOP?

A:

  • 这两个问题的答案来自于计算机硬盘的另一个发展趋势–>寻址时间的提升远远不低于传输速率的提升. 寻址是将磁头移动到特定硬盘位置进行读/写操作的过程, 它是导致硬盘操作延迟的主要原因, 而传输速率取决于硬盘的带宽.

问题2:
MapReduce 与 关系型数据库的区别?

A:

  1. MapReduce比较适合解决以批处理方式分析整个数据集的问题, 尤其是一些特定目的的分析. RDBMS适用于索引后数据集的点查询和更新, 建立索引的数据库系统能够提供对小规模数据的低延迟数据检索和快速更新.
  2. MapReduce适合一次写入, 多次读取数据的应用, 关系型数据库则更适合持续更新的数据集.

1.1 Hadoop的四高特点

高可靠性(多个数据副本),

高扩展性(方便增加新节点),

高效性(并行处理计算),

高容错性(自动重新分配失败任务)


1.2 Hadoop 1.x, 2.x, 3.x的发展

在这里插入图片描述

  • 在Hadoop 1.x时代,hadoop中的MapReduce同时处理业务逻辑和资源的调度,耦合性较大.
  • 在hadoop 2.x时代,增加了Yarn去负责资源的调度.MapReduce只负责运算.
  • Hadoop 3.x组成上没有变化

1.3 HDFS架构概述-(海量数据的存储)

  • HDFS-hdaoop distributed file system,分布式文件系统

1.3.1 HDFS组成

  • NameNode(nm): 存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间,副本数,文件权限),以及每个文件的块列表块所在的DataNode等;
  • DataNode(dm): 在本地文件系统存储文件块数据,以及块数据的校验和;
  • Secondary NameNode(2nn): 每隔一段时间对NameNode元数据备份;

HDFS入门和实践

1.4 Yarn架构概述

  • Yarn-Yet Another Resource Negotiator,简称Yarn, 除了他还有另一种资源协调者,是Hadoop的资源管理器.

1.4.1 Yarn组成

  1. ResourceManager(RM): 整个集群资源(内存,CPU等)的管理者;
  2. NodeManager(NM): 单个节点服务器资源管理者;
  3. ApplicationMaster(AM):单个任务运行的管理者;
  4. Container: 容器,相当于一台独立的服务器,里面封装了任务运行所需要的资源,如内存,CPU,磁盘,网络等.

概览图:

  • 对上图的说明:
  • 说明1: 客户端可以有多个;
  • 说明2: 集群上可以运行多个ApplicationMaster;
  • 说明3: 每个NodeManager上可以有多个Container;
  • 说明4: 每个Container分配内存范围1-8GB

1.5 MapReduce架构概述(海量数据的计算)

  • MapReduce 将计算分为两个阶段: Map和Reduce

    1. Map阶段并行输入处理数据
    2. Reduce阶段对Map结果进行汇总
  • 看图说话:

Mapreduce基本是一个批处理操作系统, 并不适合交互式分析, 典型情况下, 执行查询需要几分钟或者更多时间, 因此, MapReduce更适合那种没有用户在现场查询结果的离线使用场景.

1.6 HDFS, Yarn, MapReduce三者之间的关系

在这里插入图片描述

HDFS, Yarn, MapReduce三者之间的关系

1.7 大数据的技术生态体系

在这里插入图片描述

posted @   青松城  阅读(40)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示