欢迎来到天天文库
浏览记录
ID:36199901
大小:1.57 MB
页数:12页
时间:2019-05-07
《hadoop开发实战培训》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Hadoop大数据解决方案进阶应用Hadoop讲师:迪伦(北风网版权所有)MapReduce高阶实现(11)连接Map端连接Reduce端连接课程目标连接MapReduce能够执行大型数据集间的Join操作除了写MapReduce程序,其他更高级的框架也可以实现,如Pig、Hive或Cascading等连接操作的具体实现取决于数据集的规模及分区方式连接操作如果有mapper执行,则称为“map端连接”如果由reducer端执行,则称为“reduce端连接”数据的组织方式决定了采用map端还是reduce端连接Map端连接Map端连接会在数据到达map函数之
2、前就执行连接操作各map的输入数据必须先分区并且以特定方式排序各个输入数据集被划分成相同数量的分区,并按相同的key排序(连接键)同一个键的所有记录会放在同一个分区中Map端的连接操作可以连接多个作业的输出,前提是这些reducer数量相同,键相同、并且输出文件是不可切分的利用org.apache.hadoop.mapred.join包中的CompositeInputFormat类来运行一个map端连接org.apache.hadoop.examples.Join是一个通用的执行map端连接的命令行程序Map端连接Reduce端连接Reduce端连接不要求
3、输入数据集符合特定结构,因而reduce端连接比map端连接更为常用因为两个数据集要经过shuffle过程,所以reduce端连接的效率要低一些基本思路Mapper为各个记录标记源使用连接键作为map输出键,使键相同的记录放在同一reducer中帮助实现reduce端连接的技术多输入:指定多种格式的输入,可以使用MultipleInputs类来方便地解析和标注各个源二次排序实现先将一个源的数据传输到reducer,可更好地执行连接操作,避免将所有数据缓存到内存中实例:Reduce端连接要求:在reduce端实现气象站信息和天气数据的连接此mappper类用
4、于reduce端连接中标记气象站记录实例:Reduce端连接此mappper类用于reduce端连接中标记天气记录实例:Reduce端连接此reducer类用于连接已标记的气象站记录和天气记录实例:Reduce端连接对天气记录和气象站名称执行连接操作实例:Reduce端连接输出示例:欢迎访问我们的官方网站www.ibeifeng.com
此文档下载收益归作者所有