Hadoop3教程(九):MapReduce框架原理概述
文章目录
- 简介
- 参考文献
简介
这属于整个MR中最核心的一块,后续小节会展开描述。
整个MR处理流程,是分为Map阶段和Reduce阶段。
一般,我们称Map阶段的进程是MapTask,称Reduce阶段是ReduceTask。
其完整的工作流程如图:

Map阶段具体的工作任务是啥呢?
1) map阶段决定,根据数据源,可以选择根据什么方式来读取数据;
默认情况下,map阶段读数据,是按行读,读取到的KV里,K是偏移量(可以理解成行数),V是这一行的内容。那map阶段是不是只能这么行读呢?
不是。
这里就要介绍一个组件,叫做InputFormat,它就是用来控制数据的读取形式。
Hadoop中的InputFormat有好几种实现,如FileInputFormat、TextInputFormat和CombineTextInputFormat等。
2) 数据在被读进来之后,就会交给Mapper来进行自定义业务逻辑的处理;
3)接着进行shuffle,这是一个非常复杂的过程,可以在这里进行排序、分区、压缩、合并等等, 堪称MapReduce中最核心的环节。
最后进入reduce阶段,也有一个组件,叫做OutputFormat,用来控制数据的输出形式。同样的,它也有好几种实现,默认的OutputFormat是把数据写进文件里,那我想写进数据库里,可不可以呢?
当然可以,自定义OutputFormat就可以。
接下来的几节就会围绕这个流程做展开讲述:
- InputFormat
- Shuffle机制
- OutputFormat
- Join应用
参考文献
- 【尚硅谷大数据Hadoop教程,hadoop3.x搭建到集群调优,百万播放】
相关文章:
Hadoop3教程(九):MapReduce框架原理概述
文章目录 简介参考文献 简介 这属于整个MR中最核心的一块,后续小节会展开描述。 整个MR处理流程,是分为Map阶段和Reduce阶段。 一般,我们称Map阶段的进程是MapTask,称Reduce阶段是ReduceTask。 其完整的工作流程如图ÿ…...
使用PyTorch加载数据集:简单指南
💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…...
【考研数学】线性代数第六章 —— 二次型(2,基本定理及二次型标准化方法)
文章目录 引言一、二次型的基本概念及其标准型1.2 基本定理1.3 二次型标准化方法1. 配方法2. 正交变换法 写在最后 引言 了解了关于二次型的基本概念以及梳理了矩阵三大关系后,我们继续往后学习二次型的内容。 一、二次型的基本概念及其标准型 1.2 基本定理 定理…...
Raven2靶机渗透
1. 信息收集 1.1 主机探测 sudo arp-scan -l1.2 端口扫描 nmap -p- -A 192.168.16.185开放了80端口,尝试登录网址查看信息,通过浏览器插件找出指纹 1.3 目录扫描 访问登录界面,发现remember Me怀疑是shiro界面 登录/vendor/界面࿰…...
UE5中双pass解决半透明材质乱序问题
透明度材质乱序问题一直是半透明效果时遇到的比较多的问题,用多pass方案只能说一定程度上解决,当遇到多半透明物体穿插等情况时,仍然不能完美解决。 双pass方案Unity用的比较多,因为Unity支持多个pass绘制。在UE中我们可以以复制多…...
Cisdem Video Player for mac(高清视频播放器) v5.6.0中文版
Cisdem Video Player mac是一款功能强大的视频播放器,适用于 macOS 平台。它可用于播放不同格式的视频文件,并具有一些实用的特性和功能。 Cisdem Video Player mac 中文版软件特点 多格式支持:Cisdem Video Player 支持几乎所有常见的视频格…...
数据库管理-第109期 19c OCM考后感(20231015)
数据库管理-第109期 19c OCM考后感(202301015) 距离上一篇又过了两周多,为啥又卡了这么久,主要是后面几个问题:1. 9月1日的19c OCM upgrade考试木有过,因为有一次免费补考机会就又预约了10月8日的考试&…...
初出茅庐的小李博客之SPI工作模式
SPI的工作模式 SPI(Serial Peripheral Interface)是一种同步串行通信协议,常用于连接微控制器和外围设备。SPI有四种模式,分别是0、1、2、3模式。 0模式:时钟空闲时为低电平,数据在时钟的下降沿采样&#…...
SpringCloud-Bus
一、介绍 (1)bus搭配config可以实现客户端配置自动刷新 (2)bus支持两种消息代理,rabbitmq和kafka (3)使用topic模式分发消息 二、项目搭建(广播) (1&#…...
Adobe2024 全家桶更新了,PS、Ai、AE、PR应用尽有
Adobe2024 全家桶更新了,包含的PS、Ai、AE、PR......个人学习,专业领域都是必不可少的软件都有,需要的不要错过了。 如果你不知道从哪里安装这些工具,小编为大家带来了破J版资源,附上详细的安装包及安装教程。 Mac软件…...
【斗破年番】彩鳞换装美翻,雁落天惨死,萧炎暗杀慕兰三老遇险,彩鳞霸气护夫
Hello,小伙伴们,我是小郑继续为大家深度解析斗破苍穹年番资讯。 斗破苍穹动画已经更新了,小医仙与萧炎相认,三国联军撤退,随后彩鳞与萧炎以及小医仙夜晚相会,一起制定了刺杀行动。从官方公布的第68集预告,彩…...
华为端到端战略管理体系(DSTE开发战略到执行)的运作日历图/逻辑图及DSTE三大子流程介绍
华为端到端战略管理体系(DSTE开发战略到执行)的运作日历图/逻辑图及DSTE三大子流程介绍 本文作者 | 谢宁,《华为战略管理法:DSTE实战体系》、《智慧研发管理》作者 添加图片注释,不超过 140 字(可选&#…...
Linux友人帐之调试器--gdb的使用
一、debug和realease版本的区别 区别 debug是给程序员用的版本,添加了调试信息,用于解决软件或程序中出现的问题,realease是发行给客户使用的版本,并未添加调试信息,只需要给客户提供优越的产品使用环境即可ÿ…...
antd pro form 数组套数组 form数组动态赋值 shouldUpdate 使用
antd form中数组套数组 form数组动态变化 动态赋值 需求如上,同时添加多个产品,同时每个产品可以增加多台设备,根据设备增加相应编号,所以存在数组套数组,根据数组值动态变化 使用的知识点 form.list form中的数组…...
动态规划:918. 环形子数组的最大和
个人主页 : 个人主页 个人专栏 : 《数据结构》 《C语言》《C》《算法》 文章目录 前言一、题目解析二、解题思路解题思路状态表示状态转移方程初始化填表顺序返回值 三、代码实现总结 前言 本篇文章仅是作为小白的我的一些理解,,…...
毅速丨模具3D打印材料有哪些选择
当前1.2709和CX是市面上最常用的3D打印模具钢材料,模具3D打印有没有更多的材料选择呢? 据了解,上海毅速推出的几款3D打印新材料正在被越来越多的行业所采用。如毅速的EM191S高性能高抛光不锈钢粉末,这款材料的抗开裂和耐腐蚀性能是…...
Springcloud笔记(1)-微服务和springcloud介绍
微服务简介 就是将一个大的应用,拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以 进行交互,这就是微服务对于微服务,业界没有严格统一的定义,但是作为“微服务”这名词的发明人,…...
十六、代码校验(4)
本章概要 调试 使用 JDB 调试图形化调试器 调试 尽管聪明地使用 System.out 或日志信息能给我们带来对程序行为的有效见解,但对于困难问题来说,这种方式就显得笨拙且耗时了。 你也可能需要更加深入地理解程序,仅依靠打印日志做不到。此时…...
【已解决】No Python at ‘D:\Python\python.exe‘
起因,我把我的python解释器,重新移了个位置,导致我在Pycharm中的爬虫项目启动,结果出现这个问题。 然后,从网上查到了这篇博客: 【已解决】No Python at ‘D:\Python\python.exe‘-CSDN博客 但是,按照上述…...
蓝桥杯双周赛算法心得——数树数(dfs)
大家好,我是晴天学长,一个简单的dfs思想,需要的小伙伴可以关注支持一下哦!后续会继续更新的。 1) .数树数 2) .算法思路 代码的主要逻辑是: 1.使用Scanner读取输入的整数n和q,其中n表示测试用例的数量&am…...
实测Qwen3-4B:256K超长上下文,处理长文档、写长文真实案例
实测Qwen3-4B:256K超长上下文,处理长文档、写长文真实案例 1. 引言:为什么关注长上下文能力 在日常工作和创作中,我们经常遇到需要处理超长文档的场景:分析上百页的PDF报告、阅读整本电子书、编写长篇技术文档等。传…...
远程协助工具
# 详见:https://mp.weixin.qq.com/s/sY-KrOqpY3C1JUeiELEJNw # 来源:https://chat.qwen.ai/# ToDesk https://www.todesk.com/# 向日葵 https://sunlogin.oray.com/# TeamViewer https://www.teamviewer.com/# AnyDesk https://anydesk.com/ https://any…...
Spring Boot 基础学习笔记
Spring Boot 基础学习笔记 一、Spring Boot 概述 1. 定义 Spring Boot 是 Pivotal 团队基于 Spring 框架开发的快速开发脚手架,核心宗旨是简化 Spring 应用的初始化搭建和开发流程,通过「约定优于配置」的思想,大幅减少 XML 配置和繁琐的依…...
Qwen2.5-VL图文助手体验:RTX 4090极速推理,支持对话历史和一键清空
Qwen2.5-VL图文助手体验:RTX 4090极速推理,支持对话历史和一键清空 如果你手头有一张RTX 4090显卡,想找一个能看懂图片、能聊天、还能帮你处理各种视觉任务的本地AI助手,那么今天要聊的这个工具,你可能会很感兴趣。 …...
从Solid模块到轨迹规划:一个完整机械臂SimMechanics仿真项目的保姆级拆解
从Solid模块到轨迹规划:一个完整机械臂SimMechanics仿真项目的保姆级拆解 机械臂仿真一直是工业自动化和机器人研究中的核心课题。不同于传统Adams等专业仿真软件,SimMechanics凭借其与Matlab/Simulink的无缝集成,为工程师提供了从建模到控制…...
Phi-4-mini-reasoning入门指南:用Gradio Blocks构建多步解题UI
Phi-4-mini-reasoning入门指南:用Gradio Blocks构建多步解题UI 1. 认识Phi-4-mini-reasoning Phi-4-mini-reasoning是一款3.8B参数的轻量级开源模型,专为数学推理、逻辑推导和多步解题等强逻辑任务设计。这个模型主打"小参数、强推理、长上下文、…...
【以太网帧格式】
以太网帧格式一、顺序二、分析一、顺序 前导码 | 帧开始定界符 | 目的MAC | 源MAC | 类型(长度) | 数据字段 | 帧校验序列FCS3 (以太网帧最小帧长:64 字节,最大帧长:1518 字节。) 二、分析 1…...
超越本地插件:利用快马平台ai能力全面提升你的编码效率与工作流
最近在开发前端项目时,我一直在寻找能提升效率的AI工具。之前用过一些本地IDE插件,虽然能提供基础的代码补全,但功能比较局限。后来尝试了InsCode(快马)平台,发现它把AI辅助开发做到了一个新高度,特别适合需要快速迭代…...
别再手动调参了!用GCNet模块给你的ResNet模型一键注入全局感知能力(附PyTorch代码)
全局感知能力升级:用GCNet模块为ResNet模型注入高效注意力机制 在计算机视觉领域,ResNet架构因其出色的性能和稳定性成为众多任务的基准模型。然而,随着注意力机制的兴起,传统卷积神经网络在长距离依赖建模上的局限性逐渐显现。本…...
自适应滤波实战:如何用LMS算法在MATLAB/Simulink中快速搭建一个‘简易版’维纳滤波器?
自适应滤波实战:LMS算法在MATLAB/Simulink中的工程化实现 在信号处理领域,自适应滤波技术因其强大的环境适应能力而备受青睐。想象一下,你正在处理一段被噪声污染的语音信号,或是试图从复杂工业环境中提取有效振动特征——传统固定…...
