万本电子书0元读

万本电子书0元读

顶部广告

OLAP引擎底层原理与设计实践电子书

Presto创始人,及来自字节跳动、B站的多位专家鼎力推荐。融合了两位作者在腾讯和字节做数据库发、数据架构的经验。这本书不仅可以作为深理解OLAP引擎核心原理和设计OLAP引擎的参考书,还可以作为使用Presto(Trino)的指导手册。

售       价:¥

纸质售价:¥81.70购买纸书

1人正在读 | 0人评论 6.7

作       者:高英举,许一腾

出  版  社:机械工业出版社

出版时间:2025-01-17

字       数:28.0万

所属分类: 科技 > 计算机/网络 > 计算机理论与教程

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
这是一本从OLAP核心概念出发,以Presto为例,从整体执行流程到不同SQL的执行原理,完整呈现OLAP查询的核心流程和OLAP引擎设计思路,并指导读者形成OLAP引擎设计解决方案的专业技术工具书。本书不仅面向初级读者介绍了OLAP查询的基本原理和Presto使用方法,还从源码级剖析了OLAP引擎核心原理,包括SQL查询解析器、优化器、调度器、执行器等核心组件,并将内容扩展到OLAP引擎的常见高性能优化方案上。全书由浅深,图文并茂,把晦涩难懂的内容讲解得透彻易懂。本书分为6篇,包括14章。第一篇(第1章和第2章)总体介绍业界常见的OLAP引擎并分析其优劣,讨论OLAP引擎的技术发展趋势及选型方法,介绍Presto背景知识及其使用方法、技巧。第二篇(第3章和第4章)串讲OLAP查询执行的整个过程,并概要性介绍查询解析器、优化器、调度器、执行器等核心模块的工作原理,目的是让读者形成整体认知。第三篇(第5~8章)以例讲理,对多种经典SQL的执行原理行解析,复杂度从前到后逐章递增,包含了投影变换、过滤、行数限定、排序以及多种聚合场景。第四篇(第9章和第10章)详解分布式查询执行的数据交换机制,涵盖了查询规划、调度、执行的多个阶段等重内容。第五篇(第11章和第12章)以Presto为例整体介绍流行的OLAP引擎扩展机制——插件体系与连器。第六篇(第13章和第14章)主要介绍函数的设计原理与发实战,这部分首先介绍函数注册、解析识别、调用等重要流程,最后从标量函数、聚合函数两方面手,用多个实际案例介绍高级API(注解框架)的发方法以及低级API的底层发方法。<br/>【推荐语】<br/>Presto创始人,及来自字节跳动、B站的多位专家鼎力推荐。融合了两位作者在腾讯和字节做数据库发、数据架构的经验。这本书不仅可以作为深理解OLAP引擎核心原理和设计OLAP引擎的参考书,还可以作为使用Presto(Trino)的指导手册。<br/>【作者】<br/>高英举 现于某互联网大厂从事时序数据引擎研发工作,有超过12年工作经验,涉及数据平台、数据仓库、OLAP引擎内核等多个领域。熟悉Hadoop、Presto、Elasticsearch、Spark、Flink等大数据技术,在多个互联网大厂的生产环境中有大数据产品大规模使用与深优化经验。数据集成流批处理工具Apache SeaTunnel(https://github.com/apache/seatunnel)项目创始人、PMC、主要代码贡献者。 许一腾 现任某互联网大厂数据工程师,主攻数据隐私合规建设。超过7年工作经验,曾在腾讯看、医疗担任数据研发负责人,期间负责多种大数据平台与能力建设,包括数据质量、联邦查询、数仓建模、DataOps、详细数据血缘、基于意图的权限控制等方向。平时喜欢研究源码,从0到1学习了Redis、Presto(Trino)、Spark等多种源项目,并且热爱分享。<br/>
目录展开

序一

序二

序三

序四(原版)

序四(中文版)

前言

致谢一

致谢二

第一篇 背景知识

第1章 OLAP引擎介绍与对比

1.1 OLAP的定义与对比标准

1.2 各种OLAP引擎的主要特点

1.3 再谈对Presto技术发展的理解

1.4 总结、思考、实践

第2章 Presto基本介绍

2.1 Presto概述:特性、原理、架构

2.2 Presto的应用场景与企业案例

2.3 Presto常见问题及应对策略

2.4 Presto与Trino的项目与版本选择

2.5 编译与运行Presto源码

2.6 基于Presto的数据仓库及本书常用SQL

2.7 总结、思考、实践

第二篇 核心原理

第3章 分布式查询执行的整体流程

3.1 分布式OLAP引擎整体架构及查询执行原理

3.2 分布式查询执行的整体介绍

3.3 查询的接收、解析与提交

3.4 执行计划的生成与优化

3.5 执行计划的调度

3.6 执行计划的执行

3.7 总结、思考、实践

第4章 查询引擎核心模块拆解

4.1 执行计划生成的设计实现

4.2 执行计划优化的目的、基本原理和基础算法

4.3 执行计划优化的设计实现

4.4 总结、思考、实践

第三篇 经典SQL

第5章 数据过滤与投影相关查询的执行原理解析

5.1 SQL-01简单拉取数据查询的实现原理

5.2 SQL-02数据过滤与投影查询的实现原理

5.3 数据过滤与投影相关查询涉及的查询优化

5.4 总结、思考、实践

第6章 行数限定与排序相关查询的执行原理解析

6.1 SQL-10行数限定查询的实现原理

6.2 SQL-11排序查询的实现原理

6.3 SQL-12排序与行数限定组合查询的实现原理

6.4 简单SELECT查询相关的查询优化

6.5 总结、思考、实践

第7章 简单聚合查询的执行原理解析

7.1 聚合查询原理通识性介绍

7.2 SQL-20不分组聚合查询的实现原理

7.3 SQL-21分组聚合查询的实现原理

7.4 聚合函数的设计与实现

7.5 总结、思考、实践

第8章 复杂聚合查询的执行原理解析

8.1 SQL-22去重计数查询的实现原理

8.2 SQL-23多个聚合计算查询的实现原理

8.3 SQL-30综合多种计算查询的实现原理

8.4 常见聚合查询优化手段与优化器

8.5 总结、思考、实践

第四篇 数据交换机制

第9章 数据交换在查询规划、调度、执行中的基本原理

9.1 数据交换机制简介

9.2 查询优化阶段任务之间数据交换的设计实现

9.3 查询调度与执行阶段的整体设计思路

9.4 总结、思考、实践

第10章 数据交换在查询调度与执行中的详细设计

10.1 查询调度阶段任务之间数据交换的设计实现

10.2 查询执行阶段任务之间数据交换上游的设计实现

10.3 查询执行阶段任务之间数据交换下游的设计实现

10.4 上下游任务之间数据交换的RPC交互机制

10.5 任务内部数据交换的基本原理

10.6 利用数据交换能力实现的特殊功能

10.7 总结、思考、实践

第五篇 插件体系与连接器

第11章 连接器插件体系详解

11.1 插件体系整体介绍

11.2 插件加载机制

11.3 连接器实现原理

11.4 关于连接器的一些深入思考

11.5 总结、思考、实践

第12章 连接器开发实践:以Example-HTTP连接器为例

12.1 Example-HTTP连接器基本介绍

12.2 基础代码

12.3 元数据模块

12.4 自定义句柄

12.5 划分分片

12.6 读取分片

12.7 实现与连接器交互的HTTP数据源

12.8 总结、思考、实践

第六篇 函数原理与开发

第13章 函数的执行原理

13.1 函数体系总览

13.2 函数的基本构成

13.3 函数相关的主要流程

13.4 总结、思考、实践

第14章 Chapter 14 自定义函数开发实践

14.1 标量函数开发方法

14.2 聚合函数开发实践

14.3 总结、思考、实践

推荐阅读

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部