小苏子
小苏子PDF在线图书

Apache Spark源码剖析 作者:许鹏

Apache Spark源码剖析 作者:许鹏

Apache Spark源码剖析 出版社:电子工业出版社

Apache Spark源码剖析 内容简介

Apache Spark源码剖析 目录

Apache Spark源码剖析 精彩文摘

《Apache Spark源码剖析》以Spark 1.02版本源码为切入点,着力于探寻Spark所要解决的主要问题及其解决办法,通过一系列精心设计的小实验来分析每一步背后的处理逻辑。《Apache Spark源码剖析》第3~5章详细介绍了Spark Core中作业的提交与执行,对容错处理也进行了详细分析,有助读者深刻把握Spark实现机理。第6~9章对Spark Lib库进行了初步的探索。在对源码有了一定的分析之后,读者可尽快掌握Spark技术。第一部分 Spark概述第1章 初识Spark1.1 大数据和Spark1.1.1 大数据的由来1.1.2 大数据的分析1.1.3 Hadoop1.1.4 Spark简介1.2 与Spark的第一次亲密接触1.2.1 环境准备1.2.2 下载安装Spark1.2.3 Spark下的WordCount第二部分 Spark核心概念第2章 Spark整体框架2.1 编程模型2.1.1 RDD2.1.2 Operation2.2 运行框架2.2.1 作业提交2.2.2 集群的节点构成2.2.3 容错处理2.2.4 为什么是Scala2.3 源码阅读环境准备2.3.1 源码下载及编译2.3.2 源码目录结构2.3.3 源码阅读工具2.3.4 本章小结第3章 SparkContext初始化3.1 spark-shell3.2 SparkContext的初始化综述3.3 Spark Repl综述3.3.1 Scala Repl执行过程3.3.2 Spark Repl第4章 Spark作业提交4.1 作业提交4.2 作业执行4.2.1 依赖性分析及Stage划分4.2.2 Actor Model和Akka4.2.3 任务的创建和分发4.2.4 任务执行4.2.5 Checkpoint和Cache4.2.6 WebUI和Metrics4.3 存储机制4.3.1 Shuffle结果的写入和读取4.3.2 Memory Store4.3.3 存储子模块启动过程分析4.3.4 数据写入过程分析4.3.5 数据读取过程分析4.3.6 TachyonStore第5章 部署方式分析5.1 部署模型5.2 单机模式local5.3 伪集群部署local-cluster5.4 原生集群Standalone Cluster5.4.1 启动Master5.4.2 启动Worker5.4.3 运行spark-shell5.4.4 容错性分析5.5 Spark On YARN5.5.1 YARN的编程模型5.5.2 YARN中的作业提交5.5.3 Spark On YARN实现详解5.5.4 SparkPi on YARN第三部分 Spark Lib第6章 Spark Streaming6.1 Spark Streaming整体架构6.1.1 DStream6.1.2 编程接口6.1.3 Streaming WordCount6.2 Spark Streaming执行过程6.2.1 StreamingContext初始化过程6.2.2 数据接收6.2.3 数据处理6.2.4 BlockRDD6.3 窗口操作6.4 容错性分析6.5 Spark Streaming vs. Storm6.5.1 Storm简介6.5.2 Storm和Spark Streaming对比6.6 应用举例6.6.1 搭建Kafka Cluster6.6.2 KafkaWordCount第7章 SQL7.1 SQL语句的通用执行过程分析7.2 SQL On Spark的实现分析7.2.1 SqlParser7.2.2 Analyzer7.2.3 Optimizer7.2.4 SparkPlan7.3 Parquet 文件和JSON数据集7.4 Hive简介7.4.1 Hive 架构7.4.2 HiveQL On MapReduce执行过程分析7.5 HiveQL On Spark详解7.5.1 Hive On Spark环境搭建7.5.2 编译支持Hadoop 2.x的Spark7.5.3 运行Hive On Spark测试用例第8章 GraphX8.1 GraphX简介8.1.1 主要特点8.1.2 版本演化8.1.3 应用场景8.2 分布式图计算处理技术介绍8.2.1 属性图8.2.2 图数据的存储与分割8.3 Pregel计算模型8.3.1 BSP8.3.2 像顶点一样思考8.4 GraphX图计算框架实现分析8.4.1 基本概念8.4.2 图的加载与构建8.4.3 图数据存储与分割8.4.4 操作接口8.4.5 Pregel在GraphX中的源码实现8.5 PageRank8.5.1 什么是PageRank8.5.2 PageRank核心思想第9章 MLLib9.1 线性回归9.1.1 数据和估计9.1.2 线性回归参数求解方法9.1.3 正则化9.2 线性回归的代码实现9.2.1 简单示例9.2.2 入口函数train9.2.3 最优化算法optimizer9.2.4 权重更新update9.2.5 结果预测predict9.3 分类算法9.3.1 逻辑回归9.3.2 支持向量机9.4 拟牛顿法9.4.1 数学原理9.4.2 代码实现9.5 MLLib与其他应用模块间的整合第四部分 附录附录A Spark源码调试附录B 源码阅读技巧上网本是在2009年传统互联网与移动互联网正面交锋中一个很奇怪的产物。它很像便携式笔记本,但体积重量更小,性能也略差,关键是价格便宜。此外,它拥有移动互联网的特征,依靠不错的电池性能,比笨重的便携式笔记本有更长的使用时间。上网本凭借和PC一样的使用环境,比刚刚冒头的智能手机、平板电脑更符合用户的使用习惯。宏碁正是看中了上网本这一跨界优势,在攀越巅峰的最后一步上,把所有的力气几乎都投在了这里。当时的首席执行官兰奇就多次对外强调,公司的生存智慧是在智能手机与笔记本市场中间的交融地带。言下之意,这个交融地带正是上网本。上网本的表现没有让宏碁失望。根据IDC数据,2008年,全球上网本出货超过1000万台,2010年更是超过3300万台,而宏暮上网本出货份额一度超过这一市场的四分之一。王振堂极其自信地认为上网本代表着3C融合的开始:“上网本就是PC与手机的汇流,比任何智能手机都复杂强大。”如此骄人的战绩,怎能不让宏碁倾其所有成为上网本的王者,继而成为PC市场的主宰?很多宏碁人在当时都这么认为。更为重要的是上网本里透着宏碁自创始以来就没有改变过的企业性格。一个以代工起家并闻名的企业,一直都将低价作为其取胜的核心法宝。这几乎是台湾IT企业的固有模式,采用简单的战略进入全球电子产业,一切手段失效后便降价。在PC时代,台湾的IT企业只需要仰仗微软和英特尔之力,通过它们提供早期的芯片设计和操作系统升级,以“代工”模式组装出低廉的产品即可占有市场。宏碁无疑是将这一点发挥到极致的企业。但上网本最终将这种“代工”的性格优势和缺陷展现得淋漓尽致。在崛起初期,上网本的外部环境还是传统的PC时代,所以一路高歌猛进。之后PC时代开始向移动互联网时代变革,此时与主流笔记本应用模式没有根本区别的上网本,虽然提高了出货量,但并没有帮助宏暮建立一种类似苹果的平台化商业模式,反而还因为低价策略拉低了它的利润率。

赞(0)
未经允许不得转载:小苏子图书 » Apache Spark源码剖析 作者:许鹏