0 0 0

Spark SQL内核剖析.epub

鲜明
1月前 340
我用夸克网盘分享了「Spark SQL内核剖析.epub」,点击链接即可保存。打开「夸克APP」在线查看,支持多种文档格式转换。
Spark SQL内核剖析 作者: 朱锋/张韶全/黄明 出版社: 电子工业出版社 出品方: 博文视点 出版年: 2018-8 页数: 268 定价: 69.00元 装帧: 平装 ISBN: 9787121343148

内容简介

Spark SQL 是 Spark 技术体系中较有影响力的应用(Killer application),也是 SQL-on-Hadoop 解决方案 中举足轻重的产品。《Spark SQL内核剖析》由 11 章构成,从源码层面深入介绍 Spark SQL 内部实现机制,以及在实际业务场 景中的开发实践,其中包括 SQL 编译实现、逻辑计划的生成与优化、物理计划的生成与优化、Aggregation 算子和 Join 算子的实现与执行、Tungsten 优化技术、生产环境中的一些改造优化经验等。 《Spark SQL内核剖析》不属于入门级教程,需要读者对基本概念有一定的了解。在企业中任职的系统架构师和软件开发人员,以及对大数据、分布式计算和数据库系统实现感兴趣的研究人员,均适合阅读《Spark SQL内核剖析》。

作者简介

朱锋,博士毕业于中科院软件所,研究方向为分布式计算与软件工程。长期关注数据分析、数据库技术和大数据相关系统,并积极参与开源社区贡献。2017年加入腾讯,负责Spark SQL相关平台的开发、优化和维护工作,在SQL-on-Hadoop方面积累了丰富的经验。 张韶全,香港中文大学博士,博士期间研究方向为系统最优分布式算法。曾任香港应用研究院研究员、联想香港研发中心高级研究员。现任腾讯大数据平台高级研发工程师,负责腾讯大数据SQL平台的建设与研发,平台规模达到上万台服务器,百万级别业务量,PB级日数据计算量,支撑着腾讯全公司的数据分析业务,拥有多年互联网公司一线的大数据平台设计与研发经验。旨在传播大数据技术和实践经验,使其在不同行业落地生根。 黄明,腾讯T4专家,Spark中国区早期研究者和布道者之一。

网友热评

Ethan: 目前看到的市面上讲 spark sql最全面的书,结合源码阅读更佳 robi: 之前完全没用过spark假期入门下,相比calcite catalyst更容易看些,tungsten那章很有意思,不错的书推荐推荐...ps 貌似书里shuffle拼写错了? 肥仔水: 可以当2.0版本的工具书。一些细节说的都非常详细,难得的国人佳作。

图书目录

第1章SparkSQL背景1 1.1大数据与Spark系统1 1.2关系模型与SQL语言3 1.3SparkSQL发展历程4 1.4本章小结5 第2章Spark基础知识介绍6 2.1RDD编程模型6 2.2DataFrame与Dataset9 2.3本章小结10 第3章SparkSQL执行全过程概述11 3.1从SQL到RDD:一个简单的案例11 3.2重要概念14 3.2.1InternalRow体系14 3.2.2TreeNode体系15 3.2.3Expression体系17 3.3内部数据类型系统20 3.4本章小结21 第4章SparkSQL编译器Parser22 4.1DSL工具之ANTLR简介22 4.1.1基于ANTLR4的计算器23 4.1.2访问者模式25 4.2SparkSqlParser之AstBuilder28 4.3常见SQL生成的抽象语法树概览30 4.4本章小结33 第5章SparkSQL逻辑计划(LogicalPlan)34 5.1SparkSQL逻辑计划概述34 5.2LogicalPlan简介35 5.2.1QueryPlan概述35 5.2.2LogicalPlan基本操作与分类37 5.2.3LeafNode类型的LogicalPlan38 5.2.4UnaryNode类型的LogicalPlan39 5.2.5BinaryNode类型的LogicalPlan40 5.2.6其他类型的LogicalPlan41 5.3AstBuilder机制:UnresolvedLogicalPlan生成41 5.4Analyzer机制:AnalyzedLogicalPlan生成46 5.4.1Catalog体系分析46 5.4.2Rule体系48 5.4.3AnalyzedLogicalPlan生成过程50 5.5SparkSQL优化器Optimizer56 5.5.1Optimizer概述56 5.5.2Optimizer规则体系57 5.5.3OptimizedLogicalPlan的生成过程62 5.6本章小结64 第6章SparkSQL物理计划(PhysicalPlan)66 6.1SparkSQL物理计划概述66 6.2SparkPlan简介67 6.2.1LeafExecNode类型68 6.2.2UnaryExecNode类型69 6.2.3BinaryExecNode类型70 6.2.4其他类型的SparkPlan70 6.3Metadata与Metrics体系71 6.4Partitioning与Ordering体系72 6.4.1Distribution与Partitioning的概念72 6.4.2SparkPlan的常用分区排序操作76 6.5SparkPlan生成77 6.5.1物理计划Strategy体系79 6.5.2常见Strategy分析81 6.6执行前的准备83 6.6.1PlanSubqueries规则84 6.6.2EnsureRequirements规则85 6.7本章小结89 第7章SparkSQL之Aggregation实现90 7.1Aggregation执行概述90 7.1.1文法定义90 7.1.2聚合语句UnresolvedLogicalPlan生成92 7.1.3从逻辑算子树到物理算子树93 7.2聚合函数(AggregateFunction)97 7.2.1聚合缓冲区与聚合模式(AggregateMode)97 7.2.2DeclarativeAggregate聚合函数100 7.2.3ImperativeAggregate聚合函数101 7.2.4TypedImperativeAggregate聚合函数101 7.3聚合执行102 7.3.1执行框架AggregationIterator103 7.3.2基于排序的聚合算子SortAggregateExec104 7.3.3基于Hash的聚合算子HashAggregateExec105 7.4窗口(Window)函数108 7.4.1窗口函数定义与简介109 7.4.2窗口函数相关表达式111 7.4.3窗口函数的逻辑计划阶段与物理计划阶段113 7.4.4窗口函数的执行117 7.5多维分析120 7.5.1OLAP多维分析背景120 7.5.2SparkSQL多维查询121 7.5.3多维分析LogicalPlan阶段123 7.5.4多维分析PhysicalPlan与执行126 7.6本章小结128 第8章SparkSQL之Join实现129 8.1Join查询概述129 8.2文法定义与抽象语法树130 8.3Join查询逻辑计划133 8.3.1从AST到UnresolvedLogicalPlan133 8.3.2从UnresolveLogicalPlan到AnalyzedLogicalPlan136 8.3.3从AnalyzedLogicalPlan到OptimizedLogicalPlan137 8.4Join查询物理计划140 8.4.1Join物理计划的生成140 8.4.2Join物理计划的选取141 8.5Join查询执行143 8.5.1Join执行基本框架143 8.5.2BroadcastJoinExec执行机制144 8.5.3ShuffledHashJoinExec执行机制145 8.5.4SortMergeJoinExec执行机制148 8.6本章小结155 第9章Tungsten技术实现156 9.1内存管理与二进制处理156 9.1.1Spark内存管理基础156 9.1.2Tungsten内存管理优化基础174 9.1.3Tungsten内存优化应用179 9.2缓存敏感计算(Cache-awarecomputation)185 9.3动态代码生成(Codegeneration)188 9.3.1漫谈代码生成188 9.3.2Janino编译器实践190 9.3.3基本(表达式)代码生成191 9.3.4全阶段代码生成(WholeStageCodegen)196 9.4本章小结211 第10章SparkSQL连接Hive212 10.1SparkSQL连接Hive概述212 10.2Hive相关的规则和策略213 10.2.1HiveSessionCatalog体系213 10.2.2Analyzer之Hive-Specific分析规则216 10.2.3SparkPlanner之Hive-Specific转换策略217 10.2.4Hive相关的任务执行218 10.3SparkSQL与Hive数据类型219 10.3.1Hive数据类型与SerDe框架219 10.3.2DataTypeToInspector与DataWrapping220 10.3.3InspectorToDataType与DataUnwrapping221 10.4HiveUDF管理机制223 10.5SparkThriftServer实现225 10.5.1Service体系227 10.5.2Operation与OperationManager228 10.5.3Session与SessionManager232 10.5.4Authentication安全认证管理234 10.5.5SparkThriftServer执行流程235 10.6本章小结239 第11章SparkSQL开发与实践240 11.1腾讯大数据平台(TDW)简介240 11.2腾讯大数据平台SQL引擎(TDW-SQL-Engine)241 11.2.1SQL-Engine背景与演化历程241 11.2.2SQL-Engine整体架构242 11.3TDW-SparkSQL开发与优化244 11.3.1业务运行支撑框架244 11.3.2新功能开发案例248 11.3.3性能优化开发案例256 11.4业务实践经验与教训261 11.4.1SparkSQL集群管理的经验261 11.4.2SparkSQL业务层面调优263 11.4.3SQL写法的“陷阱”268 11.5本章小结271 总结272 参考文献273

Spark

版权说明

1、本站不保存、不存储任何实质资源,以上二维码指向为网盘资源链接,其内容归对应版权方所有
2、如有侵犯版权的情况,请点击下面举报/反馈按钮反馈或发送邮件[email protected]投诉说明情况
3、我们核实后将第一时间删除相关页面内容,谢谢理解和配合

这些人下载过 (12)
  • 别装帅比做你自己
  • 你长得咋那么像我女朋友
  • 干鹊无灵
  • 風格自持
  • 搜狗你更丑
  • 丨ㄖ巷
  • 怀里肆意
  • 烈焰刀
  • 单身求解放
  • 清凤
  • 跟我熟的人都知道我很疯
  • 文樂
最新回复 (0)

    暂无评论

请先登录后发表评论!

返回
请先登录后发表评论!