Trino 分布式查询引擎 专栏导览

专栏定位

本专栏聚焦 Trino(原 Presto SQL)分布式查询引擎的架构设计与查询优化——从 Coordinator/Worker 的 MPP 执行模型,到 Connector SPI 的插件化数据源抽象,再到 CBO(基于代价的优化器)和 Dynamic Filtering 的查询加速。Trino 的核心价值在于联邦查询——用一条 SQL 同时查询 Hive、Iceberg、MySQL、ElasticsearchKafka 等异构数据源,无需数据搬迁。

目标读者

  • 使用 Trino 做即席查询和联邦查询的数据分析师/数据工程师
  • 需要进行 Trino 集群调优和资源管理的 SRE/平台工程师
  • 对 MPP 查询引擎和 SQL 优化器设计感兴趣的技术爱好者

专栏目录

序号标题核心内容
0101 Trino 全局架构——Coordinator Worker 与 MPP 执行Presto 到 Trino 的演进、Coordinator 的查询规划与调度、Worker 的 Pipeline 执行、Connector SPI 的插件化数据源
0202 查询执行引擎——Stage、Task 与 PipelineSQL → 逻辑计划 → 物理计划 → Stage DAG 的转换、Exchange 的数据分发(Hash/Broadcast/Gather)、Pipeline 的算子融合
0303 Connector 体系——Hive、Iceberg 与联邦查询Connector SPI 的三大接口(Metadata/SplitManager/RecordSetProvider)、Hive Connector 的分区裁剪、Iceberg Connector 的时间旅行、跨数据源 JOIN 的执行策略
0404 内存管理与资源调度内存池(General/Reserved/System)的分级管理、查询内存限制与溢出(Spill to Disk)、Resource Group 的多租户隔离、排队与优先级
0505 查询优化——CBO、动态过滤与索引下推基于代价的优化器(CBO)与统计信息、动态过滤(Dynamic Filtering)的 Probe/Build 端协作、谓词下推与列裁剪、JOIN 顺序优化
0606 Trino 运维——集群部署、慢查询分析与调优JVM 参数配置(Memory/GC)、Query Plan 的 EXPLAIN ANALYZE 分析、Worker 扩缩容策略、与 Spark SQL/Doris 的选型对比

推荐阅读路径

核心原理路径:01 → 02 → 05

Connector 与联邦路径:03

运维调优路径:04 → 06

前置知识

  • SQL 基础和数据仓库概念
  • 建议了解 Hive/Iceberg 等数据湖格式(Trino 最常用的数据源)

关联专栏

  • Hive:TrHive Connector 是最常用的数据源
  • Iceberg:Iceberg Connector 支持时间旅行查询
  • DorisClickHouse:联邦查询 vs 单一 OLAP 引擎的选型
  • JVM:Trino 是 Java 应用,JVM 内存管理与 GC 调优影响查询性能