0%

定义

Define an interface for creating an object,but let subclasses decide which class to instantiate.Factory Method lets a class defer instantiation to subclasses.(定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。)

Read more »

Shuffle是mapreduce编程模型的关键步骤,同样也是在程序运行中主要需要进行调优的阶段,因此更好的理解shuffle原理,才能够在程序中找到需要优化的关键点。

在理解Spark shuffle前先理解标准的mapreduce编程模型中使用的shuffle原理,也就是Hadoop中的MapReduce计算框架。

在mapreduce中默认每一个输入到reducer中的数据都根据key已经排好序了,系统将map端的输出进行排好序,reducer端拉取到数据这一过程就是shuffle。

Read more »

Spark编程模型就是RDD(Resilient distributed dataset)弹性分布式数据集,他是MapReduce编程模型的拓展和延伸,但是他解决了MapReduce的痛点,也就是计算任务的结果如何进行高效的共享。

Spark使用内存计算的模式以及类似与Mapreduce的模型,使得大数据的并行计算得到了提升。而Spark基于RDD模型也同样实现了多类模型计算,如迭代计算、交互式sql、流式数据计算等。

Read more »