首页 > 其他分享 >大数据学习02

大数据学习02

时间:2024-07-19 23:30:44浏览次数:8  
标签:02 HDFS Map Hadoop YARN MapReduce 学习 数据

  1. HDFS (Hadoop Distributed File System)
    HDFS 是 Hadoop 的核心组件之一,旨在解决大数据存储和管理的问题。其主要特性包括高容错性、高可扩展性和高吞吐量。HDFS 将文件拆分成多个数据块,并将这些数据块分布存储在集群的不同节点上,从而实现数据的高可靠性和高可用性。

HDFS 的主要组件包括:

NameNode:负责管理文件系统的元数据,如文件路径、数据块位置等。
DataNode:负责存储实际的数据块,并定期向 NameNode 发送心跳信息和数据块报告。
Secondary NameNode:辅助 NameNode 进行元数据的检查点操作,避免 NameNode 的单点故障。
学习 HDFS 的过程中,我通过动手操作,理解了 HDFS 的基本工作原理和数据存储机制,掌握了文件上传、下载、复制和删除等基本操作。

  1. MapReduce
    MapReduce 是一种编程模型,用于大规模数据集的并行处理。其核心思想是将任务分成两个阶段:Map 阶段和 Reduce 阶段。Map 阶段负责将输入数据分割成多个小块,并进行并行处理;Reduce 阶段则负责将 Map 阶段的输出结果进行汇总和合并。

MapReduce 的工作流程如下:

输入分割:将输入数据分割成多个数据块,每个数据块由一个 Map 任务处理。
Map 阶段:每个 Map 任务读取数据块并生成键值对。
Shuffle 和 Sort 阶段:将 Map 阶段生成的键值对按键进行排序和分组。
Reduce 阶段:每个 Reduce 任务处理一组具有相同键的键值对,并生成最终结果。
通过学习 MapReduce,我编写了简单的 MapReduce 程序,如词频统计,理解了 Map 和 Reduce 函数的实现原理及其在分布式计算中的应用。

  1. YARN (Yet Another Resource Negotiator)
    YARN 是 Hadoop 的资源管理框架,负责集群资源的管理和任务调度。其主要组件包括:

ResourceManager:负责集群资源的全局管理和调度。
NodeManager:负责单个节点上的资源管理和任务执行。
ApplicationMaster:负责管理应用程序的生命周期和任务调度。
YARN 的工作流程包括资源请求、资源分配、任务执行和监控等过程。通过学习 YARN,我理解了其在资源管理和任务调度中的作用,并掌握了基本的配置和优化方法。

学习体会
通过对 HDFS、MapReduce 和 YARN 的学习,我对 Hadoop 的整体架构和工作原理有了较为全面的认识。以下是我的一些学习体会:

  1. 理论与实践结合的重要性
    在学习过程中,我发现仅仅依靠理论知识是不够的,实践操作是理解和掌握 Hadoop 技术的关键。通过动手实验,我不仅巩固了理论知识,还提高了实际操作能力。

  2. 分布式系统的复杂性
    Hadoop 作为一个分布式系统,涉及到大量的网络通信、数据传输和故障处理机制。这些复杂性要求我们在学习过程中要有耐心,并且要深入理解每一个组件的工作原理和相互协作关系。

标签:02,HDFS,Map,Hadoop,YARN,MapReduce,学习,数据
From: https://www.cnblogs.com/wlxdaydayup/p/18312542

相关文章

  • 河南萌新联赛2024第(一)场
    先给出比赛链接:https://ac.nowcoder.com/acm/contest/86639A造数题目问多少次操作可以把0转为n操作共有三种\(+1\)\(+2\)\(\times2\)能够发现操作的数字最大是2,那么这题就可以考虑二进制。三种操作就能这么理解:\(末位+1\)\(倒数第二位+1\)\(左移1位\)那么我们就......
  • 数据结构(队列)
    文章目录一、概念与结构二、队列的实现QueueNode.hQueue.c初始化判断队列为空队尾,入队列队头,出队列取队头数据取队尾数据取队列有效元素个数销毁队列test.c一、概念与结构......
  • 数据结构_排序
    目录一、排序二、插入排序2.1直接插入排序2.2希尔排序三、选择排序3.1直接选择排序3.2堆排序四、交换排序4.1冒泡排序4.2快速排序五、归并排序六、排序算法分析总结一、排序排序:就是使一串记录序列,按照其中某个或某些关键字的大小,进行递增或递减的排列......
  • 干货 | 2024应用安全防护之云原生安全实践方案(免费下载)
    诚挚邀请您扫码加入以下信息安全精品资料知识星球,获取上万份安全PPT解决方案!!!感谢支持!!!......
  • 数据仓库建模工具之一——Hive学习第五天
    Hive的分区1、Hive分区(十分重要!!)分区的目的:避免全表扫描,加快查询速度!在大数据中,最常见的一种思想就是分治,我们可以把大的文件切割划分成一个个的小的文件,这样每次操作一个个小的文件就会很容易了,同样的道理,在hive当中也是支持这种思想的,就是我们可以把大的数据,按照每天或者......
  • Linux学习笔记day01-shell命令、vim编辑器
    **1.Linux基础**   1)特点:免费、开源、安全可靠、可裁剪、可移植、将所有硬件都识别视为文件来处理   2)Linux与Windows文件存储区别:         windows:磁盘分区管理         Linux:从根目录出发3)基本目录:    bin:二进制文件  ......
  • ## 学习笔记day05-C语言基础:控制语句 if else、do while、for循环
    day05六、控制语句1.顺序语句​在模块内部没有分支、跳转、循环等条件时,程序按照顺序执行2.分支语句选择语句if...else单分支if(表达式){代码块;} step:先判断表达式是否为真(非0为真,0为假)如果为真,进入if选择结构,执......
  • 航电多校 2024 笔记
    01写点赛时不会的。难绷场,可能因为是01所以比较水,就只有最后一个能放省选模拟T1,以及一堆原神题。T5hdu7434博弈小马给出了一个可重小写字符集合 \(S\)。Alice初始时有空串 \(A\),Bob初始时有空串 \(B\)。两人轮流等概率取出集合 \(S\) 中的一个字符 \(c\),将它拼接......
  • 初级java每日一道面试题-2024年7月19日
    在Java中,重载(Overloading)和重写(Overriding)是面向对象编程中多态性的两个重要概念。1.重载(Overloading)定义:重载是指在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可。也就是说,这些方法的名称相同,但参数的个数、类型或顺序至少有一个不同。目的:重载......
  • 循环位移(2024“钉耙编程”中国大学生算法设计超级联赛(1))
    #include<bits/stdc++.h>#defineendl'\n'usingll=longlong;typedefunsignedlonglongull;usingnamespacestd;voidGordenGhost();constintN=4e6+7;constintP=131;ullp[N],an[N],bn[N];intn;voidinit(stringa,stringb){......