在人工智能时代,不论是否从事大数据开发,掌握大数据的原理和架构早已成为每个工程师的技能。本书结合作者多年大数据开发、应用的经验,深入浅出地阐述大数据的完整知识体系,帮助读者从不同视角找到大数据方向的突破口,真正从普通开发者晋升为拥有大数据思维并能解决复杂问题的技术专家。
本书一共分为7章,分别是大数据的前世今生与应用场景、Hadoop大数据原理与架构、大数据生态体系主要产品原理与架构、大数据开发实践、大数据平台与系统集成、大数据分析与运营、大数据算法与机器学习。
本书既可作为初学者了解大数据技术的入门指南,也可作为有一定经验的工程师深入理解大数据思维的有益参考。
为什么说每个软件工程师都应该懂大数据
2012年的时候,我从阿里巴巴跳槽到Intel做大数据开发。当时很多人不理解,我为什么会从如日中天的互联网公司跳槽到传统的IT公司。
我是这样考虑的:软件编程技术出现已经半个多世纪了,其核心价值就是把现实世界的业务操作搬到计算机上,通过计算机软件和网络进行业务和数据处理。我们常见的软件系统,不管是电子商务还是库存管理,不管是搜索引擎还是收银终端,都是如此。这一点价值巨大,可以成百上千倍地提高我们的生活和工作效率。
时至今日,能用计算机软件提高效率的地方几乎已经被全部发掘过了,计算机软件成为人们日常生活的品,人们已经习惯了计算机软件的存在。在这种情况下,如果想让软件再成百上千倍地提高我们的生活和工作效率,使用以前的那套分析用户需求和业务场景,进行软件设计和开发的做法显然是不可能的了。
那如何走出这个困局呢?我觉得,要想让计算机软件(包括互联网应用)继续提高我们的生活工作效率,就必须发掘出用户自己都没有发现的需求,必须洞悉用户自己都不了解的自己。
计算机软件不应该再像以前那样,等用户输入操作,然后根据编写好的逻辑执行用户的操作,而是应该能够预测用户的期望,在用户还没想好要做什么的情况下,主动提供操作建议和选项,提醒用户应该做什么。
这听起来很科幻,但实际上已经出现了,那就是大数据技术和机器学习技术,也就是我们都耳熟能详的人工智能技术。
现在回过头来看,我当时的判断是正确的。就在我加入Intel从事Hadoop开源软件开发的第二年,也就是2013年,大数据技术开始火热起来,从BAT到传统的商业公司,纷纷在自己的软件系统中大规模使用大数据技术,有的公司甚至称自己为大数据公司,而2013年后来也被称为大数据元年。
又过了3年,也就是2016年,Google的AlphaGo横空出世,让我们见识到了大数据 机器学习的巨大威力。
所以,我同意这样一种说法:在未来,软件开发将是面向AI编程,软件的核心业务逻辑和价值将围绕机器学习的结果(也就是AI)展开,软件工程师的工作就是考虑如何将机器学习的结果更好地呈现出来,如何更好地实现人和AI的交互。
我曾经跟一个同学讨论这个观点,他认同面向AI编程,但是他认为:这并不意味着我一定要懂AI,也不一定要懂大数据和机器学习,我只要懂业务,理解机器学习算出的结果就可以了。
真的是这样吗?只需要懂业务就能在面向AI编程的时代胜任软件开发的工作吗?
在阿西莫夫的科幻经典巨作《银河帝国:基地》中,描述了一个场景。
在银河系,随着战争的蔓延,很多星球的科技逐渐退步,到后来,他们虽然还有核电站等高科技产品,但是已经不知道它们是如何运作的了。而在银河系的边缘,有一颗小星球,在大战爆发前从银河系各处转移了大量的科技文献,这颗小星球没有加入战争,并将科学技术一直传承了下去。
后来,当其他星球的科技产品出现问题的时候,就会向这颗小星球求援,小星球会派工程师前去维修。但是,他们并不管工程师叫工程师,而是叫僧侣;也不管核电站叫核电站,而是叫圣殿;维修也不叫维修,而是叫祈祷。他们的说法是:因为这颗星球上的人做了不该做的事,比如发动战争、破坏环境等,触怒了神,所以神归罪下来,让他们失去能源,如果想恢复能源,就必须纠正自己的错误行为并向神祈祷赎罪。所以,当工程师进入核电站维修的时候,整个星球的人都跪下祈祷,当电力恢复的时候,大家纷纷称颂神的伟大。
你看,科学和宗教并不是互斥的,科学也可以成为宗教,当人们面对自己不懂的东西的时候,会倾向于用宗教的原理去解释。
如果未来是面向AI编程的,希望软件工程师不要把AI当作什么的东西。当机器学习结果出现问题的时候,我们既不要陷入某种不可知的玄学之中,也不要无谓地抱怨什么人工智障,而是应该积极参与到问题的讨论、分析和解决中去。这也是我的观点,即使自己不做与大数据和机器学习相关的开发,每个程序员也应该懂大数据和机器学习。
将来,数据会逐渐成为公司的核心资产和主要竞争力,公司的业务展开和产品进化也会朝着如何利用好数据价值的方向发展。如果你不懂大数据和机器学习,可能连基本的产品逻辑和商业意图都搞不清楚。如果只懂编程,那么你的生存空间会越来越窄,发展也会处处受限。
如果说大数据技术和应用是一个技术的殿堂,那么希望本书不仅可以带你找到进入大数据殿堂的钥匙,也能透视殿堂里的结构、装饰、家具,告诉你为什么用这些元素可以构建恢弘的殿堂,以及如何更好地利用这个殿堂的空间与设施,而不是让你进入殿堂看到一张床就舒服地躺下,错失了更美的风景。
学习大数据好的时间是十年前,其次就是现在!