闭包介绍 Swift一大特性便是使用简洁的头等函数/闭包语法代替了复杂的blocks语法。希望我们在Swift中不再需要像fuckingblocksyntax中所描述的语法。(译者注:头等函数-即可将函数当作参数传递给其他的函数,或从其他的函数里返回出值,并且可以将他们设定为变量,或者将他们存储在数
分类:
编程语言 时间:
2016-02-10 12:01:11
阅读次数:
410
Python has a few functions that are useful for this sort of “functional programming”: map, filter, and reduce. 4 (In Python 3.0, these are moved to th
分类:
编程语言 时间:
2016-02-08 17:26:33
阅读次数:
208
MapReduce从它名字上来看就大致可以看出个缘由,两个动词Map和Reduce,“Map(展开)”就是将一个任务分解成为多个任务,“Reduce”就是将分解后多任务处理的结果汇总起来,得出最后的分析结果。这不是什么新思想,其实它的本质就是一种“分治法”的思想,把一个巨大的任务分割..
分类:
其他好文 时间:
2016-02-04 19:14:17
阅读次数:
232
本文以手机流量统计为例: 日志中包含下面字段 现在需要统计手机的上行数据包,下行数据包,上行总流量,下行总流量。 分析:可以以手机号为key 以上4个字段为value传传递数据。 这样则需要自己定义一个数据类型,用于封装要统计的4个字段,在map 与reduce之间传递和shuffle 注:作为ke
分类:
其他好文 时间:
2016-02-02 17:53:51
阅读次数:
290
教程目录 react+redux教程(一)connect、applyMiddleware、thunk、webpackHotMiddleware react+redux教程(二)redux的单一状态树完全替代了react的状态机? react+redux教程(三)reduce()、filter()、m
分类:
其他好文 时间:
2016-02-01 14:34:42
阅读次数:
1362
一:背景 为了使得MapReduce计算后的结果显示更加人性化,Hadoop提供了分区的功能,可以使得MapReduce计算结果输出到不同的分区中,方便查看。Hadoop提供的Partitioner组件可以让Map对Key进行分区,从而可以根据不同key来分发到不同的reduce中去处理,我们可以自
分类:
其他好文 时间:
2016-01-31 21:34:07
阅读次数:
338
一:背景 SemiJoin,一般称为半连接,其原理是在Map端过滤掉一些不需要join的数据,从而大大减少了reduce和Shuffle的时间,因为我们知道,如果仅仅使用Reduce端连接,那么如果一份数据,存在大量的无效数据,而这些数据在join中并不需要,但是因为没有做过预处理,所以这些数据直到
分类:
其他好文 时间:
2016-01-31 21:30:54
阅读次数:
297
概述: 一个Hive查询生成多个map reduec job,一个map reduce job又有map,reduce,spill,Shuffle,sort等几个阶段,所以针对Hive查询的优化可以大致分为针对MR中单个步骤的优化(其中又会分细节),针对MR全局的优化,和针对整个查询(多MR job
分类:
其他好文 时间:
2016-01-31 21:27:55
阅读次数:
402
一:背景 某些业务的数据来源可能不同,且数据源中的分割方式也不同,导致在MapReduce编程时使用的格式化类会不同,为了包装不同的Map输出,Hadoop提供了GenericWritable类,允许我们同时操作多个不同的Map输出,输出到一个Reduce中进行处理。 技术实现: 我们对HDFS中两
分类:
其他好文 时间:
2016-01-31 21:22:10
阅读次数:
375
一、概述 MapReduce框架对处理结果的输出会根据key值进行默认的排序,这个默认排序可以满足一部分需求,但是也是十分有限的,在我们实际的需求当中,往往有要对reduce输出结果进行二次排序的需求。对于二次排序的实现,网络上已经有很多人分享过了,但是对二次排序的实现原理及整个MapReduce框
分类:
编程语言 时间:
2016-01-31 21:17:38
阅读次数:
243