hadoop笔记

供个人学习使用

1.大数据的特点

大、多、值、快、信,即5V:

  • Volume(大量):大数据的采集、计算、存储量都非常庞大,待处理数据都是TB、PB、乃至EB级别的
  • Variety(多样性):相对于以往便于存储的 以数据库/文本为主的结构化数据,非结构化数据越来越多,包括网络日志、音频、视频、图 片、地理位置信息等,这些多类型的数据对数据的处理能力提出了更高要求。
  • Value(低价值密度):价值密度的高低与数据总量的大小成反比
  • Velocity(高速):数据的采集、计算和存储速度都很快
  • Veracity(可靠):数据精准可靠

2.hadoop主要解决得问题

  • 海量数据的存储和海量数据的分析计算问题

3.Hadoop的优势:

  • 高可靠性。Hadoop通过在多个节点上保存数据副本,确保即使某个计算节点或存储节点发生故障,数据也不会丢失。
  • 高扩展性。Hadoop能够在现有的计算机集群中轻松扩展,支持成千上万的节点,使其能够处理大规模数据。
  • 高效性。Hadoop能够在多个节点之间动态移动数据,并保持节点间的动态平衡,从而提高数据处理速度。
  • 高容错性。Hadoop能够自动重新分配失败的任务和计算节点,确保任务继续执行。
  • 低成本。Hadoop是开源的,用户可以免费下载和使用,显著降低了软件成本。
  • 广泛的适用性。Hadoop的框架是基于Java编写的,使其能够运行在多种操作系统和硬件平台上。
  • 成熟的技术生态和社区支持。Hadoop拥有一个成熟的技术生态和强大的开源社区支持,提供了丰富的工具和组件,便于用户集成和扩展。

4.Hadoop的组成

  • 在Hadoop1.x版本中,Hadoop中的MapReduce同时处理业务逻辑运算和资源的调度,其耦合度较大
  • 在Hadoop2.x版本中,在此基础上增加了Yarn,此后,MapReduce只处理业务逻辑运算,Yarn只负责资源调度
  • Hadoop3.x版本相较于Hadoop2.x版本在组成上没有变化

4.1 HDFS

HDFS,全称Hadoop Distributed File System, 是Apache Hadoop项目的一个核心组件,是一个分布式文件系统,旨在存储大规模数据集并提供高可用性、容错性和高吞吐量的数据访问

HDFS主要由NameNode(nn)、DataNode(dn)和Secondary NameNode(2nn)组成

  • NameNode: 存储文件的元数据 ,如文件名,文件目录结构,文件属性 (生成时间、副本数、文件权限),以及每个文件的块列表块所在的DataNode位置信息等。
  • DataNode: 存储具体的文件,在本地文件系统存储文件块数据 ,以及块数据的校验和。
  • Secondary NameNode: 每隔一段时间对NameNode进行数据备份,在NameNode挂掉时可以辅助恢复NameNode(会丢掉一部分数据,生产过程中采用配置两个NameNode的方式代替)

4.2 MapReduce

MapReduce分为Map和Reduce两个阶段:

  • Map:并行处理输入输入的数据并将处理结果送往Reduce端相应的分区,各Mapper之间相互独立。
  • **Reduce:**对Map阶段送来的处理结果进行汇总,各Reducer之间相互独立。

4.3 Yarn

Yarn,全称Yet Another Resource Negotiator,是一种资源管理者,负责Hadoop的资源调度。主要由Resource Manager(RM)、NodeManager(NM)、ApplicationManager(AM)和Container组成。

  • ResourceManager (RM):整个集群资源的掌管者,负责协调和管理集群中的资源,包括内存、CPU和其他计算资源
  • ApplicationManager(AM) :ResourceManager的一个子组件,其主要职责是管理MapReduce所有应用程序的生命周期和资源分配。ApplicationManager负责与ResourceManager协调,以分配所需的计算和存储资源。
  • NodeManager(NM) :NodeManager是ResourceManager的下级组件,负责管理单个数据节点上的计算和存储资源。它监视节点上的资源使用情况,包括CPU、内存和磁盘空间等,以便及时向ResourceManager报告可用资源的情。
  • Container:容器,相当一台独立的服务器,里面封装了任务运行所需要的资源,如内存、CPU、磁盘、网络等。

4.4 HDFS、MapReduce、Yarn之间的关系

  • HDFS作为Hadoop的底层存储层,为MapReduce和其他大数据处理框架提供了高吞吐量的数据访问。
  • MapReduce是Hadoop生态系统中的一个计算框架,它可以从HDFS中读取数据,并将处理结果写回HDFS。MapReduce依赖于HDFS来存储输入和输出数据,以及在YARN上执行任务。
  • YARN充当资源管理器和作业调度器,它协调集群上运行的各种应用程序,包括MapReduce作业。MapReduce作业的执行需要YARN来分配和管理计算资源。
相关推荐
摇滚侠6 分钟前
Vue3入门到实战,最新版vue3+TypeScript前端开发教程,笔记03
javascript·笔记·typescript
计算机编程-吉哥33 分钟前
大数据毕业设计-基于Python的中文起点网小说数据分析平台(高分计算机毕业设计选题·定制开发·真正大数据)
大数据·hadoop·计算机毕业设计选题·机器学习毕业设计·大数据毕业设计·大数据毕业设计选题推荐·大数据毕设项目
岑梓铭1 小时前
考研408《计算机组成原理》复习笔记,第六章(1)——总线概念
笔记·考研·408·计算机组成原理·计组
Suckerbin1 小时前
digitalworld.local: TORMENT
笔记·安全·web安全·网络安全
凯尔萨厮2 小时前
Java学习笔记三(封装)
java·笔记·学习
RaLi和夕2 小时前
单片机学习笔记.C51存储器类型含义及用法
笔记·单片机·学习
星梦清河3 小时前
宋红康 JVM 笔记 Day15|垃圾回收相关算法
jvm·笔记·算法
Agatha方艺璇3 小时前
Hive基础简介
数据仓库·hive·hadoop
岑梓铭3 小时前
计算机网络第四章(4)——网络层《ARP协议》
网络·笔记·tcp/ip·计算机网络·考研·408
lingggggaaaa3 小时前
小迪安全v2023学习笔记(八十讲)—— 中间件安全&WPS分析&Weblogic&Jenkins&Jetty&CVE
笔记·学习·安全·web安全·网络安全·中间件·wps