不知道大家在工作中,有没有遇到过这类数据科学同学:他们无论做什么项目,好像都能够抓到问题的本质,做得「游刃有余」。
我也经常碰到这类数据同学,每次我向他们请教究竟是如何做到的,他们给出的答案都少不了这一个:读经典论文。确实,关于学习和处理问题的方式,他们和很多普通数据人不太一样。比如,在面对一个异常复杂的系统时,我们不可避免会遇到一些问题,但大部分人的解决方式很简单:去群里问别人有没有可靠的解决方案,或是在技术社区搜索答案。但很少人会想到看论文,去挖整个系统的「来龙去脉」。一是原版论文都是英文,理解起来太费劲;二是学习资料良莠不齐,很难靠自己梳理出一条清晰的学习路径,去深入了解并建立数据系统的底层知识体系。但要想成为真正的优秀数据工程师,把技术研究精深,我认为「读经典论文」是必不可少的,也是最快的学习方式。因为最核心的东西,就在其中,一旦看懂,就可以「触类旁通」,从使用到开发,很多细节通过脑补就可以猜个八九不离十。而且,在如今的互联网时代,到处可见「分布式系统」,尤其是「大数据」时代到来之后,各种优秀的分布式系统层出不穷,但它们实现的本质,都源于那几篇经典的研究和论文。其中对分布式系统工程实践领域,贡献最大的公司是 Google,Google 的基础设施有三驾马车,分别是《Google File System》、《Google MapReduce》以及《Google BigTable》。Google 发表了这三篇论文以后,基本上「奠定」了业界大规模分布式存储系统的理论基础。现如今非常流行的 HDFS、MapReduce、Hbase,以及国产数据库软件 TiDB、OceanBase 都是参考这几篇经典论文设计的,可见这些基础原理的重要性。会用某个开源框架,是懂了「基础招式」。看开源框架的源码,是「武功秘籍」,能让你更高效地 debug。那研读论文,就是真正的「内功心法」。武功招式可能每年都在更新迭代,但内功心法却不仅只在今时今日有用,更能让你一辈子受益。我也能理解,在大部分数据人的工作中,都忙着实现业务功能。90% 的工作是重复的逻辑堆砌,10% 涉及到底层、架构或核心算法的东西,而实际上,正是这 10%,决定了你和顶级数据工程师的差距。网上这类的资料其实并不多,最近看到极客时间专门做了个专栏《大数据经典论文解读》,我第一时间买来看了看,看目录发现内容太全了,基本覆盖了读论文的痛点问题。这个专栏的作者是徐文浩,简单介绍下,他是 bothub.ai 创始人,一个创业的程序员,正在工业界的实战经验非常丰富。写过各种大型企业软件,从零开始搭建支撑每天百亿流量的广告算法系统,提升了十倍以上的广告收入和 ROI。可能更出名的,是他的另一个爆款专栏《深入浅出计算机组成原理》,我 2 刷过了。只能说「太会讲了」,把底层知识讲得清晰透彻,还吸引着读者深挖下去,功力可见一斑。目前有超过 25000 人订阅,也是出于对他的认可,所以上线时,毫不犹豫就买了他的新课。这个论文解读课,总结来说,就是让你从经典论文入手,提升问题解决能力。专栏精进了 10 余篇数据工程师必读的经典论文,给出一条大数据系统底层知识学习路径,还有工业级数据系统迭代方案。你不仅获得一些大数据的知识,更能从系统架构、计算机底层原理层面,获得深入而长久的成长。我一直认为,学习是自我驱动,要学会自己「找食物」,而不是「等着喂」。现在我把很靠谱的老师和学习方法,推荐给你,剩下的就看你自己了。除了老师是工业界大牛这个点外,专栏还有其他几个比较吸引我的地方:从最经典的 Google 三驾马车:GFS、MapReduce 和 Bigtable 这三篇「经典论文」开始讲起,帮你理解大数据系统面对的主要挑战,以及应对这些挑战的架构设计方法。进一步地,带你一起来看大数据系统依赖的分布式锁 Chubby、序列化和 RPC 方案 Thrift,让你能够将架构设计和计算机底层原理结合到一起,掌握好计算机科学的底层原理。前面我也提到过,我们面对的是异常复杂的系统,而徐文浩帮大家简化过了大数据论文「脉络关系」,让你在对某一篇论文感到困惑的时候,可以通过脉络图翻看它前后对应的论文,找到对应问题的来龙去脉,让你在研读大数据论文的时候,有一个清晰的方向。专栏一共 36 讲,手把手带你剖析论文「核心思想」,带大家深入体会「大型系统」瓶颈的完善过程,并给你真实、具体且独到的高手思路和经验观点。最终让大家能够得到的衍生性启发,「举一反三」的思路开拓,从而在平时工作中应用、改进和创新。说了这么多,来看目录,我相信它会成为一个经典专栏。最后,我想和你分享一句话:认真研读「经典论文」,是每一个数据人的成年礼,希望你可以把握这次机会,一起共勉。点击阅读原文,记得输入优惠口令「lunwen888」,最低 59 元拿下。