Presto 与 Trino 这两者有什么区别
它们的关系有点像:同一个孩子,离婚后跟着爸爸叫 Presto,跟着妈妈叫 Trino。
1. 它们是干什么的?
在大数据生态里,它们扮演 “翻译官” 和 “聚合器” 的角色:
-
不存数据:它们自己不存储任何数据,只负责计算。
-
跨源查询:你可以用一句 SQL 关联查询 Hive 里的订单、MySQL 里的用户和 Paimon 里的日志。
-
快:它是全内存计算,比传统的 Hive(基于 MapReduce)快 10 倍以上,通常用于 即席查询 (Ad-hoc) 和 报表展示。
2. 它们为什么分家?(历史八卦)
-
起源:Facebook 开发了 Presto 并在 2013 年开源。
-
分裂 (2019年):因为对项目管理和发展方向有分歧,Presto 的三位创始人带着核心团队离开了 Facebook,创建了 PrestoSQL。
-
改名 (2020年):为了解决商标纠纷,创始人团队将 PrestoSQL 正式更名为 Trino。
-
现状:
-
留在 Facebook 的叫 PrestoDB(通常简称 Presto)。
-
创始人团队带走的叫 Trino。
-
3. Presto 与 Trino 的核心区别
| 特性 | Presto (PrestoDB) | Trino (原 PrestoSQL) |
|---|---|---|
| 背后靠山 | Meta (Facebook)、Uber、Intel | Trino 基金会、Starburst (商业公司) |
| 更新频率 | 较稳健,大厂主导 | 非常快,社区极其活跃 |
| 数据湖支持 | 较好,但略滞后 | 最强。对 Paimon, Iceberg, Hudi 支持最好 |
| 兼容性 | 偏向企业内部大规模集成 | 偏向最新的开源技术栈 |
| SQL 语法 | 接近标准 ANSI SQL | 极其接近标准 SQL,支持更多函数 |
浙公网安备 33010602011771号