摘要:
之所以对spark shell的内部实现产生兴趣全部缘于好奇代码的编译加载过程,scala是需要编译才能执行的语言,但提供的scala repl可以实现代码的实时交互式执行,这是为什么呢?
既然scala已经提供了repl,为什么spark还要自己单独搞一套spark repl,这其中的缘由到底何在?
显然,这些都是问题,要解开这些谜团,只有再次开启一段源码分析之旅了。 阅读全文
摘要:
本文就standalone部署方式下的容错性问题做比较细致的分析,主要回答standalone部署方式下的包含哪些主要节点,当某一类节点出现问题时,系统是如何处理的。
组成cluster的不同节点,启动时有没有固定的顺序,为什么是这样的顺序,针对这些问题,本文会做一个详尽的分析。 阅读全文
摘要:
图的并行化处理一直是一个非常热门的话题,这里头的重点有两个,一是如何将图的算法并行化,二是找到一个合适的并行化处理框架。Spark作为一个非常优秀的并行处理框架,将一些并行化的算法移到其上面就成了一个很自然的事情。
Graphx是一些常见图算法在Spark上的并行化实现,同时提供了丰富的API接口。本文就Graphx的代码架构及pagerank在graphx中的具体实现做一个初步的学习。 阅读全文
摘要:
在新近发布的spark 1.0中新加了sql的模块,更为引人注意的是对hive中的hiveql也提供了良好的支持,作为一个源码分析控,了解一下spark是如何完成对hql的支持是一件非常有趣的事情。 阅读全文