从Physical plan到Map-Reduce Plan
注:因为我们重点关注的是Pig On Spark针对RDD的执行计划,所以Pig物理执行计划之后的后端参考意义不大,这些部分主要分析流程,忽略实现细节。
入口类MRCompiler,MRCompilier按照拓扑顺序遍历物理执行计划中的节点,将其转换为MROperator,每个MROperator都代表一个map-reduce
j...
分类:
其他好文 时间:
2014-05-10 08:46:07
阅读次数:
366
Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala
的 Actor 模型应用。Actor模型并非什么新鲜事物,它由Carl
Hewitt于上世纪70年代早期提出,目的是为了解决分布式编程中一系列的编程问题。其特点如下:系统中的所有事物都可以扮演一个A...
分类:
其他好文 时间:
2014-05-08 12:32:32
阅读次数:
392
引言
工作之余参加了Coursera的公开课Functional Programming Principles in Scala,这个课是第三次开讲了,讲师仍然是Scala的祖师爷Martin Odersky先生。个人认为学习公开课最大的阻碍在于有些老师的口音实在是……不忍直视,比如最早在Coursera开授公开课的Andrew Ng(当然他现在是小老板了)。幸好Martin大爷的英文口音不是很...
分类:
其他好文 时间:
2014-05-08 05:58:43
阅读次数:
405
本文通过跟代码的方式,分析从输入一批Pig-latin到输出物理执行计划(与launcher引擎有关,一般是MR执行计划,也可以是Spark RDD的执行算子)的整体流程。
不会具体涉及AST如何解析、如何使用了Anltr、逻辑执行计划如何映射、逻辑执行计划如何优化、MR执行计划如何切分为MR Job,而是从输入一批Pig DSL到待执行的真正执行计划的关键变化步骤(方法和类)。...
分类:
其他好文 时间:
2014-05-08 04:00:42
阅读次数:
407
本文是Pig系统分析系列中的最后一篇了,主要讨论如何扩展Pig功能,不仅介绍Pig本身提供的UDFs扩展机制,还从架构上探讨Pig扩展可能性。
补充说明:前两天同事发现twitter推动的Pig On Spark项目:Spork,准备研究下。
UDFs
通过UDFs(用户自定义函数),可以自定义数据处理方法,扩展Pig功能。实际上,UDFS除了使用之前需要register/define外,和...
分类:
其他好文 时间:
2014-05-07 05:10:44
阅读次数:
567
最近在学scala语言,scala代码如下:
import scala.collection.JavaConversions._
object Solution {
def solution(A: Array[Int]): Int = {
// write your code in Scala 2.10
// sort
scala.uti...
分类:
其他好文 时间:
2014-05-07 04:20:38
阅读次数:
352
最近在学scala语言,scala代码如下:
import scala.collection.JavaConversions._
import scala.util.control.Breaks._
object Solution {
def solution(A: Array[Int]): Int = {
// write your code in Scala 2.10...
分类:
其他好文 时间:
2014-05-04 09:42:56
阅读次数:
372
最近在学scala语言,scala代码如下:
import scala.collection.JavaConversions._
object Solution {
def solution(A: Array[Int]): Int = {
// write your code in Scala 2.10
// using quick sort to so...
分类:
其他好文 时间:
2014-05-04 09:22:37
阅读次数:
341
Spark中的Scheduler
scheduler分成两个类型,一个是TaskScheduler与其实现,一个是DAGScheduler。
TaskScheduler:主要负责各stage中传入的task的执行与调度。
DAGScheduler:主要负责对JOB中的各种依赖进行解析,根据RDD的依赖生成stage并通知TaskScheduler执行。
实例生成
TaskSchedule...
分类:
其他好文 时间:
2014-05-04 09:08:02
阅读次数:
379
最近在学scala语言,scala代码如下:
import scala.collection.JavaConversions._
object Solution {
def solution(A: Int, B: Int, K: Int): Int = {
// write your code in Scala 2.10
var cnt: Int = 0...
分类:
其他好文 时间:
2014-05-04 09:06:08
阅读次数:
307