spark源码导读一

经常有球友问,我分享了源码视频,那么该如何下手?

实际上,正常情况下,单纯爱好去看源码的情况不多,阅读源码无非就一下几种情况:

1,业务需求,现有框架满足不了项目需要,需要对源码的一部分进行修改或者叫做二次开发,需要阅读部分源码。那么这个针对性就很强了,修改不符合需求的部分。

2,寻求bug解决思路。比如,最近用flink,jsontablesource这种方式,一旦出现json格式非标,flink就会挂掉,由于flink开启checkpoint和savepoint,实现仅一次处理,那么就会导致flink拉不起来。哈哈一下,这里浪尖提了一个issue,然后这边定制改了一下。这种阅读针对性很强,就是为了解决问题。

3,追求真相,寻求调优。这种也是很有针对性去看的,比如spark的shuffle调优,网上文章一大堆,但是真的去按照他们文章推荐去调优了发现大部分不奏效。实际上,spark更新换代快,文章很容易老旧,这种情况下,就需要官网和源码,只有了解了真相才能尽可能做到最优。那么可能会有疑问就是,更新换代这么快,啥时候是阅读结束,只能告诉你,阅读源码是一个长期工程。但是完整的阅读完一个版本源码,后面就简单了,不信可以试试。

又有人问,浪院长,这个源码阅读有什么先后顺序吗?

答,从上面表述来看,可以认为没有什么先后顺序。

但是,假如你就想着完整的读一下比如spark的源码,那么这时候做法就有章可循了。

就是,按照自己在使用中对spark的运行原理的理解,去阅读源码核实自己的理解。

只有这样,带着疑问去读,你才有可能坚持下去而且学到很多,每一次揭秘都是成就感满满。

文章标题,说了是spark源码导读第一步,那么熟悉源码的你可以在没任何参考的情况下画出spark 的rpc的结构图吗?

原文发布于微信公众号 - Spark学习技巧(bigdatatip)

原文发表时间:2018-11-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据和云

“月底难过”- 都是统计信息惹的祸

作者简介 ? 案例说明 某大型电商公司数据仓库系统经常出现在月底运行缓慢的情况,但在平时系统运行却非常正常。这是因为月底往往有月报等大批量作业运行,而就在这个时...

30060
来自专栏向治洪

Android 绿色应用公约

Android 绿色应用公约(草案) 宗旨 这是一项旨在推动Android生态中的优秀应用共同维护一个更加良性的『设备体验』而发起的开放公约。 设备体验:影响效...

32560
来自专栏灯塔大数据

荐读|爬虫还在用Python?我与Node.js不得不说的故事

深夜闲来无事,默默的打开github,在搜索框中填入了”Stars:>1”,本想着依旧可以在第一页看到Spark的身影,结果第一个映入眼帘的是这个: ? 快速...

1.6K50
来自专栏Seebug漏洞平台

被忽视的攻击面:Python package 钓鱼

2017年6月2日,Paper 收录了一篇 fate0 的《Package 钓鱼》 文章,该文章讲述了作者在 PyPI 上投放恶意的 Python 包钓鱼的过...

436100
来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–应付账款(158)-9 F110使用自动付款程序过账付款

4.10 F110使用自动付款程序过账付款 预付款,贷项凭证和发票之间的差异将被付款程序自动过账。 您可以用经典付款媒介程序或付款媒介工作台来产生付款媒介。在下...

443120
来自专栏coding

给你一个完整高效的linux系统

50330
来自专栏程序人生

[技术产品] 用node-webkit做桌面应用

node-webkit是两周前我才刚刚认识的桌面开发利器。那天程序君写了篇关于github atom的文章,中间有段文字做了大胆的猜测:「这就是Atom最大的亮...

48190
来自专栏大数据文摘

爬虫还在用Python?我与Node.js不得不说的故事

4.5K40
来自专栏新智元

微软谷歌再曝 CPU 新漏洞,Intel、AMD、Arm 全部遭殃

17520
来自专栏ytkah

微信 5.3 for iPhone已放出 微信iphone版更新下载

  就在几个小时前,微信发布了更新,本次只放出微信 5.3 for iPhone,距离发布微信5.3内测版也就几天时间。和往常一样微信iphone版先发布,微信...

69460

扫码关注云+社区

领取腾讯云代金券