看了许利杰老师的这本书,老师在理论层面讲的比较清楚了,读起来也容易理解,但看完但总是感觉还差点什么。于是动手起了个项目,定了个小目标:实现 RDD 的逻辑。
目前 RDD 的 MVP 已经完成,最大的收获是彻底理解了几个费解的问题:
1 ,Stage 的切分原理,为什么要这么做
2 ,Shuffle 是如何实现的,write/read 是如何衔接
3 ,Partition 为何如此的重要
有兴趣的同学一起 github 交个朋友吧,项目地址 https://github.com/changzhiwin/spark-core-analysis ,特点:
1 ,聚焦在 RDD 层面(这是 Spark 的根本)
2 ,入门明确,代码量小(保留逻辑),容易上手运行(运行起来,理解代码就容易了)
