原文:[大牛翻译系列]Hadoop(2)MapReduce 连接:复制连接(Replication join)

. . 复制连接 Replicationjoin 复制连接是map端的连接。复制连接得名于它的具体实现:连接中最小的数据集将会被复制到所有的map主机节点。复制连接有一个假设前提:在被连接的数据集中,有一个数据集足够小到可以缓存在内存中。 如图 . 所示,MapReduce复制连接工作原理如下: 使用分布式缓存 Districubtedcache 将这个小数据集复制到所有运行map任务的节点。 ...

2014-03-04 07:22 4 2100 推荐指数:

查看详情

[大牛翻译系列]Hadoop(3)MapReduce 连接:半连接(Semi-join

4.1.3 半连接(Semi-join) 假设一个场景,需要连接两个很大的数据集,例如,用户日志和OLTP的用户数据。任何一个数据集都不是足够小到可以缓存在map作业的内存中。这样看来,似乎就不能使用reduce端的连接了。尽管不是必须,可以思考以下问题:如果在数据集的连接操作中,一个 ...

Wed Mar 05 14:13:00 CST 2014 3 3783
[大牛翻译系列]Hadoop(1)MapReduce 连接:重分区连接(Repartition join

4.1 连接Join连接是关系运算,可以用于合并关系(relation)。对于数据库中的表连接操作,可能已经广为人知了。在MapReduce中,连接可以用于合并两个或多个数据集。例如,用户基本信息和用户活动详情信息。用户基本信息来自于OLTP数据库。用户活动详情信息来自于日志文件 ...

Mon Mar 03 23:55:00 CST 2014 1 4254
[大牛翻译系列]Hadoop(7)MapReduce:抽样(Sampling)

4.3 抽样(Sampling) 用基于MapReduce的程序来处理TB级的数据集,要花费的时间可能是数以小时计。仅仅是优化代码是很难达到良好的效果。 在开发和调试代码的时候,没有必要处理整个数据集。但如果在这种情况下要保证数据集能够被正确地处理,就需要用到抽样了。抽样是统计学中的一个方法 ...

Sun Mar 09 16:09:00 CST 2014 0 3091
[大牛翻译系列]Hadoop(5)MapReduce 排序:次排序(Secondary sort)

4.2 排序(SORT) 在MapReduce中,排序的目的有两个: MapReduce可以通过排序将Map输出的键分组。然后每组键调用一次reduce。 在某些需要排序的特定场景中,用户可以将作业(job)的全部输出进行总体排序。 例如:需要了解前N个最受欢迎的用户或网页 ...

Fri Mar 07 14:18:00 CST 2014 0 6693
[大牛翻译系列]Hadoop(13)MapReduce 性能调优:优化洗牌(shuffle)和排序阶段

6.4.3 优化洗牌(shuffle)和排序阶段 洗牌和排序阶段都很耗费资源。洗牌需要在map和reduce任务之间传输数据,会导致过大的网络消耗。排序和合并操作的消耗也是很显著的。这一节将介绍一系列的技术来缓解洗牌和排序阶段的消耗。 技术46 规避使用reduce Reduce在用于连接 ...

Sat Mar 15 14:39:00 CST 2014 0 3158
[大牛翻译系列]Hadoop(18)MapReduce 文件处理:基于压缩的高效存储(一)

5.2 基于压缩的高效存储 (仅包括技术25,和技术26) 数据压缩可以减小数据的大小,节约空间,提高数据传输的效率。在处理文件中,压缩很重要。在处理Hadoop的文件时,更是如此。为了让Hadoop更高效处理文件,就需要选择一个合适的压缩编码器,加快作业运行,增加集群的数据存储能力 ...

Fri Mar 21 14:28:00 CST 2014 0 3537
[大牛翻译系列]Hadoop(14)MapReduce 性能调优:减小数据倾斜的性能损失

6.4.4 减小数据倾斜的性能损失 数据倾斜是数据中的常见情况。数据中不可避免地会出现离群值(outlier),并导致数据倾斜。这些离群值会显著地拖慢MapReduce的执行。常见的数据倾斜有以下几类: 数据频率倾斜——某一个区域的数据量要远远大于其他区域。 数据大小倾斜——部分记录 ...

Sun Mar 16 19:44:00 CST 2014 0 4234
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM