《图解Spark:核心技术与案例实战》介绍及书附资源

摘要:
通过本书,您可以了解Spark的功能和使用场景。如果你想继续了解更多关于Spark的信息,这本书也是一个很好的介绍。作为Spark运维人员,正确理解Spark的设计原理、架构和运行机制对运维工作非常有帮助。通过本书的学习,您不仅可以更快地定位和排除故障,还可以优化Spark的操作,使其更加稳定和快速。这些研究人员可以通过本书加深对Spark原理和应用场景的理解,并可以更好地使用Spark的各种组件进行数据计算和算法实现。

本书中所使用到的测试数据、代码、安装包及本书附录放在百度盘提供下载 ,链接: https://pan.baidu.com/s/1LP6PKGzIWQzF8e-dTklxkg 提取码: it28  

为什么要写这本书

在过去的十几年里,由于计算机普遍应用和互联网的普及数据呈现了爆发式增长,在这个背景下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:核心技术与案例实战》介绍及书附资源》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle自定义函数利用Python进行数据分析-Pandas(第五部分-数据规整:聚合、合并和重塑)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【SQL server初级】数据库性能优化二:数据库表优化

数据库优化包含以下三部分,数据库自身的优化,数据库表优化,程序操作优化.此文为第二部分   数据库性能优化二:数据库表优化   优化①:设计规范化表,消除数据冗余   数据库范式是确保数据库结构合理,满足各种查询需要、避免数据库操作异常的数据库设计方式。满足范式要求的表,称为规范化表,范式产生于20世纪70年代初,一般表设计满足前三范式就可以,在这里简单...

sparkSQL以JDBC为数据源

一、环境准备 安装oracle后,创建测试表、数据: createtabletest( usernamevarchar2(32)primarykey, passwordvarchar2(32) ); insertintotestvalues('John','1234'); insertintotestvalues('Mike'...

.NET 百万级 大数据插入、更新 ,支持多种数据库

功能介绍 (需要版本5.0.45) 大数据操作ORM性能瓶颈在实体转换上面,并且不能使用常规的Sql去实现 当列越多转换越慢,SqlSugar将转换性能做到极致,并且采用数据库最佳API 操作数据库达到极限性能 功能用法 BulkCopy性能远强于现有市场的 ORM框架,比 EFCore Efcore.Bulkextension快30% BulkUpdat...

node 爬虫 --- 将爬取到的数据,保存到 mysql 数据库中

步骤一:安装必要模块 (1)cheerio模块 ,一个类似jQuery的选择器模块,分析HTML利器。 (2)request模块,让http请求变的更加简单 (3)mysql模块,node连接mysql的模块 npm i cheerio request mysql -D 步骤二:分析爬取网址的内容 目标URL: http://zzk.cnblogs.com...

前端本地存储后端传来的json格式数据

有些时候需要在A页面进行请求发送,但是在B界面对这些数据进行渲染 在这种情况下就需要一个页面之间的通讯,也就是暂时的本地存储 但是无论是loca还是session还是cookie都是存储的字符串类型 我们需要通过一些方法对返回的数据进行处理 JSON.parse()和JSON.stringify()方法 var jsonData = {'name': '张...

python pandas 对带时间序列的数据进行重采样处理

今天老板要处理一批带有时间序列的数据,源数据为1秒钟一行的csv数据,处理之后变成15分钟一行的数据。 源数据示例如下: time B00 B01 ... RollMean2.5RollMean10 2018-05-31 09:44:39 15.212 5.071 .....