从Physical plan到Map-Reduce Plan
注:因为我们重点关注的是Pig On Spark针对RDD的执行计划,所以Pig物理执行计划之后的后端参考意义不大,这些部分主要分析流程,忽略实现细节。
入口类MRCompiler,MRCompilier按照拓扑顺序遍历物理执行计划中的节点,将其转换为MROperator,每个MROperator都代表一个map-reduce
j...
分类:
其他好文 时间:
2014-05-10 08:46:07
阅读次数:
366
slave的几个类结构: Master_info:用于IO线程的参数,包括连接master实例的信息。
Relay_log_info:用于sql线程,表示relay log相关的信息。
Slave_worker:继承Relay_log_info,包括一个job队列,用于并行的worker线程。...
分类:
数据库 时间:
2014-05-08 19:28:57
阅读次数:
369
nginx的配置:正常运行的必备配置:1、userusername[groupname];指定运行worker进程的用户和组2、pid/path/to/pidfile_namenginx的pid文件3、worker_rlimit_nofile#;一个worker进程所能够打开的最大文件句柄数;4、worker_rlimit_sigpending#;设定每个用户能够发往worker进程的..
分类:
其他好文 时间:
2014-05-07 22:23:03
阅读次数:
439
ExecutorService:
它也是一个接口,它扩展自Executor接口,Executor接口更像一个抽象的命令模式,仅有一个方法:execute(runnable);Executor接口简单,但是很重要,重要在这种设计的模式上。。Java5以后,通过Executor来启动线程比用Thread的start()更好。在新特征中,可以很容易控制线程的启动、执行和关闭过程,还可以很容易使用线...
分类:
移动开发 时间:
2014-05-07 15:43:59
阅读次数:
438
本文是Pig系统分析系列中的最后一篇了,主要讨论如何扩展Pig功能,不仅介绍Pig本身提供的UDFs扩展机制,还从架构上探讨Pig扩展可能性。
补充说明:前两天同事发现twitter推动的Pig On Spark项目:Spork,准备研究下。
UDFs
通过UDFs(用户自定义函数),可以自定义数据处理方法,扩展Pig功能。实际上,UDFS除了使用之前需要register/define外,和...
分类:
其他好文 时间:
2014-05-07 05:10:44
阅读次数:
567
The general mechanism for executing tasks is
the executor service. If you think in terms of tasks and let an executor service
execute them for you, yo...
分类:
编程语言 时间:
2014-05-05 23:32:44
阅读次数:
389
从WordCount开始分析
编写一个例子程序
编写一个从HDFS中读取并计算wordcount的例子程序:
packageorg.apache.spark.examples
importorg.apache.spark.SparkContext
importorg.apache.spark.SparkContext._
objectWordCount{
defm...
分类:
其他好文 时间:
2014-05-05 13:10:34
阅读次数:
463
Spark中的Scheduler
scheduler分成两个类型,一个是TaskScheduler与其实现,一个是DAGScheduler。
TaskScheduler:主要负责各stage中传入的task的执行与调度。
DAGScheduler:主要负责对JOB中的各种依赖进行解析,根据RDD的依赖生成stage并通知TaskScheduler执行。
实例生成
TaskSchedule...
分类:
其他好文 时间:
2014-05-04 09:08:02
阅读次数:
379
用wait notifyAll来实现生产者与消费者模式
用BlockingDeque来实现生产者与消费者模式
用Executor来实现生产者与消费者模式...
分类:
编程语言 时间:
2014-05-03 16:22:26
阅读次数:
351
RDD的依赖关系
Rdd之间的依赖关系通过rdd中的getDependencies来进行表示,
在提交job后,会通过在DAGShuduler.submitStage-->getMissingParentStages
privatedefgetMissingParentStages(stage:
Stage): List[Stage] = {
valmissing
=newHash...
分类:
其他好文 时间:
2014-05-03 15:56:22
阅读次数:
282