技术改变世界 阅读塑造人生! - shaogx.com

This string was altered by TechBlog\Plugins\Example.; This is an example to show the potential of an offcanvas layout pattern in Bootstrap. Try some responsive-range viewport sizes to see it in action.

Spark Core源码分析: RDD基础

RDDRDD初始参数:上下文和一组依赖abstract class RDD[T: ClassTag]( @transient private var sc: SparkContext, @transient private var deps: Seq[Dependency[_]] ) extends Serializable 以下需要仔细理清:A list of PartitionsFunction to compute split (sub RDD impl)A list of DependenciesPartitioner for K-V RDDs (Optional)... 全文

Spark RDD Dependency Partitioner

Hadoop学习之MapReduce(二)

在通过WordCount的例子直观地了解了MapReduce框架的作业如何编写后,现在对MapReduce框架中的关键接口或者类进行深入地地探索和学习。主要讲解Hadoop1.x中的接口和类,也就是org.apache.hadoop.mapreduce包中的接口和类,上面介绍的WordCount作业也是实现了这个包中的接口和类。首先会介绍Mapper<KEYIN,VALUEIN,KEYOUT,VALUEOUT>和Reducer<KEYIN,VALUEIN,KEYOUT,VALUEOUT>类,应用程序一般通过集成这两个类来实现map和reduce方法,而不同于之前版本中实现Mapper和Reducer接口。然后会介绍其它的接口或者类,包括InputFormat<K,V>、Job、Configuration 、OutputFormat<K,V>、Partitioner<KEY,VALUE>、Context、ToolRunner、Tool、Configured 等。最后通过介绍MapReduce的一些有用的特性,比如DistributedCache,结束MapReduce的学习。类Mapper将输入的键值对映射为中间键值对的集合。Maps是独立的任务,将输入的记录转化为中间记录,这些转化而来的中间记录不需要和输入记录保持一致的类型。一个给定的输入键值对可能映射为零或者多个输出键值对。MapReduce框架为每个由作业的InputFormat产生的InputSplit生成一个Map任务。Mapper类的实现可以通过使用JobContext.getConfiguration()访问作业的Configuration对象。MapReduce框架首先调用setup(org.apache.hadoop.mapreduce.Mapper.Context),接着为InputSplit中的每个键值对调用map(Object,Object, Context),最后调用cleanup(Context)。... 全文

Hadoop mapreduce Mapper Reducer Partitioner

Partitioner分区过程分析

            Partition的中文意思就是分区,分片的意思,这个阶段也是整个MapReduce过程的第三个阶段,就在Map任务的后面,他的作用就是使key分到通过一定的分区算法,分到固定的区域中,给不同的Reduce做处理,达到负载均衡的目的。他的执行过程其实就是发生在上篇文章提到的collect的过程阶段,当输入的key调用了用户的map函数时,中间结果就会被分区了。虽说这个过程看似不是很重要,但是也有值得学习的地方。Hadoop默认的算法是HashPartitioner,就是根据key的hashcode取摸运算,很简单的。... 全文

mapreduce 分布式 分布式计算 源码 二分查找

1