数据切片与MapTask并行度
1) 一个Job的Map阶段的并行度由客户端在提交Job时的切片数决定
2)每一个Split切片分配一个MapTask并行实例处理
3)默认情况下,切片大小=BlockSize
4)切片时不考虑数据集整体,而是逐个针对每个文件单独切片
为什么不用Java的序列化:
Java序列化是一个重量级序列化框架(Serizlizable),一个对象被序列化后,会附带很多额外的信息(各种校验信息,Header,继承体系等),不便于在网络中高效传输。所以,Hadoop自己开发了一套序列化机制(Writable)
Hadoop序列化特点:
(1)紧凑
(2)快速
(3)可扩展性
(4)互操作
ReduceTask工作机制:
可以分成为Copy阶段、Merge阶段、Sort阶段、Reduce阶段
设置ReduceTask并行度(个数)ReduceTask的并行度同样影响着整个Job的执行并发度和执行效率,但与MapTask的并发数由切片数决定不同,ReduceTask的数量的决定是可以手动设置// 默认值为1,手动设置为4job.setNumReduceTask(4);
注意:
(1)ReduceTask=0,表示没有Reduce阶段,输出文件个数和Map个数一致
(2)ReduceTask默认值就是1,所以输出文件个数为一个。
(3)如果数据分布不均匀,就有可能在Reduce阶段产生数据倾斜
(4)ReduceTask数量并不是任意设置,还要考虑业务逻辑需求,有些情况下,需要计算全局汇总结果,就只能有1个ReduceTask
(5)具体多少个ReduceTask,需要根据集群性能而定
Shuffle机制
Map方法以后,Reduce方法之前的数据处理过程称为Shuffle
数据切片与MapTask并行度相关推荐
- MapTask并行度决定机制、FileInputFormat切片机制、map并行度的经验之谈、ReduceTask并行度的决定、MAPREDUCE程序运行演示(来自学笔记)
1.3 MapTask并行度决定机制 maptask的并行度决定map阶段的任务处理并发度,进而影响到整个job的处理速度 那么,mapTask并行实例是否越多越好呢?其并行度又是如何决定呢? 1.3 ...
- 【hadoop】20.MapReduce-InputFormat数据切片机制
2019独角兽企业重金招聘Python工程师标准>>> 简介 通过本章节,您可以学习到: Job的提交流程 InputFormat数据切片的机制 1.Job提交流程源码分析 1)jo ...
- Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片、相互转换
Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片.相互转换 目录 numpy中的array格式数据切片与pandas中的dataframe ...
- 数据切片和切块 钻取 旋转
数据切片和切块 钻取 旋转 1 切片和切块(Slice and Dice) 在多维数据结构中,按二维进行切片,按三维进行切块,可得到所需要的数据.如在"贷 款银行.贷款质量.时间" ...
- ffice 2016 文件运行excel的数据透视表中的数据切片器的时候自动关闭
问题描述:在运行数据切片器的时候,只要一点击筛选功能,excel就会自动关闭.并重新启动. 问题分析:通过分析能够进行数据切片选择和不能进行切片的两个电脑的excel的版本,发现.两个版本信息不同. ...
- Python笔记:数据切片
以下是在pandas中实现数据切片的常用脚本.原理不赘述,具体示例如下: 01. 构造数据集 # 构造数据源 import pandas as pddf = pd.DataFrame({" ...
- CDO基础操作(二):用CDO进行数据切片和统计运算
本文将介绍如何用CDO进行nc文件的数据切片和统计运算(for Mac) 1.数据切片 cdo seldate/selmon/selyear--(选取特定时间范围的信息) cdo selname/se ...
- pandas :案例详解 loc函数、iloc函数 数据切片
pandas:数据切片 0 创建学习数据 1 直接切片 1.1 根据行切片 1.2 根据列切片 1.3 两种方法组合 2 loc切片 2.1 按照列提取数据 2.1 提取指定行数据 3 iloc 3. ...
- 大数据之-Hadoop3.x_MapReduce_切片机制与MapTask并行度决定机制---大数据之hadoop3.x工作笔记0102
然后我们来看MapReduce的框架原理,这里是很重要的,其中MapTask用来处理map阶段的任务, 然后reduceTask用来处理reduce阶段的任务. 那么MapTask主要做了什么事呢?首 ...
最新文章
- 移动端 像素渲染流水线与GPU Hack
- 转载自csdn SQL SERVER 与ACCESS、EXCEL的数据转换
- LDP (Local Derivative Pattern)原理
- NYOJ 837 Wythoff Game
- 谜题 (Puzzle,ACM/ICPC World Finals 1993,UVa227)
- 国外persona用户画像_使用Mozilla Persona验证用户的指南
- 石油大学c语言考试答案,中石油华东2012春《C语言》在线答案
- 如何应对Spark-Redis行海量数据插入、查询作业时碰到的问题
- Mac os x 系统的发展史
- Prometheus一条告警是怎么触发的
- VTP与三层交换配置实验
- 建设数据中心机房主要看这几点,否则被定为劣质机房
- Struts2中基于Annotation的细粒度权限控制
- 黑马程序员Java零基础视频教程(2022最新Java)B站视频学习笔记-Day8-面向对象
- 开关电源之充电器及其线缆的设计控制及测试验证要求
- CentOS7 设置笔记本触摸板
- dw添加下拉菜单_用dreamweaver制作网站下拉菜单的实现教程
- 11 MySQL视图
- centos 6 升级gcc
- jetson nano 远程登录及关闭图形化显示
热门文章
- Go语言中协程的概念和基本使用
- 列表推导式 生成器表达式
- linux源代码剖析之三fs
- 《Python数据可视化编程实战》—— 1.2 安装matplotlib、Numpy和Scipy库
- 《SAP入门经典(第4版•修订版)》——3.2 SAP硬件基础知识
- Python 添加类型标注 | 散发着自由松散气息的代码
- AFNetWorking 之 网络请求的基本知识
- java jdom追加节点_java-使用xpath和jdom选择一个节点
- bootstrap学习记录
- [Java]知乎下巴第3集:来人啊快把知乎的答案装到篮子里去