java程序员的大数据之路(11):MapReduce的连接
来源:互联网 发布:xml与json的区别是什么 编辑:程序博客网 时间:2024/06/04 19:35
Map端连接
在两个大规模输入数据集之间的map端连接会在数据到达map函数之前就执行连接操作。各个输入数据集必须被划分成相同数量的分区,并且均按相同的键排序。同一键的所有记录均会放在同一分区之中。
Reduce端连接
reduce端连接比map端连接更为常用,因为reduce端连接并不要求输入数据集符合特定结构。但是由于两个数据集均需经过MapReduce的shuffle过程,所以reduce端连接的效率要低一些。
边数据分布
“边数据”是作业所需的额外的只读数据,以辅助处理主数据集。为了使所有的map或reduce任务方便而高效的使用边数据,除了分布机制,还可以以静态字段的方式将边数据缓存在内存中。
分布式缓存
分布式缓拷贝机制能够在任务运行过程中及时的将文件和存档复制到任务节点以供使用。
工作机制
当用户启动一个作业,Hadoop将由-files和-archieves选项所指定的文件复制到jobtracker的文件系统。在运行任务前,tasktracker将文件从jobtracker的文件系统复制到本地磁盘,使任务能够访问文件。
tasktracker为缓存中的文件各维护一个计数器,用来统计文件被使用情况。任务即将运行时,被使用的文件的计数器加1,任务结束时,所有计数器减1.当计数器为0时,该文件可以从缓存中移出。缓存大小默认为10GB,可以通过local.cache.size属性设置,单位是字节。文件存放在tasktracker的${mapred.local.dir}/tackTracker/archive目录下。
阅读全文
0 0
- java程序员的大数据之路(11):MapReduce的连接
- java程序员的大数据之路(8):MapReduce的工作机制
- java程序员的大数据之路(9):MapReduce的类型
- java程序员的大数据之路(10):MapReduce的排序
- java程序员的大数据之路(6):定制的Writable类型
- java程序员的大数据之路(7):基于文件的数据结构
- java程序员的大数据之路(12):Hadoop的守护进程
- java程序员的大数据之路(1):Hadoop安装
- java程序员的大数据之路(2):创建第一个Hadoop程序
- java程序员的大数据之路(3):用maven构建Hadoop项目
- java程序员的大数据之路(4):编程调用HDFS
- java程序员的大数据之路(5):HDFS压缩与解压缩
- java程序员的大数据之路(13):Pig入门
- java程序员的大数据之路(14):Pig Latin
- java程序员的大数据之路(15):Pig Latin用户自定义函数
- 大数据学习笔记之四 MapReduce的核心思想
- java程序员的AI之路-大数据篇 hadoop安装
- java连接各大数据的方法
- 二元分类中精确度precision和召回率recall的理解
- leetcode 198-House Robber
- 机器学习应该准备哪些数学预备知识?
- 【数据库】6数据备份还原,日志,性能优化
- 盘点记录自己学习过程中的难点,跳过的知识点
- java程序员的大数据之路(11):MapReduce的连接
- 使用python下载NCDC数据
- 图像处理-矩阵变换
- 关键字final在java中的运用
- 557. Reverse Words in a String III
- HBase随笔记录权限控制、命名空间、流量限制和表负载均衡
- LDP会话状态机
- 教您用SSH隧道实现远程连接
- JSP中转发和重定向的区别?