新書推薦:
《
女人的胜利
》
售價:HK$
57.4
《
数据有道:数据分析+图论与网络+微课+Python编程(鸢尾花数学大系:从加减乘除到机器学习)
》
售價:HK$
273.7
《
500万次倾听:陪伤心的人聊聊
》
售價:HK$
55.2
《
英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。)
》
售價:HK$
82.8
《
万千心理·儿童心理治疗中的心智化:临床实践指导
》
售價:HK$
89.7
《
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
》
售價:HK$
67.9
《
周易
》
售價:HK$
45.8
《
东南亚的传统与发展
》
售價:HK$
69.0
|
編輯推薦: |
Spark Contributor,Databricks工程师连城,华为大数据平台开发部部长陈亮,网易杭州研究院副院长汪源,TalkingData首席数据科学家张夏天联袂力荐
1.本书全面、系统地介绍了Spark源码,深入浅出,细致入微
2.提供给读者一系列分析源码的实用技巧,并给出一个合理的阅读顺序
3.始终抓住资源分配、消息传递、容错处理等基本问题,抽丝拨茧
4.一步步寻找答案,所有问题迎刃而解,使读者知其然更知其所以然
|
內容簡介: |
本书以Spark 1.02版本源码为切入点,着力于探寻Spark所要解决的主要问题及其解决办法,通过一系列精心设计的小实验来分析每一步背后的处理逻辑。
本书第3~5章详细介绍了Spark Core中作业的提交与执行,对容错处理也进行了详细分析,有助读者深刻把握Spark实现机理。第6~9章对Spark Lib库进行了初步的探索。在对源码有了一定的分析之后,读者可尽快掌握Spark技术。
推荐购买
《大数据日知录:架构与算法》大数据领域专家力作,专注大数据架构和算法,全面梳理大数据相关技术
《OpenStack企业云平台架构与实践》业内专家杜玉杰、金龙、金永霞联袂力荐;从架构的层面、以结合理论和工程的角度,对OpenStack构建企业云平台进行全面讲解
《精通Perl(第2版)》通往Perl大师之路必读经典书籍,体现了一种编程思维,能够帮你解决很多实际的问题
|
關於作者: |
许鹏长期致力于电信领域和互联网的软件研发,在数据处理方面积累了大量经验,对系统的可扩展性、可靠性方面进行过深入学习和研究。因此,累积了大量的源码阅读和分析的技巧与方法。目前在杭州同盾科技担任大数据平台架构师一职。对于Linux内核,作者也曾进行过深入的分析。
|
目錄:
|
第一部分Spark概述1
第1章初识Spark 3
1.1 大数据和Spark 3
1.1.1 大数据的由来4
1.1.2 大数据的分析4
1.1.3 Hadoop 5
1.1.4 Spark简介6
1.2 与Spark的第一次亲密接触7
1.2.1 环境准备7
1.2.2 下载安装Spark 8
1.2.3 Spark下的WordCount 8
第二部分Spark核心概念13
第2章Spark整体框架 15
2.1 编程模型15
2.1.1 RDD 17
2.1.2 Operation 17
2.2 运行框架18
2.2.1 作业提交18
2.2.2 集群的节点构成18
2.2.3 容错处理19
2.2.4 为什么是Scala 19
2.3 源码阅读环境准备19
2.3.1 源码下载及编译19
2.3.2 源码目录结构21
2.3.3 源码阅读工具21
2.3.4 本章小结22
第3章SparkContext初始化 23
3.1 spark-shell 23
3.2 SparkContext的初始化综述27
3.3 Spark Repl综述30
3.3.1 Scala Repl执行过程31
3.3.2 Spark Repl 32
第4章Spark作业提交 33
4.1 作业提交33
4.2 作业执行38
4.2.1 依赖性分析及Stage划分39
4.2.2 Actor Model和Akka 46
4.2.3 任务的创建和分发47
4.2.4 任务执行53
4.2.5 Checkpoint和Cache 62
4.2.6 WebUI和Metrics 62
4.3 存储机制71
4.3.1 Shuffle结果的写入和读取71
4.3.2 Memory Store 80
4.3.3 存储子模块启动过程分析81
4.3.4 数据写入过程分析82
4.3.5 数据读取过程分析84
4.3.6 TachyonStore 88
第5章部署方式分析 91
5.1 部署模型91
5.2 单机模式local 92
5.3 伪集群部署local-cluster 93
5.4 原生集群Standalone Cluster
95
5.4.1 启动Master 96
5.4.2 启动Worker 97
5.4.3 运行spark-shell 102
5.4.4 容错性分析106
5.5 Spark On YARN 112
5.5.1 YARN的编程模型112
5.5.2 YARN中的作业提交112
5.5.3 Spark On YARN实现详解113
5.5.4 SparkPi on YARN 122
第三部分Spark Lib 129
第6章Spark Streaming 131
6.1 Spark Streaming整体架构131
6.1.1 DStream 132
6.1.2 编程接口133
6.1.3 Streaming WordCount 134
6.2 Spark Streaming执行过程135
6.2.1 StreamingContext初始化过程136
6.2.2 数据接收141
6.2.3 数据处理146
6.2.4 BlockRDD 155
6.3 窗口操作158
6.4 容错性分析159
6.5 Spark Streaming vs. Storm 165
6.5.1 Storm简介165
6.5.2 Storm和Spark Streaming对比168
6.6 应用举例168
6.6.1 搭建Kafka Cluster 168
6.6.2 KafkaWordCount 169
第7章SQL 173
7.1 SQL语句的通用执行过程分析175
7.2 SQL On Spark的实现分析178
7.2.1 SqlParser 178
7.2.2 Analyzer 184
7.2.3 Optimizer 191
7.2.4 SparkPlan 192
7.3 Parquet 文件和JSON数据集196
7.4 Hive简介197
7.4.1 Hive 架构197
7.4.2 HiveQL On MapReduce执行过程分析199
7.5 HiveQL On Spark详解200
7.5.1 Hive On Spark环境搭建206
7.5.2 编译支持Hadoop 2.x的Spark 211
7.5.3 运行Hive On Spark测试用例213
第8章GraphX 215
8.1 GraphX简介215
8.1.1 主要特点216
8.1.2 s
|
|