新書推薦:
《
异域回声——晚近海外汉学之文史互动研究
》
售價:NT$
500.0
《
世界文明中的作物迁徙:聚焦亚洲、中东和南美洲被忽视的本土农业文明
》
售價:NT$
454.0
《
无端欢喜
》
售價:NT$
347.0
《
股票大作手操盘术
》
售價:NT$
245.0
《
何以中国·何谓唐代:东欧亚帝国的兴亡与转型
》
售價:NT$
398.0
《
一间只属于自己的房间 女性主义先锋伍尔夫代表作 女性精神独立与经济独立的象征,做自己,比任何事都更重要
》
售價:NT$
203.0
《
泉舆日志 幻想世界宝石生物图鉴
》
售價:NT$
611.0
《
养育女孩 : 官方升级版
》
售價:NT$
230.0
|
編輯推薦: |
基于z新的Spark2.4.X版本,分为内核解密篇,商业案例篇,性能调优篇和Spark AI解密篇,共32章,学习过程中有任何疑问,可加入QQ群418110145,有专业人员答疑解惑。
|
內容簡介: |
本书基于 Spark 2.4.X版本,以 Spark商业案例实战和 Spark在生产环境下几乎所有类型的性能调优为核心,以 Spark内核解密为基石,对企业生产环境下的 Spark商业案例与性能调优抽丝剥茧地进行剖析。全书共分 4篇,内核解密篇基于 Spark源码,从一个实战案例入手,循序渐进地全面解析 Spark 2.4.X版本的新特性及 Spark内核源码;商业案例篇选取 Spark开发中*代表性的经典学习案例,在案例中综合介绍 Spark的大数据技术;性能调优篇覆盖 Spark在生产环境下的所有调优技术;Spark+AI解密篇讲解深度学习实践、 Spark+PyTorch案例实战、Spark+TensorFlow实战以及 Spark上的深度学习内核解密。 本书适合所有 Spark学习者和从业人员使用。对于有分布式计算框架应用经验的人员,本书也可作为 Spark高手修炼的参考用书。本书还适合作为高等院校的大数据课程教材。
|
關於作者: |
王家林,Apache Spark执牛耳者现工作于硅谷的AI实验室,专注于NLP框架超过20本Spark、Al、Android书籍作者Toastmasters International Division Director GRE博士入学考试连续两次满分获得者
段智华,就职于中国电信股份有限公司上海分公司,系统架构师,CSDN博客专家,专注于Spark大数据技术研发及推广,跟随Spark核心源码技术的发展,深入研究Spark 2.1.1版本及Spark 2.2.0版本的源码优化,对Spark大数据处理、机器学习等技术有丰富的实战经验和浓厚兴趣。
|
目錄:
|
第1篇 内核解密篇
第1章 电光石火间体验Spark 2.4 开发实战
1.1 通过RDD实战电影点评系统入门及源码阅读
1.1.1 Spark核心概念图解
1.1.2 通过RDD实战电影点评系统案例
1.2 通过DataFrame和DataSet实战电影点评系统
1.2.1 通过DataFrame实战电影点评系统案例
1.2.2 通过DataSet实战电影点评系统案例
1.3 Spark2.4 源码阅读环境搭建及源码阅读体验
第2章 Spark 2.4 技术及原理
2.1 Spark 2.4 综述
2.1.1 连续应用程序
2.1.2 新的API
2.2 Spark 2.4 Core
2.2.1 第二代Tungsten引擎
2.2.2 SparkSession
2.2.3 累加器API
2.3 Spark 2.4 SQL
2.3.1 Spark SQL
2.3.2 DataFrame和Dataset API
2.3.3 Timed Window
2.4 Spark 2.4 Streaming
2.4.1 Structured Streaming
2.4.2 增量输出模式
2.5 Spark 2.4 MLlib
2.5.1 基于DataFrame的Machine Learning API
2.5.2 R的分布式算法
2.6 Spark 2.4 GraphX
第3章 Spark的灵魂:RDD和DataSet
3.1 为什么说RDD和DataSet是Spark的灵魂
3.1.1 RDD的定义及五大特性剖析
3.1.2 DataSet的定义及内部机制剖析
3.2 RDD弹性特性7个方面解析
3.3 RDD依赖关系
3.3.1 窄依赖解析
3.3.2 宽依赖解析
3.4 解析Spark中的DAG逻辑视图
3.4.1 DAG生成的机制
3.4.2 DAG逻辑视图解析
3.5 RDD内部的计算机制
3.5.1 Task解析
3.5.2 计算过程深度解析
3.6 SparkRDD容错原理及其四大核心要点解析
3.6.1 Spark RDD容错原理
3.6.2 RDD容错的四大核心要点
3.7 SparkRDD中Runtime流程解析
3.7.1 Runtime架构图
3.7.2 生命周期
3.8 通过WordCount实战解析Spark RDD内部机制
3.8.1 Spark WordCount动手实践
3.8.2 解析RDD生成的内部机制
3.9 基于DataSet的代码如何转化为RDD
第4章 Spark Driver启动内幕剖析
4.1 Spark Driver Program剖析
4.1.1 Spark Driver Program
4.1.2 SparkContext深度剖析
4.1.3 SparkContext源码解析
4.2 DAGScheduler解析
4.2.1 DAG的定义
4.2.2 DAG的实例化
4.2.3 DAGScheduler划分Stage的原理
4.2.4 DAGScheduler划分Stage的具体算法
4.2.5 Stage内部Task获取位置的算法
4.3 TaskScheduler解析
4.3.1 TaskScheduler原理剖析
4.3.2 TaskScheduler源码解析
4.4 SchedulerBackend解析
4.4.1 SchedulerBackend原理剖析
4.4.2 SchedulerBackend源码解析
4.4.3 Spark程序的注册机制
……
第2篇 商业案例篇
第3篇 性能调优篇
第4篇 Spark AI解密篇
|
內容試閱:
|
2019年 4月,在美国旧金山举办的 Spark AI峰会提出,大数据和人工智能需要统一,人工智能应用需要大量的、不断更新的训练数据来构建先进的模型。到目前为止, Apache Spark是一个将大规模数据处理与机器学习和人工智能算法完美结合的引擎。
Apache Spark是大数据领域的通用计算平台。在 Full Stack思想的指导下, Spark中的 Spark SQL、Spark Streaming、MLLib、GraphX、R五大子框架和库之间可以无缝地共享数据和操作,这不仅形成了 Spark在当今大数据计算领域其他计算框架无可匹敌的优势,而且使其加速成为大数据处理中心的通用计算平台。
回顾 Spark的历史可以发现,在任何规模的数据计算中, Spark在性能和扩展性上都更具优势。
Hadoop之父 Doug Cutting指出:大数据项目的 MapReduce引擎的使用将下降,由 Apache Spark取代。
Hadoop商业发行版本的市场领导者 Cloudera、HortonWorks、MapR纷纷转投 Spark,并把 Spark作为大数据解决方案的和核心计算引擎。
在 2014年的 Sort Benchmark测试中,Spark秒杀 Hadoop,在使用其十分之一计算资源的情况下,对相同数据的排序, Spark比 MapReduce快 3倍。在没有官方千万亿字节( PB)排序对比的情况下,首次利用 Spark对 1PB数据( 10万亿条记录)排序,在使用 190个节点的情况下,工作负载在 4小时内完成,同样远超雅虎之前使用 3800台主机耗时 16小时的记录。
2015年 6月,Spark的集群—— 8000个节点来自腾讯,单个 Job——1PB来自阿里巴巴和 Databricks。
IBM公司于 2015年 6月承诺大力推进 Apache Spark项目,并称该项目为以数据为主导的、未来 10年重要的、新的开源项目。
2016年,在有“计算界奥运会”之称的国际著名 Sort Benchmark全球数据排序大赛中,由南京大学计算机科学与技术系 PASA大数据实验室、阿里巴巴和 Databricks公司组成的参赛团队 NADSort,使用 Apache Spark大数据计算平台,以 144美元的成本完成了 100TB标准数据集的排序处理,创下了每万亿字节( TB)数据排序 1.44美元成本的世界纪录。
2017年,Spark Structured streaming发布无缝整合流处理和其他计算范式。
2018年,Spark 2.4.0发布,成为全球的开源项目。
2019年,任何个人和组织都可以基于 Spark打造符合自己需求的基于大数据的 AI全生态链计算引擎。
本书以 Spark 2.4.3为基础,在第 1版的基础上根据 Spark的新版本全面更新源码,并以 TensorFlow和 PyTorch为核心,大幅度增加人工智能的内容及相应的实战案例。本书以 Spark内核解密为基石,分为内核解密篇、商业案例篇、性能调优篇和 Spark AI内幕解密篇。虽然本书的内容增加了一篇,为了更好地与第 1版延续,仍沿用三部曲的书名。
(1)内核解密篇。第 1版基于 Spark 2.2.X版本源码,从一个动手实战案例入手,循序渐进地全面解析了 Spark 新特性及 Spark内核源码。第 2版在第 1版的基础上,将 Spark 2.2.X
源码更新为 Spark 2.4.X源码,并对源码的版本更新做了详细解读,帮助读者学习 Spark源码框架的演进及发展。
(2)商业案例篇。沿用第 1版的案例内容,选取 Spark开发中代表性的经典学习案例,深入浅出地介绍综合应用 Spark的大数据技术。
(3)性能调优篇。第 1版基于 Spark 2.2.X源码,基本完全覆盖了 Spark在生产环境下的所有调优技术;第 2版在第 1版的基础上,将 Spark 2.2.X源码更新为 Spark 2.4.X源码,基于 Spark 2.4.X版本讲解 Spark性能调优的内容。
(4)Spark AI内幕解密篇。本篇是第 2版的全新内容,大幅度增加大数据在人工智能领域的应用内容,包括深度学习动手实践:人工智能下的深度学习、深度学习数据预处理、单节点深度学习训练、分布式深度学习训练; Spark PyTorch案例实战: PyTorch在 Spark上的安装、使用 PyTorch实战图像识别、 PyTorch性能调优实践; Spark TensorFlow实战: TensorFlow在 Spark上的安装、 TensorBoard解密、 Spark TensorFlow的数据转换; Spark上的深度学习内核解密:使用 TensorFlow进行图片的分布式处理、数据模型源码剖析、逻辑节点源码剖析、构建索引源码剖析、深度学习下 Spark作业源码剖析、性能调优实践。
在阅读本书的过程中,如发现任何问题或有任何疑问,可以加入本书的阅读群(QQ: 418110145)讨论,会有专人答疑。同时,该群也会提供本书所用案例源码及本书的配套学习视频。作者的新浪微博是 http://weibo.com/ilovepains/,欢迎大家在微博上与作者进行互动。
由于时间仓促,书中难免存在不妥之处,请读者谅解,并提出宝贵意见。
王家林 2020年 4月于美国硅谷
第 1版前言
大数据像当年的石油、人工智能( Artificial Intelligence),像当年的电力一样,正以前所未有的广度和深度影响所有的行业,现在及未来公司的核心壁垒是数据,核心竞争力来自基于大数据的人工智能的竞争。 Spark是当今大数据领域活跃、热门、效的大数据通用计算平台, 2009年诞生于美国加州大学伯克利分校 AMP实验室,2010年正式开源, 2013年成为 Apache基金项目, 2014年成为 Apache基金的项目。基于 RDD,Spark成功构建起了一体化、多元化的大数据处理体系。
在任何规模的数据计算中, Spark在性能和扩展性上都更具优势。
(1)Hadoop之父 Doug Cutting指出:Use of MapReduce engine for Big Data projects will decline, replaced by Apache Spark(大数据项目的 MapReduce引擎的使用将下降,由 Apache Spark取代)。
(2)Hadoop商业发行版本的市场领导者 Cloudera、HortonWorks、MapR纷纷转投 Spark,并把 Spark作为大数据解决方案的和核心计算引擎。
2014年的 Sort Benchmark测试中,Spark秒杀 Hadoop,在使用十分之一计算资源的情况下,相同数据的排序上, Spark比 MapReduce快 3倍!在没有官方千万亿字节( PB)排序对比的情况下,首次将 Spark推到了 1PB数据( 10万亿条记录)的排序,在使用 190个节点的情况下,工作负载在 4小时内完成,同样远超雅虎之前使用 3800台主机耗时 16个小时的记录。
2015年 6月,Spark的集群—— 8000个节点来自腾讯,单个 Job——1PB分别是阿里巴巴和 Databricks,震撼人心!同时, Spark的 Contributor比 2014年涨了 3倍,达到 730人;总代码行数也比 2014年涨了 2倍多,达到 40万行。IBM于 2015年 6月承诺大力推进 Apache Spark项目,并称该项目为:以数据为主导的,未来十年重要的新的开源项目。
这一承诺的核心是将 Spark嵌入 IBM业内领先的分析和商务平台,并将 Spark作为一项服务,在 IBMBluemix平台上提供给客户。 IBM还将投入超过 3500名研究和开发人员在全球 10余个实验室开展与 Spark相关的项目,并将为 Spark开源生态系统无偿提供突破性的机器学习技术——IBM SystemML。同时,IBM还将培养超过 100万名 Spark数据科学家和数据工程师。
2016年,在有“计算界奥运会”之称的国际著名 Sort Benchmark 全球数据排序大赛中,
由南京大学计算机科学与技术系 PASA大数据实验室、阿里巴巴和 Databricks公司组成的参赛团队 NADSort,以 144美元的成本完成 100TB标准数据集的排序处理,创下了每万亿字节(TB)数据排序 1.44美元成本的世界纪录,比 2014年夺得冠军的加州大学圣地亚哥分校 TritonSort团队每万亿字节数据 4.51美元的成本降低了近 70%,而这次比赛依旧使用 Apache Spark大数据计算平台,在大规模并行排序算法以及 Spark系统底层进行了大量的优化,以尽
可能提高排序计算性能并降低存储资源开销,确保终赢得比赛。
在 Full Stack理想的指引下, Spark中的 Spark SQL、SparkStreaming、MLLib、GraphX、 R五大子框架和库之间可以无缝地共享数据和操作,这不仅打造了 Spark在当今大数据计算领域其他计算框架都无可匹敌的优势,而且使得 Spark正在加速成为大数据处理中心通用计算平台,而 Spark商业案例和性能优化必将成为接下来的重中之重!
本书根据王家林老师亲授课程及结合众多大数据项目经验编写而成,其中王家林、段智华编写了本书近 90%的内容,具体编写章节如下。
第3章 Spark的灵魂: RDD和 DataSet;
第4章 Spark Driver启动内幕剖析;
第5章 Spark集群启动原理和源码详解;
第6章 Spark Application提交给集群的原理和源码详解;
第7章 Shuffle原理和源码详解;
第8章 Job工作原理和源码详解;
第9章 Spark中 Cache和 checkpoint原理和源码详解;
第10章 Spark中 Broadcast和 Accumulator原理和源码详解;
第11章 Spark与大数据其他经典组件整合原理与实战;
第12章 Spark商业案例之大数据电影点评系统应用案例;
第13章 Spark 2.2实战之 Dataset开发实战企业人员管理系统应用案例;
第14章 Spark商业案例之电商交互式分析系统应用案例;
第15章 Spark商业案例之 NBA篮球运动员大数据分析系统应用案例;
第16章 电商广告点击大数据实时流处理系统案例;
第17章 Spark在通信运营商生产环境中的应用案例;
第18章 使用 Spark GraphX实现婚恋社交网络多维度分析案例;
第23章 Spark集群中 Mapper端、Reducer端内存调优;
第24章 使用 Broadcast实现 Mapper端 Shuffle聚合功能的原理和调优实战;
第25章 使用 Accumulator高效地实现分布式集群全局计数器的原理和调优案例;
第27章 Spark五大子框架调优实践;
第28章 Spark 2.2.0新一代钨丝计划优化引擎;
第30章 Spark性能调优之数据倾斜调优一站式解决方案原理与实战;
第31章 Spark大数据性能调优实战专业之路。
其中,段智华根据自身多年的大数据工作经验对本书的案例等部分进行了扩展。
除上述章节外,剩余内容由夏阳、郑采翎、闫恒伟三位作者根据王家林老师的大数据授课内容而完成。
|
|