Hadoop之split
来源:互联网 发布:c二维数组列排序 编辑:程序博客网 时间:2024/04/28 03:48
文件上传至HDFS之前,InputFormat接口的getSplits方法会将文件划分切割成为若干个可序列化的split
一个大数据的文件一般要划分为若干个split,因此,处理一个split的时间远远小于处理整个大数据文件的时间,根据木桶效应,整个Map处理的速度则是由群集中所有运行map节点的最慢的那个节点决定,如果将splits分成较为细粒度的数据大小,而同时对不同的节点计算机根据其速度分配splits个数,可以获得更好的负载均衡。
一般大多数的split与HDFS中的block大小相同,都为64M,这样做的好处是使得Map可以在存储有当前数据的节点上运行本地的任务,而不需要通过网络进行跨节点的任务调度。
如果一个Map中所需要的数据大于一个block的大小64M的时候,那么部分数据很可能存储到别的节点上,处理的时候必然会通过网络跨节点数据传输,则Map无疑是增加了等待时间从而降低了Map处理效率
如果一个Map中所需要的数据小于block的大小64M的时候,那么会对当前节点block容量的浪费,同时是增加了split的个数,Map对split进行计算并且上报结果,关闭当前计算打开新的split均需要耗费资源,这样无疑也降低了Map处理效率
- Hadoop之split
- hadoop之split
- Hadoop笔记之Split工作原理图
- hadoop之MapReduce输入(split)输出
- Hadoop之MapReduce输入(split)输出
- hadoop block split 区别
- Hadoop获取split文件名
- Hadoop中split源码分析
- Hadoop源码解析之: TextInputFormat如何处理跨split的行
- Hadoop源码解析之: TextInputFormat如何处理跨split的行
- Hadoop源码解析之: TextInputFormat如何处理跨split的行
- Hadoop源码分析(三)--------------job提交过程分析(3)之job的split过程
- Hadoop源码解析之: TextInputFormat如何处理跨split的行
- Hadoop源码解析之: TextInputFormat如何处理跨split的行
- linux之split命令
- c++之split
- Java之split()方法
- Java之split方法
- Flex:基于Flex-config.xml的命令行编译
- Linux目录、权限
- [@Controller]2 详解@RequestMapping
- 利用html5标签画圆
- 如何进行研发项目中的过程裁剪
- Hadoop之split
- 程序员必备神器——Sublime Text2
- “十天一本书”之十一—《史玉柱商道真经》随感
- 中篇美国人经营之道 二在对方心里安放一个心锚
- static_cast
- C++内存管理学习笔记(4)
- 代码优化
- 用Gallery(画廊)做的图片自动切换(可用作广告图片展示)
- strformatbytesize 用户空间的内存