Skip to Content
Presto实战
book

Presto实战

by Matt Fuller, Manfred Moser, Martin Traverso
March 2021
Intermediate to advanced
265 pages
6h 50m
Chinese
Posts & Telecom Press
Content preview from Presto实战
Presto
的架构
47
因此,任务是运行时分配给一个工作节点的计划片段。在任务创建之后,它会为每个切片
初始化一个
驱动
。每个驱动都是包含多个算子的流水线的一个实例,并且负责处理切片中
的数据。如图
4-1
1
所示,根据
Presto
配置和环境,一个任务可以使用一个或多个驱动。当
所有驱动都执行完且数据被传送到下一个切片时,驱动和任务的工作就结束了,它们之后
会被销毁。
任务
切片切片
驱动
4-11:具有输入输出切片的任务及其并行驱动
算子
处理输入数据并为下游算子生产输出数据。常见的算子包括
TableScan
(表扫描)、
Filter
(过滤)、
Join
Aggregate
(聚合)。一系列相连的算子组成一条算子流水线。例
如,你可以拥有一条流水线,它先扫描并读入数据,再过滤数据,最后在数据上执行局部
聚合。
要处理一条查询,协调器首先根据来自连接器的元数据创建切片列表。使用该切片列表,
协调器开始在工作节点上调度任务,以获取其中的数据。在查询执行期间,协调器跟踪所
有可用于处理的切片和任务在工作节点上执行的位置。一些任务完成了处理,并产生了很
多供下游处理的切片,协调器就会继续调度更多的任务来处理它们,直到没有待处理的切
片为止。
一旦工作节点处理完了所有切片,全部数据就可用了。此时协调器会将结果返回给客户端。
4.8
 查询优化
在介绍
Presto
的查询优化器和基于代价的优化之前,我们先来搭建一个舞台,把我们的考
虑限定在一定的范围内。我们在一个查询案例的基础上进行探索,以帮助你理解查询优化
的过程。
示例
4-1
是一个在 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

大数据项目管理:从规划到实现

大数据项目管理:从规划到实现

Ted Malaska, Jonathan Seidman
Google系统架构解密: 构建安全可靠的系统

Google系统架构解密: 构建安全可靠的系统

Heather Adkins, Betsy Beyer, Paul Blankinship, Piotr Lewandowski, Ana Oprea, Adam Stubblefield

Publisher Resources

ISBN: 9787115560056