Spark SQL内核剖析
¥
75
九品
仅1件
作者朱锋
出版社电子工业出版社
出版时间2018-08
版次1
装帧其他
货号C866
上书时间2024-12-26
商品详情
- 品相描述:九品
图书标准信息
-
作者
朱锋
-
出版社
电子工业出版社
-
出版时间
2018-08
-
版次
1
-
ISBN
9787121343148
-
定价
69.00元
-
装帧
其他
-
开本
16开
-
纸张
胶版纸
- 【内容简介】
-
经过多年的发展,大数据处理技术逐步成熟。作为业界大数据计算的事实标准,Apache Spark系统已经广泛应用于各大企业与研究机构,并形成完整的生态系统。Spark系统包含了SQL、GraphX和R等各个子系统以支持不同业务领域的需求。作为传统关系数据库/数据仓库在大数据场景下的解决方案,Spark SQL已经成为了业界的重要选择方案,同时也成为了Spark开源社区中*为活跃的部分。本书聚焦于Spark SQL系统,对其整体架构、内部各个模块的技术实现机制进行源码级别的剖析,涉及到SQL编译、逻辑计划、物理执行计划、重要查询(如Aggregation与Join等)的技术细节。此外,本书内容上还会结合生产环境的海量应用,分享大量真实开发案例与实践优化经验。
- 【作者简介】
-
朱锋,博士毕业于中科院软件所,研究方向为分布式计算与软件工程。长期关注数据分析、数据库技术和大数据相关系统,并积极参与开源社区贡献。2017年加入腾讯,负责Spark SQL相关平台的开发、优化和维护工作,在SQL-on-Hadoop方面积累了丰富的经验。
张韶全,香港中文大学博士,博士期间研究方向为系统优分布式算法。曾任香港应用研究院研究员、联想香港研发中心高级研究员。现任腾讯大数据平台高级研发工程师,负责腾讯大数据SQL平台的建设与研发,平台规模达到上万台服务器,百万级别业务量,PB级日数据计算量,支撑着腾讯全公司的数据分析业务,拥有多年互联网公司一线的大数据平台设计与研发经验。旨在传播大数据技术和实践经验,使其在不同行业落地生根。
黄明,腾讯T4专家,Spark中国区早期研究者和布道者之一。
- 【目录】
-
第 1 章 Spark SQL 背景
1.1 大数据与 Spark 系统
1.2 关系模型与 SQL 语言
1.3 Spark SQL 发展历程
1.4 本章小结
第 2 章 Spark 基础知识介绍
2.1 RDD 编程模型
2.2 DataFrame 与 Dataset
2.3 本章小结
第 3 章 Spark SQL 执行全过程概述
3.1 从 SQL 到 RDD:一个简单的案例
3.2 重要概念
3.2.1InternalRow 体系
3.2.2TreeNode 体系
3.2.3Expression 体系
3.3 内部数据类型系统
3.4 本章小结
第 4 章 Spark SQL 编译器 Parser
4.1DSL 工具之 ANTLR 简介
4.1.1 基于 ANTLR 4 的计算器
4.1.2 访问者模式
4.2SparkSqlParser 之 AstBuilder
4.3 常见 SQL 生成的抽象语法树概览
4.4 本章小结
第 5 章 Spark SQL 逻辑计划(LogicalPlan)
5.1 Spark SQL 逻辑计划概述
5.2LogicalPlan 简介
5.2.1QueryPlan 概述
5.2.2LogicalPlan 基本操作与分类
5.2.3LeafNode 类型的 LogicalPlan
5.2.4UnaryNode 类型的 LogicalPlan
5.2.5BinaryNode 类型的 LogicalPlan
5.2.6其他类型的 LogicalPlan
5.3AstBuilder 机制:Unresolved LogicalPlan 生成
5.4Analyzer 机制:Analyzed LogicalPlan 生成
5.4.1Catalog 体系分析
5.4.2 Rule 体系
5.4.3 Analyzed LogicalPlan 生成过程
5.5Spark SQL 优化器 Optimizer
5.5.1Optimizer 概述
5.5.2Optimizer 规则体系
5.5.3Optimized LogicalPlan 的生成过程
5.6 本章小结
第 6 章 Spark SQL 物理计划(PhysicalPlan)
6.1 Spark SQL 物理计划概述
6.2SparkPlan 简介
6.2.1LeafExecNode 类型
6.2.2UnaryExecNode 类型
6.2.3BinaryExecNode 类型
6.2.4其他类型的 SparkPlan
6.3Metadata 与 Metrics 体系
6.4Partitioning 与 Ordering 体系
6.4.1Distribution 与 Partitioning 的概念
6.4.2 SparkPlan 的常用分区排序操作
6.5SparkPlan 生成
6.5.1 物理计划 Strategy 体系
6.5.2 常见 Strategy 分析
6.6 执行前的准备
6.6.1PlanSubqueries 规则
6.6.2EnsureRequirements 规则
6.7 本章小结
第 7 章 Spark SQL 之 Aggregation 实现
7.1Aggregation 执行概述
7.1.1 文法定义
7.1.2聚合语句 Unresolved LogicalPlan 生成
7.1.3 从逻辑算子树到物理算子树
7.2聚合函数(AggregateFunction)
7.2.1 聚合缓冲区与聚合模式(AggregateMode)
7.2.2DeclarativeAggregate 聚合函数
7.2.3ImperativeAggregate 聚合函数
7.2.4TypedImperativeAggregate 聚合函数
7.3 聚合执行
7.3.1执行框架 AggregationIterator
7.3.2基于排序的聚合算子 SortAggregateExec
7.3.3基于 Hash 的聚合算子 HashAggregateExec
7.4 窗口(Window)函数
7.4.1 窗口函数定义与简介
7.4.2 窗口函数相关表达式
7.4.3 窗口函数的逻辑计划阶段与物理计划阶段
7.4.4 窗口函数的执行
7.5 多维分析
7.5.1 OLAP 多维分析背景
7.5.2Spark SQL 多维查询
7.5.3多维分析 LogicalPlan 阶段
7.5.4多维分析 PhysicalPlan 与执行
7.6 本章小结
第 8 章 Spark SQL 之 Join 实现
8.1 Join 查询概述
8.2 文法定义与抽象语法树
8.3 Join 查询逻辑计划
8.3.1从 AST 到 Unresolved LogicalPlan
8.3.2从 Unresolve LogicalPlan 到 Analyzed LogicalPlan
8.3.3从 Analyzed LogicalPlan 到 Optimized LogicalPlan
8.4 Join 查询物理计划
8.4.1 Join 物理计划的生成
8.4.2 Join 物理计划的选取
8.5 Join 查询执行
8.5.1 Join 执行基本框架
8.5.2BroadcastJoinExec 执行机制
8.5.3ShuffledHashJoinExec 执行机制
8.5.4SortMergeJoinExec 执行机制
8.6 本章小结
第 9 章 Tungsten 技术实现
9.1 内存管理与二进制处理
9.1.1 Spark 内存管理基础
9.1.2 Tungsten 内存管理优化基础
9.1.3 Tungsten 内存优化应用
9.2缓存敏感计算(Cache-aware computation)
9.3动态代码生成(Code generation)
9.3.1 漫谈代码生成
9.3.2 Janino 编译器实践
9.3.3 基本(表达式)代码生成
9.3.4 全阶段代码生成(WholeStageCodegen)
9.4 本章小结
第 10 章 Spark SQL 连接 Hive
10.1 Spark SQL 连接 Hive 概述
10.2 Hive 相关的规则和策略
10.2.1HiveSessionCatalog 体系
10.2.2Analyzer 之 Hive-Specific 分析规则
10.2.3SparkPlanner 之 Hive-Specific 转换策略
10.2.4 Hive 相关的任务执行
10.3Spark SQL 与 Hive 数据类型
10.3.1 Hive 数据类型与 SerDe 框架
10.3.2DataTypeToInspector 与 Data Wrapping
10.3.3InspectorToDataType 与 Data Unwrapping
10.4 Hive UDF 管理机制
10.5Spark Thrift Server 实现
10.5.1Service 体系
10.5.2Operation 与 OperationManager
10.5.3Session 与 SessionManager
10.5.4Authentication 安全认证管理
10.5.5Spark Thrift Server 执行流程
10.6 本章小结
第 11 章 Spark SQL 开发与实践
11.1 腾讯大数据平台(TDW)简介
11.2 腾讯大数据平台 SQL 引擎(TDW-SQL-Engine)
11.2.1 SQL-Engine 背景与演化历程
11.2.2 SQL-Engine 整体架构
11.3 TDW-Spark SQL 开发与优化
11.3.1 业务运行支撑框架
11.3.2 新功能开发案例
11.3.3 性能优化开发案例
11.4 业务实践经验与教训
11.4.1 Spark SQL 集群管理的经验
11.4.2 Spark SQL 业务层面调优
11.4.3 SQL 写法的“陷阱”
11.5本章小结
总结
参考文献
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价