java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 46567|回复: 290

[java电子书] Spark SQL内核剖析 PDF 电子书 百度云

  [复制链接]
  • TA的每日心情
    开心
    2021-5-25 00:00
  • 签到天数: 1917 天

    [LV.Master]出神入化

    2025

    主题

    3683

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66375

    宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2019-5-28 21:57:26 | 显示全部楼层 |阅读模式
    java自学网(www.javazx.com)-java论坛,java电子书推荐:《Spark SQL内核剖析》2 _9 h, f# h' e) J9 v3 ]& S
    java电子书推荐理由: 经过多年的发展,大数据处理技术逐步成熟。作为业界大数据计算的事实标准,Apache Spark系统已经广泛应用于各大企业与研究机构,并形成完整的生态系统。Spark系统包含了SQL、GraphX和R等各个子系统以支持不同业务领域的需求。作为传统关系数据库/数据仓库在大数据场景下的解决方案,Spark SQL已经成为了业界的重要选择方案,同时也成为了Spark开源社区中*为活跃的部分。本书聚焦于Spark SQL系统,对其整体架构、内部各个模块的技术实现机制进行源码级别的剖析,涉及到SQL编译、逻辑计划、物理执行计划、重要查询(如Aggregation与Join等)的技术细节。此外,本书内容上还会结合生产环境的海量应用,分享大量真实开发案例与实践优化经验
    $ ]: i' G5 a! y' J' A2 v- ~
    : u* }5 o. g5 O7 w+ `5 c) l' ]
    作者:朱锋4 h8 v5 X! l3 ?; f
    出版社:电子工业出版社
    ! V( I, E" N7 p1 j8 i出版时间:2018年08月
    # S, l% ~* ]3 e: x1 |书籍价格:69.0元

    - g- h" _7 l9 O/ M0 \7 q

    6 u# s$ Y  e& s. h4 R& ~! N2 @ 111.jpg
    ) p% P" h6 _& f; T1 M( f! B% |" }
    0 f. N0 ^. w4 ~, w* I# q  j
    java电子书目录:
    : n1 n% h5 K$ P
    第 1 章 Spark SQL 背景
    1 a, P! Q! @! e$ n, i! ^! ~1.1 大数据与 Spark 系统
    5 R; b4 F6 v. y* }% k0 W' H1.2 关系模型与 SQL 语言# \0 L5 G7 t* t; V& U: \7 O9 t
    1.3 Spark SQL 发展历程# n+ u& k9 w+ t
    1.4 本章小结
    " {) p" y  K9 V: a$ W) j第 2 章 Spark 基础知识介绍, x" n1 T  s% {- T+ P6 r, ^
    2.1 RDD 编程模型; P7 I# d+ J* x) t% F
    2.2 DataFrame 与 Dataset
    ! j- l' N' s! ]) Y2.3 本章小结1 i8 n' @2 o6 g4 L7 x/ E) R3 J7 F0 H
    第 3 章 Spark SQL 执行全过程概述
    : K1 ]( W1 w* B% M2 X3.1 从 SQL 到 RDD:一个简单的案例6 t" `8 R) }+ P
    3.2 重要概念
    , }& f0 I) N3 q: z: Q" F. u( q3.2.1        InternalRow 体系: k' {" K2 r, s3 y
    3.2.2        TreeNode 体系0 M4 |# a) g, x$ @) v) S+ g1 y
    3.2.3        Expression 体系
    7 h. K0 X5 i7 s# m" v# O' R3.3 内部数据类型系统" H1 D$ l" X9 f5 y7 V+ S5 V
    3.4 本章小结
    6 o, e1 i' ?6 t7 O9 W$ X3 h第 4 章 Spark SQL 编译器 Parser
    - Y. [- y, ]! _, y( Y4.1        DSL 工具之 ANTLR 简介
    6 M6 Q# a3 c8 h( K/ a4.1.1 基于 ANTLR 4 的计算器* _2 m9 Q! W& R- ~, G
    4.1.2 访问者模式
    + R: E! p' V5 P6 ^4.2        SparkSqlParser 之 AstBuilder
    : ]" k" i6 F! E3 J/ U4.3 常见 SQL 生成的抽象语法树概览
      X' a# e& J) @; E4 T* l& H4.4 本章小结
    4 R' T+ f# s7 G9 k- I/ Z7 ]第 5 章 Spark SQL 逻辑计划(LogicalPlan)/ O( Z  \8 T6 w9 J' A! z
    5.1 Spark SQL 逻辑计划概述
    " c' W% q+ E- X: ~" r5.2        LogicalPlan 简介) l! e8 q/ `0 A% A& U
    5.2.1        QueryPlan 概述9 z; |" q/ g7 y2 ?, G# A
    5.2.2        LogicalPlan 基本操作与分类0 D9 Q( `+ |1 ?9 P# n
    5.2.3        LeafNode 类型的 LogicalPlan2 B. J1 k& `: w) T; i3 t2 x
    5.2.4        UnaryNode 类型的 LogicalPlan
    7 v9 Q- b  S- U( ]+ J2 ~3 \& x% I# u5.2.5        BinaryNode 类型的 LogicalPlan
    - \8 [4 B6 C! O0 M+ N5.2.6        其他类型的 LogicalPlan2 K9 K( t: L; _: E
    5.3        AstBuilder 机制:Unresolved LogicalPlan 生成
    ' I1 x: M4 K' R1 l5.4        Analyzer 机制:Analyzed LogicalPlan 生成
    : {. l2 Q* _3 Q5.4.1        Catalog 体系分析
    . `' u+ p1 L7 }' x/ ~+ e$ b: f9 b5.4.2 Rule 体系
    9 @/ K  M5 B1 ~9 x1 t6 c5.4.3 Analyzed LogicalPlan 生成过程
    9 V3 H' i" G9 W0 }6 `6 @5.5        Spark SQL 优化器 Optimizer
    6 s! c2 y2 s$ X$ p# ^& o4 E* b5.5.1        Optimizer 概述
    , h$ J& M# P( W" w5.5.2        Optimizer 规则体系
    ! _4 y* W8 \) b6 A5.5.3        Optimized LogicalPlan 的生成过程1 V3 d1 e7 k% Z9 b8 e* I/ Y8 u
    5.6 本章小结0 C6 }! x  S( B$ |7 D0 r( O( F
    第 6 章 Spark SQL 物理计划(PhysicalPlan)
    - {  I) W1 h+ l1 d7 D7 `6.1 Spark SQL 物理计划概述! r3 G8 i- i2 W9 F5 u+ _- P8 k
    6.2        SparkPlan 简介! _- M2 B  G% L; b+ A2 q! a& W
    6.2.1        LeafExecNode 类型
    6 U  U9 m- W$ d8 ^6.2.2        UnaryExecNode 类型
    7 O9 |/ \% F8 c6.2.3        BinaryExecNode 类型
      s( ^( R: j1 q. a6.2.4        其他类型的 SparkPlan% ^( h0 f3 s, L, S1 x
    6.3        Metadata 与 Metrics 体系
    - n7 r( [1 @: o! i' M/ i, W; p6.4        Partitioning 与 Ordering 体系  Z( F$ g) W% K- |9 O1 U, O
    6.4.1        Distribution 与 Partitioning 的概念( q% ?3 T  t9 B& s
    6.4.2 SparkPlan 的常用分区排序操作
    / L' z, k( [. P2 k" D, z3 x6.5        SparkPlan 生成
    8 X0 I' w" c2 ~- Y" A% ?6.5.1 物理计划 Strategy 体系! U5 @5 R+ q; @% ~, f" U
    6.5.2 常见 Strategy 分析  u3 r. Y$ g3 y
    6.6 执行前的准备
    6 |4 @. b: C+ @( Y6 u( L# w6.6.1        PlanSubqueries 规则9 N) F; o# J/ g& j: H
    6.6.2        EnsureRequirements 规则
    0 _* j2 N) z; a4 }1 _6.7 本章小结
    ( {( C+ c/ N' r: ?0 u第 7 章 Spark SQL 之 Aggregation 实现
    5 {8 O. J  @& X) q& Y/ S* I7.1        Aggregation 执行概述
    0 b+ C6 ~" q# F9 h2 L! X- x5 N7.1.1 文法定义
    : s1 L6 u2 b9 r7.1.2        聚合语句 Unresolved LogicalPlan 生成
    , A6 h" P1 E: U1 k$ d; C8 G7.1.3 从逻辑算子树到物理算子树" B" |1 \/ }# f/ L( Z: p) V
    7.2        聚合函数(AggregateFunction)
    ) Q* s1 B) q. q1 c, P! B  o7.2.1 聚合缓冲区与聚合模式(AggregateMode)4 D7 X' Z' O! A6 e
    7.2.2        DeclarativeAggregate 聚合函数4 z' ~. C1 b8 |; X( x' n
    7.2.3        ImperativeAggregate 聚合函数
    ' d8 ]0 g1 c; b1 w7.2.4        TypedImperativeAggregate 聚合函数4 `" l9 z# R/ [  r5 X4 p+ N
    7.3 聚合执行$ c1 H# H! B! M* M9 m6 P
    7.3.1        执行框架 AggregationIterator. W/ \" q/ E( ]
    7.3.2        基于排序的聚合算子 SortAggregateExec
    8 C% h2 n1 U/ @& N7.3.3        基于 Hash 的聚合算子 HashAggregateExec
    6 F6 m8 v, z- P7.4 窗口(Window)函数
    . w9 j  B5 r) w) l; \5 Y9 `1 X7.4.1 窗口函数定义与简介
    0 o( `3 u' N! p( e3 r" J1 f7.4.2 窗口函数相关表达式
    $ L% D" h4 \; n2 r0 \6 j3 ]# W7.4.3 窗口函数的逻辑计划阶段与物理计划阶段
    4 L. [8 ~3 U$ g5 i7.4.4 窗口函数的执行& A  h" @, _  l- r) d9 m$ a/ a; i
    7.5 多维分析4 z+ C8 M' w$ \$ F' H
    7.5.1 OLAP 多维分析背景
    ; J' m# K3 t" y/ ^7 F/ K7.5.2        Spark SQL 多维查询
    ! x) R$ F9 D9 Y7.5.3        多维分析 LogicalPlan 阶段/ G, |8 u& P; u5 |- K
    7.5.4        多维分析 PhysicalPlan 与执行
    3 u# }  B4 A* _9 c7.6 本章小结
    . @- P5 X, O0 [0 i第 8 章 Spark SQL 之 Join 实现% s4 t( @3 z/ ]
    8.1 Join 查询概述! ~$ C& R- d) `2 j, y
    8.2 文法定义与抽象语法树: |' `' d& U) J% n
    8.3 Join 查询逻辑计划8 P, I. E9 {) i' C
    8.3.1        从 AST 到 Unresolved LogicalPlan
    9 I9 a* I7 n0 g2 ]  _8.3.2        从 Unresolve LogicalPlan 到 Analyzed LogicalPlan3 q# S( H' d1 {
    8.3.3        从 Analyzed LogicalPlan 到 Optimized LogicalPlan
    & J6 d3 b. G9 h8.4 Join 查询物理计划
    ; r7 x( p/ @) x  I& ~" K# t8.4.1 Join 物理计划的生成) ^- \8 }( F/ y) l3 w
    8.4.2 Join 物理计划的选取$ c6 |" v6 h' A$ D8 e
    8.5 Join 查询执行
    " Y$ m" w) `  ^  ~8.5.1 Join 执行基本框架1 a# o& B2 p0 N
    8.5.2        BroadcastJoinExec 执行机制, I, W5 [" n+ n
    8.5.3        ShuffledHashJoinExec 执行机制$ u) E2 O( K; @1 T, ^6 m1 u! f
    8.5.4        SortMergeJoinExec 执行机制% h3 i3 H" q* u6 @8 ~  G" [1 x( A
    8.6 本章小结) j) z0 M3 y% |9 v
    第 9 章 Tungsten 技术实现
    + p# X4 R" t. c9.1 内存管理与二进制处理7 Y" ~: R( Q& x0 S$ ^7 E% V
    9.1.1 Spark 内存管理基础
    ! S, B) v# K8 q  Q9.1.2 Tungsten 内存管理优化基础! {# c" `7 a6 Y5 w  f8 ]
    9.1.3 Tungsten 内存优化应用
    : N1 J) G5 C$ }9.2        缓存敏感计算(Cache-aware computation)
    1 M7 B* n- |5 g9.3        动态代码生成(Code generation)
    ; {4 J( y3 u& ~- n0 ~* y0 \9.3.1 漫谈代码生成
    $ L* C3 P6 ~; p) @( t9.3.2 Janino 编译器实践  G; h' g* f. W0 K" x+ B
    9.3.3 基本(表达式)代码生成) q! l3 @" ^3 O, P, s. @/ u* N+ E
    9.3.4 全阶段代码生成(WholeStageCodegen)
    : d$ A  F+ P' B0 |9.4 本章小结
    " ~8 y. @# E1 J! Y* g第 10 章 Spark SQL 连接 Hive
    0 ~  J! `( l/ P2 i10.1 Spark SQL 连接 Hive 概述
      h7 Z5 K6 {- R- ]10.2 Hive 相关的规则和策略2 `5 h) P% o# g% r4 C/ U
    10.2.1        HiveSessionCatalog 体系
    7 A' ?1 |; s, y& J10.2.2        Analyzer 之 Hive-Specific 分析规则
    / A% B$ G6 Z) R/ o5 U( I" T10.2.3        SparkPlanner 之 Hive-Specific 转换策略
    + Q# H8 F2 q1 r' h* D% R$ b10.2.4 Hive 相关的任务执行  v2 C8 q$ s  x+ U& R' M
    10.3        Spark SQL 与 Hive 数据类型
    & s( ^' o+ o% o! n: L10.3.1 Hive 数据类型与 SerDe 框架; n4 \: Q$ ]# N& S. Q2 a
    10.3.2        DataTypeToInspector 与 Data Wrapping
    ' B# c& D1 D( W9 I10.3.3        InspectorToDataType 与 Data Unwrapping$ o% M% Q9 b- s4 }
    10.4 Hive UDF 管理机制
    ! Q1 r7 {+ g% f1 a2 D7 J10.5        Spark Thrift Server 实现- J/ V0 U# T5 M: ?" h6 w5 S
    10.5.1        Service 体系
    javazx.com& N1 m5 W; ?7 t6 ^
    10.5.2        Operation 与 OperationManager
    / V6 |, v8 Q  X8 _, l& w10.5.3        Session 与 SessionManager- h* z3 {7 U9 r6 y- N; q
    10.5.4        Authentication 安全认证管理+ P- z5 ?! O' Q; y2 m
    10.5.5        Spark Thrift Server 执行流程8 e4 |! i+ q7 L( ~% N; s' w8 Z
    10.6 本章小结. Z4 k' X$ b0 f9 b
    第 11 章 Spark SQL 开发与实践
    & P0 d  w6 O9 a+ y$ Z11.1 腾讯大数据平台(TDW)简介
    / M! L. ]/ y9 W. x" a* x. v" |* [11.2 腾讯大数据平台 SQL 引擎(TDW-SQL-Engine)  z3 |1 K5 t# c% d: f) n- N1 w
    11.2.1 SQL-Engine 背景与演化历程( u( k/ [8 Y; Z+ s: q. o
    11.2.2 SQL-Engine 整体架构
    2 R5 i0 |  U/ e  k$ W" [9 `11.3 TDW-Spark SQL 开发与优化
    5 f: D' L" u' S% Q11.3.1 业务运行支撑框架; {& q0 [3 L+ u; U4 @
    11.3.2 新功能开发案例  _% R$ R- q% J/ I+ b$ p6 t+ K4 b
    11.3.3 性能优化开发案例  h2 H& ]- t+ U  W9 A. n9 T9 m4 M
    11.4 业务实践经验与教训
    9 v( q, Q' b( D8 A2 T/ \9 E11.4.1 Spark SQL 集群管理的经验1 c: t) `$ q  ~3 g4 ^! _
    11.4.2 Spark SQL 业务层面调优
    ( b! z0 W+ b' w& ~1 n1 R, n1 _11.4.3 SQL 写法的“陷阱”
    % U+ s# R( H( {. n/ o2 G+ @11.5        本章小结
    . c, J  ]5 a+ x总结
    0 N$ w2 X! W4 ?9 }& D1 s; v参考文献

    / E; U3 p: Z4 Y1 C1 tJava资料百度网盘下载地址链接(百度云):Spark SQL内核剖析@www.javazx.com.pdf【密码回帖可见】
    7 S- M4 \6 }2 |$ f+ w& Z
    游客,如果您要查看本帖隐藏内容请回复
    , D6 [! t7 I# u

    ; m. Z$ O- \5 ~6 R4 P
    ! F/ b1 y. I4 O3 T

    / r/ f/ \. g2 D) ^( x; r7 w0 w" o6 |6 K% L* E
    & I$ `- [" s% o" {4 |! q  _, d
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2019-9-23 11:20
  • 签到天数: 18 天

    [LV.4]略有小成

    0

    主题

    44

    帖子

    424

    积分

    普通会员

    Rank: 2

    积分
    424
    发表于 2019-6-1 09:11:00 | 显示全部楼层
    谢谢你的分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2020-12-13 15:17
  • 签到天数: 299 天

    [LV.8]已臻大成

    0

    主题

    445

    帖子

    5016

    积分

    普通会员

    Rank: 2

    积分
    5016
    发表于 2019-6-2 08:49:06 | 显示全部楼层
    - L: _% x  |& \. J  a
    9 v2 h( ]* I# n% {
    谢谢 谢谢 谢谢谢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2019-10-17 12:29
  • 签到天数: 10 天

    [LV.3]初窥堂奥

    0

    主题

    24

    帖子

    232

    积分

    普通会员

    Rank: 2

    积分
    232
    发表于 2019-6-5 15:30:16 | 显示全部楼层
    dsadasdadweqeqweqweqeq
    回复 支持 反对

    使用道具 举报

    wwc 该用户已被删除
    发表于 2019-6-14 08:37:32 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2021-5-25 08:30
  • 签到天数: 92 天

    [LV.6]炉火纯青

    2

    主题

    272

    帖子

    30万

    积分

    终身VIP

    Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60

    积分
    302357
    发表于 2019-6-19 20:30:18 | 显示全部楼层
    hhhhhhhhhhhhhhhhhhhhhhhhhh
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2019-6-21 21:49
  • 签到天数: 1 天

    [LV.1]初学乍练

    0

    主题

    4

    帖子

    30

    积分

    普通会员

    Rank: 2

    积分
    30
    发表于 2019-6-21 21:53:48 | 显示全部楼层
    不错好资源 可以用
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-6-26 18:48
  • 签到天数: 1 天

    [LV.1]初学乍练

    0

    主题

    2

    帖子

    16

    积分

    普通会员

    Rank: 2

    积分
    16
    发表于 2019-6-26 18:50:31 | 显示全部楼层
    多谢                           
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2019-8-19 13:44
  • 签到天数: 5 天

    [LV.2]登堂入室

    0

    主题

    17

    帖子

    122

    积分

    普通会员

    Rank: 2

    积分
    122
    发表于 2019-7-1 14:03:27 | 显示全部楼层
    第 11 章 Spark SQL 开发与实践
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-7-15 09:22
  • 签到天数: 3 天

    [LV.2]登堂入室

    0

    主题

    6

    帖子

    60

    积分

    普通会员

    Rank: 2

    积分
    60
    发表于 2019-7-12 13:30:07 | 显示全部楼层
    谢谢分享,谢谢分享
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Java自学网

    GMT+8, 2024-12-22 12:00 , Processed in 0.137769 second(s), 39 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

    快速回复 返回顶部 返回列表