Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

Presto技术内幕 PDF 下载


分享到:
时间:2018-03-09 17:31来源:http://www.jb51.net/(脚本之家 作者:转载  侵权举报
Presto技术内幕 PDF 下载
失效链接处理
Presto技术内幕 PDF 下载

转载自:http://www.jb51.net/books/602193.html
 
本站整理下载:
版权归出版社和原作者所有,链接已删除,请购买正版
 
 

用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/24003177.html
  
 
 
相关截图:


资料简介:

 Presto是专门为大数据实时查询计算而设计和开发的产品。由于Presto是基于Java语言开发的,?因此,对使用者和开发者而言, Presto极易学习、使用并针对特定的业务场景进行改造开发和性能优化。无论是对多数据源支持,还是高性能、易用性、可扩展性等方面, Presto都是大数据实时查询计算产品中的佼佼者。

《Presto技术内幕》按照由浅入深的顺序对Presto进行了全方位的细致讲解,具体内容包括Presto概述、 Presto安装与部署、 Presto RESTful框架解析、提交查询、生成查询执行计划、查询调度、查询执行、队列、System Connector、 Hive Connector、 Kafka Connector、 Connector开发、 Functions开发、 JD-Presto功能改造、 Presto性能调优、 Presto应用场景。
 
资料目录:

第一部分 基础篇

第 1 章 Presto概述2

1.1Presto 背景及发展2

1.2Presto 特点2

1.3 基本概念3

1.3.1Presto 服务进程3

1.3.2Presto 模型4

1.3.3Presto 查询执行模型 5

1.4Presto 整体架构9

1.4.1 硬件架构9

1.4.2 软件架构9

1.5 小结11

第 2 章 Presto 安装与部署12

2.1 环境说明 12

2.2 准备工作13

2.2.1 建立 SSH 信任关系13

2.2.2 安装 Java 17

2.2.3 安装 Maven 17

2.2.4 安装 Hive 18

2.3 源码编译21

2.3.1 下载源码 21

2.3.2 源码结构说明 22

2.3.3 编译 26

2.4 部署 30

2.4.1 服务部署 30

2.4.2 客户端部署 38

2.4.3JDBC 使用 40

2.5 小结 42

第二部分 核心设计篇

第 3 章 Presto RESTful 框架解析 44

3.1Statement 服务接口 44

3.2 Query服务接口 47

3.3 Stage服务接口48

3.4 Task 服务接口49

3.5 小结 52

第 4 章 提交查询 53

4.1 提交查询的步骤 53

4.2 源码解析 53

4.3 提交查询的流程 60

4.4 小结 61

第 5 章 生成查询执行计划 62

5.1 基本概念 63

5.1.1Node 63

5.1.2Metadata API 67

5.2 词法与语法分析 68

5.2.1 语法规则 69

5.2.2 词法分析 69

5.2.3 语法分析 71

5.3 获取 QueryExecution 72

5.3.1 获取 QueryExecutionFactory 72

5.3.2 创建 QueryExecution 73

5.3.3 启动 QueryExecution 74

5.4 语义分析 77

5.4.1Statement 分析 77

5.4.2Relation 分析84

5.4.3 表达式分析 91

5.5 执行计划生成91

5.5.1 执行计划节点 91

5.5.2 SQL执行计划93

5.5.3Relation 执行计划95

5.5.4Query 执行计划 99

5.6 执行计划优化102

5.6.1ImplementSampleAsFilter 102

5.6.2CanonicalizeExpressions 102

5.6.3SimplifyExpressions 102

5.6.4UnaliasSymbolReferences 103

5.6.5PruneRedundantProjections 103

5.6.6SetFlatteningOptimizer 103

5.6.7LimitPushDown 104

5.6.8PredicatePushDown 104

5.6.9MergeProjections 104

5.6.10 ProjectionPushDown104

5.6.11IndexJoinOptimizer105

5.6.12CountConstantOptimizer 105

5.6.13WindowFilterPushDown 105

5.6.14HashGenerationOptimizer 105

5.6.15PruneUnreferencedOutputs 106

5.6.16MetadataQueryOptimizer 106

5.6.17SingleDistinctOptimizer 106

5.6.18BeginTableWrite 106

5.6.19AddExchanges 107

5.6.20PickLayout 107

5.7 执行计划分段107

5.7.1Source 107

5.7.2Fixed 107

5.7.3Single 107

5.7.4Coordinator_only 107

5.8 示例108

5.8.1Count 执行计划108

5.8.2Join 执行计划108

5.9 小结110

第 6 章 查询调度 111

6.1 生成调度执行器 111

6.2 查询调度过程 113

6.2.1NodeManager 114

6.2.2NodeSelector 115

6.3 小结 118

第 7 章 查询执行 119

7.1 查询执行逻辑 120

7.2 Task 调度120

7.2.1Source Task 调度120

7.2.2Fixed Task 调度126

7.2.3Single Task 调度 128

7.2.4Coordinator_Only Task 调度 128

7.3 Task 执行129

7.3.1 创建 Task 129

7.3.2 更新 Task 135

7.3.3 运行 Task 140

7.4 小结 147

第 8 章 队列 148

8.1 配置说明 148

8.1.1queues 队列定义149

8.1.2rules 规则定义 149

8.2 队列加载 150

8.3 队列匹配 151

8.4 小结 154

第 9 章 System Connector 155

9.1System Connector 使用155

9.1.1Information_schema 155

9.1.2Metadata 157

9.1.3Runtime 157

9.2System Connector 实现159

9.2.1Information_schema 实现160

9.2.2System Connector 实现163

9.3 小结 168

第 10 章 Hive Connector 169

10.1 与 Hive 的结合 170

10.2Split 分片管理  175

10.3 数据读取179

10.4Create Table As Select 的实现 182

10.5 小结186

第 11 章 Kafka Connector 187

11.1 认识 Kafka Connector 187

11.1.1 配置187

11.1.2 配置属性187

11.1.3 内置字段189

11.1.4 表定义文件190

11.1.5Kafka 中的 key 和 message 191

11.1.6 行解码192

11.1.7 日期和时间解码器194

11.1.8 文本解码器194

11.1.9 数值解码器194

11.2Kafka 连接器使用教程194

11.2.1 安装 Apache Kafka195

11.2.2 下载数据195

11.2.3 在 Presto 中配置 Kafka topics 197

11.2.4 基本数据查询197

11.2.5 添加表定义文件199

11.2.6 将 message 中所有值映射到不同列200

11.2.7 使用实时数据202

11.3Kafka Connector 获取数据 207

11.3.1Split 分片管理207

11.3.2 数据读取209

11.4 小结210

第 12 章 Connector 开发211

12.1 创建 Maven 工程 211

12.2 注册 Plugin 213

12.3Connector 213

12.4Metadata 215

12.5SplitManager 217

12.6RecordSetProvider 218

12.7 小结 219

第 13 章 Functions 开发220

13.1Function 注册 220

13.2 窗口函数 225

13.3 聚合函数 229

13.4 小结 232

第三部分 高级篇

第 14 章 JD-Presto 功能改造234

14.1 PDBO功能开发234

14.1.1JDBC Split 剖析235

14.1.2JdbcRecordCursor 剖析 238

14.1.3 分批次读取实现原理 240

14.1.4 动态步长实现原理 243

14.1.5 条件下发 245

14.1.6PDBO 配置定义 247

14.2 DDL 及 DML 支持 250

14.2.1Hive 连接器 Insert 功能 250

14.2.2Hive 连接器 CTAS 动态分区表功能 252

14.3 动态增加、修改、删除 Catalog 254

14.3.1 目的 254

14.3.2 现状 254

14.3.3 实现 255

14.3.4 效果 258

14.4 小结 258

第 15 章 Presto 性能调优259

15.1 合理设计分区 259

15.2Group By 字句优化 259

15.3 使用模糊聚合函数 259

15.4 合并多条 Like 子句为一条 regexp_like 子句260

15.5 大表放在 Join 子句左边260

15.6 关闭 distributed hash join 261

15.7 使用 ORC 存储 261

15.8 小结 262

第 16 章 Presto 应用场景 263

16.1 ETL263

16.2 实时数据计算264

16.3Ad-Hoc 查询266

16.4 实时数据流分析266

16.5 小结268

附录 A 常见问题及解决办法269

A.1 同时访问两个 Hadoop 集群269

A.2 Kafka集群重启后无法获取数据272

A.3 Taskexceeded max memory size 277

A.4 SQL 中 In 子句太长导致栈溢出错误278

A.5 高并发导致大量查询出错279

附录 B Presto 配置参数说明 282

附录 C Presto 执行信息说明289

 


 

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐