本书中所使用到的测试数据、代码和安装包放在百度盘提供 下载 ,地址为https://pan.baidu.com/s/1o8ydtKA 密码:imaa

另外在百度盘提供本书附录  下载 ,地址为http://pan.baidu.com/s/1o7Busye 密码:shdf

为什么要写这本书

在过去的十几年里,由于计算机普遍应用和互联网的普及数据呈现了爆发式增长,在这个背景下Doug Cutting受到谷歌两篇论文(GFS和MapReduce)的启发下开发Nutch项目, 2006年Hadoop脱离了Nutch,成为Apache的顶级项目,带动了大数据发展新十年。在这段时间中,大数据开源产品如雨后春笋层出不穷,特别是2009年由加州大学伯克利分校AMP实验室开发的Spark,它以内存迭代计算的高效和各组件所形成一栈式解决平台成为这些产品的翘楚。

Spark在2013年6月成为Apache孵化项目,8个月后成为其顶级项目,在2014年5月份发布了1.0版本,在2016年7月份正式发布了2.0版本,在这个过程中Spark社区不断壮大,成为了最为活跃的大数据社区之一。作为大数据处理的“利器”,Spark在发展过程中不断地演进,在各个版本存在较大的差异,市面上关于介绍的Spark已经不少,但是这些书基于Spark版本稍显陈旧,另外在介绍Spark的时候未能把原理、代码和实例相结合,基于这个情况笔者便有了写一本在剖析Spark原理的同时结合实际实例,从而让读者能够更加深入理解和掌握Spark。

在本书中先对Spark的生态圈进行了介绍,讲述了Spark的发展历程,同时也介绍Spark实战环境的搭建,接下来从Spark的编程模型、作业执行、存储原理和运行架构等方面讲解了Spark内部核心原理,最后对Spark的各组件进行详细介绍,这些组件包括了Spark SQL的即席查询、Spark Streaming的实时流处理应用、MLbase/MLlib的机器学习、GraphX的图处理、SparkR的数学计算和Alluxio的分布式内存文件系统等。

读者对象

(1) 大数据爱好者

随着大数据时代的来临,无论传统行业、IT行业以及互联网等行业都将涉及到大数据技术,本书能够帮助这些行业的大数据爱好者了解Spark生态圈和发展演进趋势。通过本书可以了解到Spark特点和使用的场景,如果希望继续深入学习Spark知识,该书也是很好的入门选择。

(2) Spark开发人员

如果要进行Spark应用的开发,仅仅掌握Spark基本使用方法是不够的,还需深入了解Spark的设计原理、架构和运行机制。在本书中将深入浅出地讲解Spark的编程模型、作业运行机制、存储原理和运行架构等内容,通过这些内容的学习,可以编写出更加高效的应用程序。

(3) Spark运维人员

作为一名Spark运维人员,适当了解Spark的设计原理、架构和运行机制对于运维工作十分有帮助。通过该书的学习,不仅能够更快地定位并排除故障,而且还能够对Spark运行进行调优,让Spark运行更加稳定和快速。

(4) 数据科学家和算法研究

随着大数据技术的发展,实时流计算、机器学习、图计算等领域成为较热的研究方向,由于Spark有着较为成熟的生态圈,能够一栈式解决类似场景的问题。这些研究人员可以通过本书加深对Spark的原理和应用场景的理解,能够更好地利用Spark各个组件进行数据计算和算法实现。

内容速览

本书分为三个部分,共计12章。

第一部分为基础篇(第1~2章),介绍了Spark诞生的背景、演进历程,介绍了Spark生态圈的组成,并详细地介绍如何搭建Spark实战环境,通过该环境不仅可以阅读Spark源代码,而且可以开发Spark应用程序。

第二部分为核心篇(第3~6章),讲解了Spark的编程模型、核心原理、存储原理和运行架构,在核心原理中对Spark通信机制、作业执行原理、调度算法、容错和监控管理等进行了深入的分析,在分析原理和代码的同时结合实例进行演示。

第三部分为组件篇(第7~12章),介绍了Spark的各个组件,包括了Spark SQL的即席查询、Spark Streaming的实时流处理应用、MLbase/MLlib的机器学习、GraphX的图处理、SparkR的数学计算和Alluxio的分布式内存文件系统等。

另外本书后面还包括5个附录:附录A为编译安装Hadoop,附录B为安装MySql数据库,附录C为编译安装Hive,附录D为安装ZooKeeper,附录E为安装Kafka。由于该书篇幅的限制,这些内容在作者的博客可以下载。

勘误和支持

由于笔者的水平有限,加之编写时间跨度较长,同时Spark演进较快,在编写此书的过程中难免会出现错误或者不准确的地方,恳请读者批评指正。如果本书存有错误,或者您有Spark的内容需要探讨,可以发送邮件到jan98341@qq.com进行联系,期待能够得到大家的反馈。

致谢

感谢中油瑞飞公司,让我接触到大数据的世界,并工作的过程中深入了解Spark,感谢吴建平、于鹏、李新宅、祝军、张文逵、马君博士、卢文君等领导同事,在本书编写中提供无私的帮助和宝贵的建议。

感谢京东商城的付彩宝、沈晓凯对我工作和该书的支持,感谢付彩宝在繁忙的工作为本书写推荐,感谢京东数据挖掘架构师何云龙为我作序,感谢大数据平台部的周龙波对该书提出了宝贵意见。

感谢EMC常雷博士为本书审稿并写推荐。

感谢Alluxio CEO的李浩源博士对本书的支持,感谢范斌在非常忙的工作中,抽出时间给Alluxio章节进行了审稿并提供了很好的建议。

感谢电子出版社的安娜编辑,正式由于她耐心和支持才让本书的得以出版。

感谢我的家人对自己的支持和理解,特别是在写书过程中老婆又添猴宝宝,让自己拥有一对健康可爱的儿女,这些给自己莫大的动力,让自己的努力更加有意义。

谨以此书先给我亲爱的家人,你们是我努力的源泉。

《图解Spark:核心技术与案例实战》介绍及书附资源的更多相关文章

  1. 图解CSS3核心技术与案例实战(1)

    前言: 我买了一本<图解CSS3核心技术与案例实战>大漠写的,为了提高自己的自觉性呢,抓紧看书,把读书笔记放在这上面,跟大家一起分享,也为督促自己完成读书计划. 文末有微信公众号,感谢你的 ...

  2. [已读]图解CSS3核心技术与案例实战

    买的时候犹豫了好久,也征询了下几个前端朋友.我一直蛮怕买华章的书,好在这本内容很不错,买得值了. 大漠的css功底很深厚,这本书也很厚= =,读完之后对css圆角以及background-origin ...

  3. 《图解 CSS3 核心技术与案例实战》

    第一章 解开 CSS3 的面纱 使用 CSS3 的好处 减少开发和维护成本:如传统实现圆角边框需要绘图.切图才能完成,而使用 css 可以直接完成 提高页面性能 渐进增强(Progressive En ...

  4. 《图解Spark:核心技术与案例实战》作者经验谈

    1,看您有维护博客,还利用业余时间著书,在技术输出.自我提升以及本职工作的时间利用上您有没有什么心得和大家分享?(也可以包含一些您写书的小故事.)回答:在工作之余能够写博客.著书主要对技术的坚持和热爱 ...

  5. 《图解CSS3:核心技术与案例实战》

    <图解CSS3:核心技术与案例实战> 基本信息 作者: 大漠 丛书名: Web开发技术丛书 出版社:机械工业出版社 ISBN:9787111469209 上架时间:2014-7-2 出版日 ...

  6. Spark Streaming updateStateByKey案例实战和内幕源码解密

    本节课程主要分二个部分: 一.Spark Streaming updateStateByKey案例实战二.Spark Streaming updateStateByKey源码解密 第一部分: upda ...

  7. (升级版)Spark从入门到精通(Scala编程、案例实战、高级特性、Spark内核源码剖析、Hadoop高端)

    本课程主要讲解目前大数据领域最热门.最火爆.最有前景的技术——Spark.在本课程中,会从浅入深,基于大量案例实战,深度剖析和讲解Spark,并且会包含完全从企业真实复杂业务需求中抽取出的案例实战.课 ...

  8. spark 随机森林算法案例实战

    随机森林算法 由多个决策树构成的森林,算法分类结果由这些决策树投票得到,决策树在生成的过程当中分别在行方向和列方向上添加随机过程,行方向上构建决策树时采用放回抽样(bootstraping)得到训练数 ...

  9. Spark Streaming 进阶与案例实战

    Spark Streaming 进阶与案例实战 1.带状态的算子: UpdateStateByKey 2.实战:计算到目前位置累积出现的单词个数写入到MySql中 1.create table CRE ...

随机推荐

  1. 关于Hibernate的Dialect

    org.hibernate HibernateException Dialect must be explicitly set :***  使用Hibernate,有时候会遇到类似上面的异常.  使用 ...

  2. DES原理

    1.DES的描述 为了建立适用于计算机系统的商用密码,美国商业部的国家标准局NBS于1973年5月和1974年8月两次发布通告,向社会征求密码算法.在征得的算法中,由IBM公司提出的算法lucifer ...

  3. C# WinForm 导出导入Excel/Doc 完整实例教程[使用Aspose.Cells.dll]

    [csharp] view plain copy 1.添加引用: Aspose.Cells.dll(我们就叫工具包吧,可以从网上下载.关于它的操作我在“Aspose.Cells操作说明 中文版 下载 ...

  4. 什么是XA事务

    什么是XA事务 分布式事务处理是指一个事务可能涉及多个数据库操作分布式事务处理的关键是必须有一种方法可以知道事务在任何地方所做的所有动作,提交或回滚事务必须产生一致的结果(全部提交或全部回滚). XA ...

  5. ASP.NET安全

    ASP.NET 安全 概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 ...

  6. ASP.Net开发基础温故知新学习笔记

    申明:本文是学习2014版ASP.Net视频教程的学习笔记,仅供本人复习之用,也没有发布到博客园首页. 一.一般处理程序基础 (1)表单提交注意点: ①GET通过URL,POST通过报文体: ②需在H ...

  7. JSON and Microsoft Technologies(翻译)

    本文翻译CodeProject(链接)上的一篇文章,文章对JSON的概念以及它在微软一些技术中的应用起到了非常好的扫盲作用,总结得非常好,适合初学者. 目录 介绍 什么是JavaScript对象? 实 ...

  8. 我为什么很烦在DB服务器上安装杀毒软件

    常见的数据库连接问题无外乎是在数据库服务器本地可以连接SQL Server,但通过其他服务器就不可以连接.但这次我却碰到了相反的情况,在服务器本地无法通过IP/实例名连接,但从其他服务器却可以.而且每 ...

  9. YY一下微信线下支付的场景

    在上一篇文章里面提到了 <跨行清算的实现原理>,这次来分析一下线下支付的场景和流程. 今天看到一篇文章:http://www.huxiu.com/article/23248/1.html? ...

  10. Step by step 如何创建一个新森林

    原创地址:http://www.cnblogs.com/jfzhu/p/4006118.html 转载请注明出处 创建一个新森林就是在一台计算机上安装AD DS,并将这台计算机提升为域控制器. 演示环 ...