现在各大网站销售中!

京东:http://item.jd.com/11770787.html

当当:http://product.dangdang.com/23776595.html

亚马逊:http://www.amazon.cn/SparkInternals

前言和目录附上,以便有需要了解的同学:

诞生于2005年的Hadoop解决了大数据的存储和计算问题,已经成为大数据处理的事实标准。但是,随着数据规模的爆炸式增长和计算场景的丰富细化,使得Hadoop越来越难以满足用户的需求。针对不同的计算场景,开源社区和各大互联网公司也推出了各种大数据分析的平台,旨在满足特定应用场景下的计算需求。但是,众多的平台使得用户不得不为平台开发类似的策略,增加了运维开发成本。

2009年诞生于AMPLab的Spark,设计的目标就是为大数据的多种计算场景提供一个通用的计算引擎,同时解决大数据处理的4V,即Volume(海量)、Velocity(快速)、Variety(多样)、Value(价值)。如Spark的核心作者之一的Ion Stoica所说,“The goal is to build a newgeneration of data analytics software, to be used across academia and industry。 Hadoop之父Doug Cutting也说过,MapReduce引擎将被Spark替代:“Use of MapReduce engine for BigData projects will decline, replaced by Apache Spark”。可以说,Spark自诞生之日起就得到了广泛的关注,也是近年来开源社区最活跃的项目之一。Spark的1.X的每次发布,都包含了数百位贡献者的上千次提交。最新的版本是发布于2015年6月11日的1.4.0,是迄今为止Spark最大的一次版本发布,涵盖了210位开发者的贡献。

Spark得到了众多大数据公司的支持,这些公司包括Hortonworks、IBM、Intel、Cloudera、MapR、Pivotal和星环科技;Spark也被包括百度、阿里、腾讯、京东、携程、优酷土豆等互联网公司应用到了多种不同的计算场景中,并且在实际的生产环境中获得了很多收益。当前百度的Spark已应用于凤巢、大搜索、直达号、百度大数据等业务;淘宝利用GraphX构建了大规模的图计算和图挖掘系统,实现了很多生产系统的推荐算法;腾讯Spark集群达到8000台的规模,是当前已知的世界上最大的Spark集群。

但是,当前并没有一本系统介绍Spark内核实现原理的书,而Spark内核是Spark SQL、Spark Streaming、MLlib、GraphX等多个模块的基础,这些模块最终的计算执行都是由内核模块完成的。为了在应用开发中做到游刃有余,在性能调优时做到有的放矢,需要了解内核模块的实现原理。笔者从Spark 发布版本0.8.1时开始关注Spark,深入学习内核模块的架构实现原理。Spark在1.0发布后,内核模块趋于稳定,虽然内核模块依旧会有不断的改进和完善,但是整体的设计思想和实现方法是不会变的,因此笔者决定为Spark社区的用户和关注者写一本书,详细介绍Spark内核模块的实现原理。最终,笔者基于Spark 1.2.0版本完成本书。

写作是一件严肃的事情,同样是一份苦差事,尤其是在工作比较忙的时候。本书在半年前就完成了基本的框架,本着认真负责的态度,对本书进行了多次的修改和完善。笔者认为,对一本架构分析的书,一个最基本的要求就是基于源码如实描述系统的实现,能做到这一点就是一本及格的书;如果能做到能够分析这个架构的好坏,指出架构改进的方案,那么无疑这就是一本质量比较好的书;如果能高屋建瓴的进行再次的抽象,指出类似架构不同实现的优劣,抽象出一些理论,那么这就是一本质量上乘、可以当做教科书的书。希望这本书至少是一本及格的书,能基于源码如实描述系统的实现,对那些希望深入学习Spark架构实现的同仁有所帮助。

目标读者:

本书适合大数据领域的架构师、运维人员阅读,也适合作为研究生和高年级的本科生作为大数据领域分布式架构具体实现原理的参考资料,尤其推荐Spark领域的从业人员能够根据本书了解Spark的实现原理。

致谢:

本书在写作的过程中,得到了很多朋友的帮助和支持。感谢七牛云的技术总监陈超先生、蘑菇街的资深架构师刘旭晖先生、百度公司的高级架构师柴华先生、Databricks软件工程师连城先生在百忙之中为本书审稿,并提出了很多宝贵的修改意见。尤其感谢星环科技的创始人兼CTO孙元浩先生对本书的完成给予了很多的支持,还在百忙之中为本书作序。感谢华为诺亚方舟实验室的董振华博士,在Spark上做机器学习方面给了我很多的指导。

感谢百度上海研发中心网页搜索部的同事们。在一年多的工作中,笔者得到了很多同事的指导、支持和帮助,尤其感谢曲晶莹,吴永巍,汪韬,葛俊,刘桐仁,段雪涛,周波涛,汪亮,马鑫云,李战平,杨大毛,朱晓阳,赵鹏程等。

感谢机械工业出版社的姚蕾女生不但积极策划和推动本书的出版,还能容忍我蜗牛般的写作速度;非常感谢在这一年多的时间中给予的理解与支持。感谢机械工业出版社的李艺女士为本书做了非常辛苦和专业的编辑工作。

感谢我的家人一直以来对我的支持和宽容,感谢父亲母亲和三个姐姐,你们是我漫漫求学路的最强大支柱和后盾;感谢我的妻子王珊珊,不但在家庭方面付出很多,也为本书的顺利出版做出了很重要的贡献;感谢我的女儿,每次你对爸爸的微笑都是爸爸消除疲惫的良药。

联系方式:

由于本书的写作都是在业余时间完成,加上笔者本身水平有限,因此错误在所难免,敬请读者谅解。如果有任何问题,可以通过下列方式进行交流沟通:

Spark架构实现原理交流QQ群:473842835

Spark用户使用交流QQ群:473853269

或者与作者取得联系:

邮箱:anzhsoft@gmail.com

新浪微博:@anzhsoft

个人博客:http://blog.csdn.net/anzhsoft

本书内容概述:

第1章     Spark简介:介绍Spark的技术背景和特点,并且就架构给出整体的概述;简单的介绍Spark的生态圈。

第2章     Spark学习环境的搭建:介绍Spark源码如何获取和学习环境如何搭建。

第3章     RDD实现详解:RDD的详细介绍,介绍了RDD的定义和Spark对于DAG(Directed Acyclic Graph,有向无环图)的实现,最后通过RDD计算的详细介绍,详细讲解了Spark对于计算的实现原理。

第4章     Scheduler模块详解:详细介绍任务调度的实现,包括如何通过DAG来生成计算任务的,最后会通过“Word Count”来加深这个实现过程的理解。

第5章     Deploy模块详解:介绍Spark的运行模式,尤其是Standalone模式。Standalone作为Spark自身实现的资源管理和调度的模块,本章会详细介绍它的实现原理。

第6章     Executor模块详解:Executor是最终执行计算任务的单元,本章会详细介绍Executor的实现原理,包括Executor的分配,Task在Executor的详细执行过程。

第7章     Shuffle模块详解:详细介绍Spark对于Shuffle的实现原理,包括基于Hash和基于排序的。除了详细基于Hash和排序的Shuffle写和Shuffle读之外,还介绍了Shuffle Pluggable的框架,为需要实现特定Shuffle逻辑的读者介绍其实现原理。

第8章     Storage模块详解:详细介绍Spark的存储模块,在详解介绍了模块的详细架构后详解解析了不同存储级别的实现细节。

第9章     企业应用概述:介绍了Spark在百度,腾讯和阿里等国内互联网领域的应用现状。

转载于:https://www.cnblogs.com/wuwa/p/6190756.html

我的第一本著作:Spark技术内幕上市!相关推荐

  1. Spark技术内幕: Task向Executor提交的源代码解析

    在上文<Spark技术内幕:Stage划分及提交源代码分析>中,我们分析了Stage的生成和提交.可是Stage的提交,仅仅是DAGScheduler完毕了对DAG的划分,生成了一个计算拓 ...

  2. Spark技术内幕:Shuffle Read的整体流程

    回忆一下,每个Stage的上边界,要么需要从外部存储读取数据,要么需要读取上一个Stage的输出:而下边界,要么是需要写入本地文件系统(需要Shuffle),以供childStage读取,要么是最后一 ...

  3. Spark技术内幕:Stage划分及提交源码分析

    当触发一个RDD的action后,以count为例,调用关系如下: org.apache.spark.rdd.RDD#count org.apache.spark.SparkContext#runJo ...

  4. Spark技术内幕:究竟什么是RDD

    RDD是Spark最基本,也是最根本的数据抽象.http://www.cs.berkeley.edu/~matei/papers/2012/nsdi_spark.pdf 是关于RDD的论文.如果觉得英 ...

  5. 王家林大咖新书预发布:清华大学出版社即将出版《Spark大数据商业实战三部曲:内核解密|商业案例|性能调优》第二版 及《企业级AI技术内幕讲解》

    王家林大咖新书预发布:清华大学出版社即将出版<Spark大数据商业实战三部曲:内核解密|商业案例|性能调优>第二版,新书在第一版的基础上以Spark 2.4.3版本全面更新源码,并以Ten ...

  6. 《PostgreSQL技术内幕:事务处理深度探索》上市了!

    新的个人博客主页:zhangshujie.cn 京东地址 当当地址 淘宝地址 为什么写这本书? 近年来,我一直从事与PostgreSQL相关的数据库内核开发工作,主攻方向是SQL引擎中的查询优化,对事 ...

  7. 华章揭秘系列精品图书(《Android应用开发揭秘》、《GWT揭秘》、《Spring技术内幕》)...

    Android应用开发揭秘(国内首本基于Andriod 2.0的经典著作,5大专业社区一致鼎力推荐!互动网畅销排行榜第1名) 作者:杨丰盛 出版社:机械工业出版社 标准书号:978-7-111-291 ...

  8. Spring技术内幕

    Spring技术内幕--深入解析Spring架构与设计原理 图 书 内 容 本书是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java专家亲自执笔!Java开发者社区和Spring开发 ...

  9. 世界级Linux技术大师首次公开大量技术内幕

    媒体评论 "这是我读过的最全面的Linux设备驱动程序著作." --Alan Cox,Linux内核维护者 "这本书涵盖了各种Linux设备驱动程序,全面而翔实.&quo ...

最新文章

  1. 深度学习在美团配送ETA预估中的探索与实践
  2. SCOM2012部署系列之九:部署审核收集报告(ACSReporting)
  3. js中iframe访问父页的方法
  4. Android测试分析3
  5. c语言不循环链表,无头单向不循环链表相关接口实现(C语言)
  6. 空间点过程(Point Processes)和随机测度(Random Measure)
  7. 【51Nod - 1010 】只包含因子2 3 5的数 (打表,有坑越界)
  8. 从软件交付看软件验收管理
  9. qq java版与wp版区别_手机QQ 2.7 (WP版)更新,同时支持WP7和WP8
  10. 易学源码html,HTML
  11. vue 项目中 自定义过滤器 全局使用 filter
  12. [转载] 七龙珠第一部——第021话 克林危险
  13. FastAPI用户安全性解决方案
  14. ADC和DAC中常见技术术语
  15. 微信小程序Demo详解
  16. 计算机键盘灯光怎么关闭,电脑关机键盘灯一直亮着解决方法
  17. CAN通讯程序C语言,基于单片机的CANBUS程序(C语言)
  18. 【教程】鼠标右键新建添加RTF文档
  19. hcia是什么等级的证书_华为hcia是什么等级的证书
  20. Wed Jul 22 00:00:00 CST 2020 java转成指定日期格式的字符串

热门文章

  1. keep-alive保持组件状态的方法
  2. 拉格朗日对偶原理与KKT条件的理解
  3. echarts 环形进度图
  4. DTC策略——柔性供应链管理能力
  5. android frp分区,在安卓手机上运行FRP
  6. English语法_介词 - of
  7. 移通创联MODBUS转PROFIBUS网关在高炉上配料系统中的案例
  8. 服务器不稳定降权多久会恢复,[实例]首页被降权24小时恢复手记
  9. 河北经贸大学的计算机类专业,河北经贸大学计算机专业咋样?(河北经贸大学专业排名及介绍哪些专业最好)...
  10. 非职业项目经理人的管理精华